Andrei Alexandrescu:

Despite Walter is used to "pipeline programming", so the next step is to also handle failures and off-band messages in a functional way (without exceptions and global error values) with two "parallel pipelines", here named "Railway-Oriented Programming". This is one of the simplest introductions (and he can skip the slides 19-53) that I have found of this topic (that in the Haskell community is explained on the base of monads):

In Bugzilla there are already requests for some Railway-Oriented Programming:

I think no language extensions are needed for such kind of programming, but of course built-in tuple syntax and basic forms of pattern matching in switch ( ) improve the syntax and make the code more handy, handy enough to push more D programmers in using it.

For some examples of those things in a system language, this page shows some little examples of functional syntax for Rust:


Reply via email to