the biggest trouble in writing code...
Feb. 9th, 2011 01:11 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
is not with algorithms; there's hardly any algorithm that is hard to implement, once it's clearly formulated.
And it is probably not even performance, since it is another algorithm issue.
It is our struggle with monads. With monads that don't commute.
That's what makes Haskell so good (and so hard): it makes us to mention monads explicitly.
And it is probably not even performance, since it is another algorithm issue.
It is our struggle with monads. With monads that don't commute.
That's what makes Haskell so good (and so hard): it makes us to mention monads explicitly.
Or maybe
Date: 2011-02-09 11:01 pm (UTC)With monads that don't compute.
:-)
no subject
Date: 2011-02-10 09:51 am (UTC)no subject
Date: 2011-02-10 03:10 pm (UTC)no subject
Date: 2011-02-10 03:11 pm (UTC)no subject
Date: 2011-02-10 03:23 pm (UTC)E.g. you have an io, and it throws an exception, and some data you input are not numbers as you expect, and some attributes are NULL, and some strings are too short.
no subject
Date: 2011-02-10 03:25 pm (UTC)no subject
Date: 2011-02-10 03:33 pm (UTC)Their non-commuting makes life harder, but more interesting... maybe this is the part of our profession is less formalizable than most.
no subject
Date: 2011-02-10 03:21 pm (UTC)no subject
Date: 2011-02-10 03:23 pm (UTC)I think Erlang is just the opposite (reducing complexity by reducing the range of possible inputs)
no subject
Date: 2011-02-10 03:20 pm (UTC)Haskell, on the other hand, at least ideally, disambiguates between pure, total functions and the arrows that make sense only in a certain Kleisli category, forcing people to explicitly use something monadic.
To me, this is similar to Java generics (which Java people kind of hate) that force people to write a more type-safe code.