Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

WTF, Haskell?

Name: Anonymous 2012-01-08 2:05


Prelude> (+) 1 2*3
9
Prelude> (+) 1*3 2

<interactive>:1:0:
    No instance for (Num (t -> t))
      arising from a use of `*' at <interactive>:1:0-8
    Possible fix: add an instance declaration for (Num (t -> t))
    In the expression: (+) 1 * 3 2
    In the definition of `it': it = (+) 1 * 3 2

<interactive>:1:6:
    No instance for (Num (t1 -> t -> t))
      arising from the literal `3' at <interactive>:1:6-8
    Possible fix: add an instance declaration for (Num (t1 -> t -> t))
    In the second argument of `(*)', namely `3 2'
    In the expression: (+) 1 * 3 2
    In the definition of `it': it = (+) 1 * 3 2
Prelude>

Name: Anonymous 2012-01-09 7:42

>>13
It's not that rich.
Haskell's type system is flexible enough.
CbV and CbN have both advantages and disadvantages. Neither is a silver bullet. Eta-equivalence and product types are broken under CbV, sum types are broken under CbN. Haskell has strictness annotations.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List