Введение
Пожалуй два наиболее часто задаваемых (следовательно, животрепещущих) вопроса в комментариях к
моей обзорной статье о F# были следующие:
1. Почему он так похож на OCaml?
2. На кой черт он вообще сдался?
Ответ на первый вопрос не представляет особой сложности — он так похож на OCaml, потому что сделан целиком и полностью на его основе. Хорошо это или плохо? Да скорее хорошо, это явно лучше, чем придумывать совершенно новый синтаксис, который еще не известно, насколько будет хорош. Плюс к тому, по OCaml достаточно много документации, так что даже на первых порах проблем с (само)обучением быть не должно.
Со вторым вопросом разобраться куда сложнее, особенно сейчас, когда язык пребывает в состоянии беты и является пока что лишь объектом изучения излишне любознательных программистов. Однако несмотря на довольно краткое с ним знакомство, мне уже довелось разок применить его для достижения вполне прагматических целей, о чем и поведаю в этом небольшом посте.
Заранее оговорюсь, конечно же, не последнее, что побудило меня решать поставленную задачу именно на F# — желание попрактиковаться в новом языке. Конечно же, программу можно было написать и на C#, и возможно она получилась бы ненамного длиннее (повторюсь, возможно, я не проверял). Так или иначе, программа была написана, и дело свое сделала.