Честно говоря, я не могу рекомендовать Руби для этого. Когда я программирую изо дня в день в своем коммерческом мире, мне это очень нравится, гораздо больше, чем C или Java. Но его семантика настолько плохо определена, что я не доверяю ей вдвое меньше, чем C, где, хотя я могу потратить несколько часов на споры по поводу утверждения и консультации с более толстой белой книгой, заменившей K & R, я выхожу в Я уверен, что если у меня есть соответствующий компилятор (да, я знаю, я мечтатель, но работаю со мной здесь), я знаю, что получится с другой стороны.
Ruby прекрасен во многих отношениях, но что касается формального, он никогда не встретится.
Я бы склонялся голосовать за Хаскелла сам, потому что каждый раз, когда я оборачиваюсь, я поражаюсь, насколько много смысла в этом определении языка. (Хотя, по общему признанию, после года или около того, я уверен, что я не исследовал половину углов даже на Haskell 98.)
И я тоже понимаю, что Дикжстра против функциональности; возвращаясь и читая его бумаги он очень в императивном мире; Я не квалифицирован, чтобы сказать, действительно ли он ошибся там. Возможно, я просто ошеломлен тем, насколько хорошо его письмо, а также его мысли. Но это, похоже, ему понравилось, так что насчет использования Алгола 60 ?