![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Сижу пишу кодогенератор на F# чтобы сконвертировать старую БД с самодельным адово-израилевым ОО движком в PostgreSQL. Вообще задача там сконвертировать описание типов из xml в несколько исходников на SQL и дельфи и прикрутить их в прогу-конвертор.
F# производит впечатление, как бы это выразится, несколько эклектичного языка. Боб с горохом, окамл, дотнет и призрак Барбары Лисков, вбивающей гвозди в головы тем, кто плохо продумывает наследование. Функции, которые одновременно используются и в каррированной и обычной форме, причем сразу не поймешь, когда как, монады(ака sequence) вкрученные в язык, несколько операторов связывания для них, императивный стиль, мутабельные переменные, передача параметров по ссылкам и наследование вперемежку с иммутабельностью и ленивыми вычислениями.
Документация в интернетах бессвязная как ад. Без книжки некоторые вещи фиг найдешь, типа как объявить взаимно-рекурсивные типы.
Синтаксис хаскеля намного гуманнее, не так загажен лишними ключевыми словами и символами.
Цель вообще использования F# а не хаскеля в данном случае - это проверка, можно ли F# пользоваться не сломав себе мозг. Хаскель просто не интегрируешь в дотнет, а это уже интегрировано.
F# производит впечатление, как бы это выразится, несколько эклектичного языка. Боб с горохом, окамл, дотнет и призрак Барбары Лисков, вбивающей гвозди в головы тем, кто плохо продумывает наследование. Функции, которые одновременно используются и в каррированной и обычной форме, причем сразу не поймешь, когда как, монады(ака sequence) вкрученные в язык, несколько операторов связывания для них, императивный стиль, мутабельные переменные, передача параметров по ссылкам и наследование вперемежку с иммутабельностью и ленивыми вычислениями.
Документация в интернетах бессвязная как ад. Без книжки некоторые вещи фиг найдешь, типа как объявить взаимно-рекурсивные типы.
Синтаксис хаскеля намного гуманнее, не так загажен лишними ключевыми словами и символами.
Цель вообще использования F# а не хаскеля в данном случае - это проверка, можно ли F# пользоваться не сломав себе мозг. Хаскель просто не интегрируешь в дотнет, а это уже интегрировано.
no subject
Date: 2010-03-05 10:28 am (UTC)