On 20 Apr 2008, at 3:05 AM, David MacIver wrote:
On Sun, Apr 20, 2008 at 4:46 AM, Jonathan Cast
<[EMAIL PROTECTED]> wrote:
On 19 Apr 2008, at 5:02 AM, David MacIver wrote:
Independently of the rant...
On Sat, Apr 19, 2008 at 6:01 AM, Jonathan Cast
<[EMAIL PROTECTED]> wrote:
But why do I need to jump through these hoops for a perfectly
safe &
commonly desired operation?
It's called a proof obligation. Haskell is not here to stop
you from
jumping through hoops. In fact, it is here precisely to force
you to
jump
through hoops. That's why it's called a bondage and discipline
language.
Surely it's there to lovingly assist you through the hoops? You
can't
just force people not to do the wrong thing and expect to get a good
statically typed language out of it - you have to make it easier for
them to do the right thing.
I think going through the hoop is paramount in Haskell. That's
why Haskell
is pure, for example, even though it (still) requires awkward code on
occasion. Haskell is certainly designed to make getting through
the hoops
as easy as possible, but never by providing a general way around
them.
(unsafePerformIO notwithstanding).
Sure. I'm just saying, it's more of a "Jump through this hoop and you
shall have moist, delicious cake. And by the way, here's a leg up" set
up. There are rewards for the hoop jumping, and assistance on the way
there (which is more than can be said for a lot of languages which
make you jump through hoops) :-)
Absolutely. But I think the original rant strayed into the realm of
wanting the cake and the leg up /without/ the hoop.
I think I might be stretching the analogy slightly.
There is nothing the least bit wrong with that.
jcc
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe