Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The big things that Haskell does that no-one[1] else does are a) strict separation of the parts of the program that do I/O or otherwise change some sort of global state and b) lazy evaluation, which means evaluate a function only when it is needed to do (a). The compiler enforces (a).

(a) is a big deal because it makes it very easy to reason about what your program does, which is handy because (b) is the opposite :-) but makes certain kinds of computations very elegant to express.

[1] Not quite true but close enough



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: