Haskell vs J

Sep 27, 2012 06:41

Немного потрахавшись, поставил на Мак Haskell, чтобы понять, с чем его едят. Удивлен скоростью. Эталоном скорости в интерактивном режиме для меня всегда был J. Но тут Хаскель обскакал.

Факториал.

Хаскель (ghci):
let { f 1 = 1 ; f n = n * f(n-1) }

J:
f =: */@(>:@i.), хотя значительнее нагляднее просто */1+i.10000x, подставляя нужное число.

На тысяче разницы не видно.
На десяти тысяч J чуть запинается, а Хаскель -- нет.
На ста тысячах J пыхтел минут 5, а Хаскель вернул секунд за 30.

Но это, конечно, к языку не относится. На самом деле мне интересно, насколько на хаскеле удобнее программировать на типах, а то про Скалу совершенно справедливо пишут, что некоторые простые вещи часто становятся очень сложными.

haskell, j, программирование

Previous post Next post
Up