Skip to content
Alberto edited this page May 18, 2020 · 26 revisions

New features, bug fixes, conversations, versions and TODOs are reflected in the Transient-Transient-Universe-HPlay/Lobby in gitter. Search here for the topic you want to reserch.

Transient is a revolutionary way to do almost anything and make it easy: from console to web programming to distributed computing to parallel and concurrent programming. Do it with less effort and with less code, we promise.

Scared by the complexity of the Haskell language? Don't worry, Transient is designed to make you productive from the beginning, since it does things for you. Anyone with a little knowledge of Haskell can use it.

If you can play guitar without knowing music notation (which is good), why do you have to know monad transformers to be a productive programmer in the best programming language ever? Transient gives you a guitar complete with new sound effects, with which you can play whatever you please - like with your old guitar, but better. You can tune it to your taste at a later time. Transient can be the base over which you can create your own EDSL. So in your learning curve, you become productive from the beginning.

Haskell has the reputation of a long learning curve. That is because it is based on principles. This means that is a do-it-yourself toolbox of concepts and abstract libraries that are hard to master. It encourages algebraic composition and purity. It is a pleasure to use functional and algebraic composition to create these pure Haskell programs like fibs and factorial. It is very nice to play with lists or other containers to compose chains of functions to do folds and maps and traversals and simulate indeterminism.

But you have to leave this world of magical composition at the data level, since at the processing level you have to think in parallelism, concurrency, asynchronicity, routing, callbacks, frameworks to deal with real requirements.

What if you could use functional expressions for all of this?. Furthermore, what if you could compose something that you have never dreamed of doing algebraically, like distributed computing?

This means that application components implementing user requirements can be composed algebraically, no matter what they do.

For more detail, see the Tutorial

Running example(s)

Performance

Slides of the transient talk at Lambda.World 2016

You can visit the Transient-Transient-Universe-HPlay/Lobby lobby in gitter for questions and support

All wiki pages so far