Why exceptions for error handling is so important
Tobias Pankrath via Digitalmars-d
digitalmars-d at puremagic.com
Mon Jan 12 03:02:37 PST 2015
On Monday, 12 January 2015 at 09:31:25 UTC, Walter Bright wrote:
> On 1/11/2015 11:53 PM, Tobias Pankrath wrote:
>> On Monday, 12 January 2015 at 00:51:25 UTC, Walter Bright
>> wrote:
>>> This matters very much for pipeline style programming (i.e.
>>> ranges and
>>> algorithms).
>>
>> Here is one approach to it:
>> http://fsharpforfunandprofit.com/posts/recipe-part2/
>
> I don't fully understand it, but it appears to require that
> each component have two paths coded into it - the regular path,
> and the error path, and there has to be adapters for components
> that only have a regular path. Exceptions means only one path
> has to be coded.
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.
More information about the Digitalmars-d
mailing list