On Monday, 12 January 2015 at 11:09:01 UTC, Walter Bright wrote:
On 1/12/2015 3:02 AM, Tobias Pankrath wrote:
As far as I understand is, it requires each component to settle on the same discriminated union that packs the error and result, which he calles Result but
is usually Choice in F#.

Now in D we use the opDot to chain components, which works since we have UFCS. In F# there a simply three different opDots: >>, >>= and >=> which take care of
the adaption.

Or we could just use exceptions, which require none of that.

.. and have many other issues instead :)

Right now my experience from some quick experiments with Rust seems to indicate that it is a good sort inconvenience for medium-to-big applications as it forces you to explicitly consider all possible exceptional paths possible in application without and does not add any runtime overhead.

For smaller / less important programs verbosity does seem inconvenient in an unpleasant way indeed.

Reply via email to