Подскажите чем принципиально отличается Haskell от других функциональных языков, в частности — Racket (typed/racket в основном) с точки зрения системы типов и других возможностей?
Из того, что сразу в голову приходит: аппликативный и нормальный порядок вычислений, да чистота Haskell. Что это на практике даёт Haskell'ю? Можно ли писать на Racket в стиле Haskell и получить его преимущества?