Re: Почему не взлетел OCaml?
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 08.02.16 18:12
Оценка: +5 :))) :))) :))) :)
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков?


Потому что программисты делятся на:
1) "С++ (или Java) — наше все, все остальное нинужно. у нас даже вывод типов есть. и алгебраики в бусте."
2) "я тупой, все что сложнее JS или Питона — заумь, наркомания и нинужно. Вот Го это круто, он простой, к тому же от гугла"
3) "ФП! Функторы! Монады! Комонады! Когомологии! Предпучки! Топосы! Гомотопии... ой, где это я? Не, грязный ML это недостаточно монадично."

Re: Почему не взлетел OCaml?
От: T4r4sB Россия  
Дата: 03.02.16 09:23
Оценка: +3 :))) :)
Здравствуйте, monax, Вы писали:

M>И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков?


Потому что сообщество говноедов ценит только языки, похожие на ссишку.
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте
Re[3]: Почему не взлетел OCaml?
От: Klapaucius  
Дата: 04.02.16 10:50
Оценка: 89 (2) +1
Здравствуйте, Кодт, Вы писали:

К>Французы — извращенцы, сначала форкнули SML


Ну, не то чтобы они "форкнули" SML. OCaml происходит от диалекта ML-я появившегося до SML и синтаксически больше похож на первые ML-и чем SML, который является объединением Корделлевского VAX ML и Hope.

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


Вот только SML в который фичи тоже пытались пропихивать, но они уперлись в Милнера и застряли — намного мертвее.
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Re[3]: Почему не взлетел OCaml?
От: Evgeny.Panasyuk Россия  
Дата: 02.02.16 14:28
Оценка: :)))
Здравствуйте, monax, Вы писали:

M>Автоматический вывод типов при статической типизации — это очень неплохо. По сути, пишешь на нём, как на питоне, а он сам за тебя типы ищет.


"Автоматический вывод типов при статической типизации" есть в C++ — получается
Автор: Evgeny.Panasyuk
Дата: 07.06.15
именно как на Python'е.
Re[3]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 10:06
Оценка: 54 (2)
Здравствуйте, monax, Вы писали:

M>До рантайма я ещё не добрался. А что с ним не так?


Основной недостаток не поддерживает SMP, одновременно может выполнятся только один поток.
То есть все что связано с потоками работает (тот же модуль Thread), но так как будто выполняется
на однопроцессорном и одноядерном компьютере.
Такой же недостаток есть скажем у питона с его GIL, или у nodejs.
Выход использовать вместо потоков процессы.

Второй большой недостаток ограниченность многих типов например max_int для 32 бит
всего лишь 1073741823, один бит данных забирает теговая система для GC. Еще сильнее
ограничения в размерах для массивов Sys.max_array_length всего лишь 4194303.
Все это конечно уже мало значимо для 64 бит, но для 32 это заметный недостаток.

Третий недостаток, который сильно повлиял на популярность по моему, это ориентированность
на unix образные системы, windows скорее по остаточному принципу, хотя в последнее
время с этим получше.

Ну и плюс очень бедная стандартная библиотека. Это немного исправляется библиотекой
http://batteries.forge.ocamlcore.org/
Отредактировано 06.02.2016 10:14 FR . Предыдущая версия .
Re: Почему не взлетел OCaml?
От: alex_dorin Россия  
Дата: 01.01.19 17:30
Оценка: 20 (2)
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков? Чисто функциональным его не назовёшь, императивное программирование в нём есть, при этом порядок вычислений в нём прямой, а не ленивый, т.е. всегда можно предсказать, в каком порядке будут выполняться команды. Вывод типов — просто замечательная идея. Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


Взлетел давно и работает на НАСА
http://alt-ergo.lri.fr/
alex_dorin@rambler.ru
Re[10]: Почему не взлетел OCaml?
От: monax  
Дата: 06.02.16 11:48
Оценка: 11 (2)
Здравствуйте, FR, Вы писали:

FR>На OCaml кстати тоже очень легко писать, и потом читать код. Может и с питоном в этом посоревноваться.

FR>Я вот летом с Nim (http://nim-lang.org/) поигрался, хоть и корявый и сырой пока язык, но по моему
FR>продуктивность на нем не хуже питона.

Вот из-за Nim'a я c OCaml'ом и связался. Лето-осень вокруг нима поднялся шум. Меня заинтересовало, что за зверь. Прочитал мануал, потыкал язык. Но потом подумал, что не хочу возиться с чем-то сырым, да ещё и с непонятными целями, а OCaml уже достаточно стар, вылизан, имеет свою историю и принадлежит к семейству ML, которое меня давно интересует. А когда стал читать Программирование на языке OCaml, то нашёл для себя много интересного.
Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 09:59
Оценка: 1 (1) +1
Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков? Чисто функциональным его не назовёшь, императивное программирование в нём есть, при этом порядок вычислений в нём прямой, а не ленивый, т.е. всегда можно предсказать, в каком порядке будут выполняться команды. Вывод типов — просто замечательная идея. Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?
Re[2]: Почему не взлетел OCaml?
От: Кодт Россия  
Дата: 02.02.16 14:40
Оценка: 1 (1) :)
Здравствуйте, LaptevVV, Вы писали:

LVV>Опередил свое время?


Не опередил, а отвлёкся.
Французы — извращенцы, сначала форкнули SML, потом начали пихать в него всякие интересные фичи, причём с совершенно эклектичным синтаксисом, причём без оглядки на инфраструктуру и сообщество.

Если поискать язык со схожим уровнем разнопарадигменности и эклектики, — то, пожалуй, это С++. Но за С++ стоит долгая история и большущее сообщество сишников и плюсовиков.
Если другие ML, — F#, за которым стоит микрософт и совместимость с прочим дотнетом.
А прикольная говорящая лягушка никому особо не нужна.
Перекуём баги на фичи!
Re[5]: Почему не взлетел OCaml?
От: DarkEld3r  
Дата: 02.02.16 16:11
Оценка: +2
Здравствуйте, monax, Вы писали:

M>Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел.

Чем это принципиально отличается от необходимости писать let?
Re[6]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 18:20
Оценка: +2
Здравствуйте, DarkEld3r, Вы писали:

DE>Здравствуйте, monax, Вы писали:


M>>Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел.

DE>Чем это принципиально отличается от необходимости писать let?

По ссылке от Evgeny.Panasyuk гораздо больше auto, чем у меня let. Да и разные это вещи в принципе, если уж на то пошло.
Re[4]: Почему не взлетел OCaml?
От: uncommon Ниоткуда  
Дата: 02.02.16 23:49
Оценка: :))
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>"Автоматический вывод типов при статической типизации" есть в C++ — получается
Автор: Evgeny.Panasyuk
Дата: 07.06.15
именно как на Python'е.


auto надо на let заменить, и будет няшно:
let add = [](let x, let y) ...
Re: Почему не взлетел OCaml?
От: Klapaucius  
Дата: 04.02.16 11:27
Оценка: +2
Здравствуйте, monax, Вы писали:

M>Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


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

Думаю, что не стоит искать причину (не)популярности в каких-то свойствах языка. Никаких убедительных свидетельств того, что они как-то связаны мне видеть не приходилось.
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Re[6]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 11:17
Оценка: +1 -1
Здравствуйте, uncommon, Вы писали:

U>Это просто ахрененный аргумент. А в ocaml надо каждый раз let писать.


У OCaml сплошной межмодульный вывод типов, у C++ вывод типов в очень ограниченных
местах и гораздо более слабый.
Re[9]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 01:00
Оценка: +2
Здравствуйте, nikov, Вы писали:

N>А что в Mono странного?


Тормознут он и гюкав. Причем глюки порой годами не лечатся, а иногда возрождаются после того как были вылечены. В прочем, если писать только под него, то проблема не столь остра.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 10:59
Оценка: 3 (1)
Здравствуйте, Pzz, Вы писали:

Pzz>3. Если Inria бросит им заниматься, язык умрет


Раньше да так и было, сейчас уже нет, основном язык тянет OCamlPro
Re[8]: Почему не взлетел OCaml?
От: Кодт Россия  
Дата: 02.02.16 23:15
Оценка: 2 (1)
Здравствуйте, monax, Вы писали:

M>Хаскель другой совсем. Насколько я понял, ленивые вычисления в хаскеле ломают людям голову, потому что заставить его создать side-effect сложно. Впрочем, это пока только по отзывам, изучать его пока не довелось.


Хаскелл тщательно выдерживается в духе чистоты. И является платформой для экспериментов над абстракциями — будь то типы, алгебраические структуры, какие-то ещё идеи. Платформой, в том числе, отвечающей на вопрос: а можно ли всё это потянуть компилятором?
Ленивость или энергичность, тут дело выбора, сделанного единожды. Хаскелл пошёл ленивым путём, ML и идрис — энергичным (причём не наобум, а глубоко завязанно на суть языка).

Перед эклектическими языками у хаскелла именно его стройность является достоинством.


M>Скалу смотрел 4-5 лет назад. Прочитал книгу по скале. Она меня тогда поразила своей крутостью, ну прямо в самое сердце. Даже специальные ключевые слова для описания примесей у них были. А потом я подождал пару недель и попробовал сделать понравившееся в родном питоне. Вот тут на скалу стал смотреть иначе, сдержаннее. А ещё JVM меня тогда отпугнула. Но с тех пор прошло много времени, и на скалу нужно заходить по-новой.


M>F# — это, считай, OCaml. Только они добавили туда null и связали с .net. Вроде как люди приглядываются и даже пользуются, но для меня есть большой недостаток — MS. Т.е. под линухом я это никак не заведу (моно не в счёт, это странное явление), а под линухом я как раз и работаю. Так что для перехода на F# должно произойти что-то неординарное, чтобы я плюнул на все знания в линух-экосистеме и перешёл в дотнет. Тут либо мне нужно будет выполнять задачу, которая вот 100% хорошо ложится на виндовс+дотнет, но совсем не ложится на линух+окамл, либо F# должен дать мне такие дикие преимущества, что без него никак. Но этого не будет, да и окамл — это "в целях повышения образованности", на прод его тащить пока не собирался.


Прикладные языки всегда разрабатываются с оглядкой на среду исполнения.
А среда — это ещё и интерфейсы операционной системы, например.

Если ОС преимущественно на сишных вызовах, то в языке должен быть способ более-менее дёшево — и более-менее целостно, с т.з. языка, — работать с бинарными структурами и примитивными типами. Либо смириться с тем, что переходники будут корявые и неэффективные (например, вручную собирать-разбирать массивы байтов) либо написанные на си. Но тогда модель данных языка должна более-менее дёшево кодироваться на си, чтобы клей "с той стороны" не выглядел столь же ужасно.

Либо, в конце концов, просто наплевать на эффективность. Как это делается хоть в питоне, хоть в хаскелле.

Если среда — ООП в стиле явы или дотнета, то — так или иначе, но нужно, чтобы были классы и методы, совместимые с явой или дотнетом.
Отсюда и null как примитив, и односторонний вывод типов в определённых условиях (иначе ни ООП-полиморфизм, ни перегрузку методов не обеспечить), и дженерики как довольно специфический и узкий способ параметризации типов...
Поэтому — за скалу не скажу, а F# отошёл от идей чистоты ML, повыкидывав из окамла много того, что не вписывалось. А в дальнейшем приобретя многое другое.
Так что говорить, что F# это окамл плюс дорогущий рантайм, — это не совсем так.

А что касается портированных рантаймов, — ну так и ява-приложения запускаются и выглядят одинаково (чужеродно) на всех платформах. Дотнет хотя бы на винде выглядит органично.
Инсталлировать рантайм с каждым приложением сейчас нужды нет: в линуксе вайн и моно в репозиториях валяются, менеджером пакетов по зависимостям подтягиваются.
В отличие от того же окамла, где каждое приложение — это как бизибокс, всё своё прилинковал с собой.

Есть ещё вариант — сделать свой собственный рантайм, возможно, очень компактный. Ну и получим смолток, ещё-одну-какую-нибудь-яву, или вообще луа (вот уж рекордсмен по компактности рантайма). Ах да, — это всё не ФП было. Пример из ФП — это, конечно же, лисп.
А потом всё равно заморочимся по связыванию с внешним миром через биндинги, маршаллинг или добавление в язык изначально несвойственных фич.
Перекуём баги на фичи!
Re[8]: Почему не взлетел OCaml?
От: Evgeny.Panasyuk Россия  
Дата: 25.02.16 15:39
Оценка: 2 (1)
Здравствуйте, DarkEld3r, Вы писали:

DE>В том же хаскеле, с его тотальным выводом типов, у не локальных функций типы всё-таки указывают явно и в таком случае разницы нет.


Haskell далеко не везде
Автор: Evgeny.Panasyuk
Дата: 15.08.13
может вывести типы.
Re[4]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 15:08
Оценка: +1
Здравствуйте, Evgeny.Panasyuk, Вы писали:


EP>"Автоматический вывод типов при статической типизации" есть в C++ — получается
Автор: Evgeny.Panasyuk
Дата: 07.06.15
именно как на Python'е.


open Core.Std;;

let add x y =
    x + y
;;

let sub x y =
    x - y
;;

let apply f l =
    f(l)
;;

let () =
    printf "%d\n" (apply apply apply add 1 2);
    printf "%d\n" (apply apply sub 11 2);
;;


Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел. Ещё интересно было бы сравнить время появления автоматического вывода типов в плюсах и окамле.
Re[4]: Почему не взлетел OCaml?
От: novitk США  
Дата: 02.02.16 15:28
Оценка: -1
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>"Автоматический вывод типов при статической типизации" есть в C++ — получается
Автор: Evgeny.Panasyuk
Дата: 07.06.15
именно как на Python'е.


Не есть, а появился 20 лет спустя. Вопрос, как я понимаю, про "тогда", сейчас OCaml совсем не нужен.
Re[8]: Почему не взлетел OCaml?
От: nikov США http://www.linkedin.com/in/nikov
Дата: 03.02.16 20:38
Оценка: +1
Здравствуйте, monax, Вы писали:

M>F# — это, считай, OCaml. Только они добавили туда null и связали с .net. Вроде как люди приглядываются и даже пользуются, но для меня есть большой недостаток — MS. Т.е. под линухом я это никак не заведу (моно не в счёт, это странное явление)


А что в Mono странного? Между прочим, F# тестируется в том числе и на Mono на Linux. И значительная часть пользователей используют его именно на такой платформе.
Re[9]: Почему не взлетел OCaml?
От: Слава  
Дата: 03.02.16 22:06
Оценка: -1
Здравствуйте, nikov, Вы писали:

N>А что в Mono странного? Между прочим, F# тестируется в том числе и на Mono на Linux. И значительная часть пользователей используют его именно на такой платформе.


Да и вообще, при чём тут моно, когда .NET core уже больше года работает на линуксах.
Re[3]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 00:43
Оценка: +1
Здравствуйте, Кодт, Вы писали:

К>Если поискать язык со схожим уровнем разнопарадигменности и эклектики, — то, пожалуй, это С++. Но за С++ стоит долгая история и большущее сообщество сишников и плюсовиков.


AT&T за ним стоит. И это главное.

К>Если другие ML, — F#, за которым стоит микрософт и совместимость с прочим дотнетом.


F# — это как раз потомок ОКамла. А вот ОКамл уже потомок МЛ-я.

К>А прикольная говорящая лягушка никому особо не нужна.


Я бы по остерегся делать столь смелые заявления.

Думаю, что при должном пиаре и поддержке большой компании он мог бы занять весомую долю рынка, в свое время. Но варился он в научной среде и за ее пределами был попросту незнаком.

Из явных проблем усложняющих его изучение можно выделить разве что безскобочную нотацию в угоду каррирования (как в стиле Хаскеля). Это многих заставляет тупить при его изучении.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.02.16 16:42
Оценка: :)
Здравствуйте, DarkEld3r, Вы писали:

DE>Хоть по существу и согласен, но всё-таки поспорю.


Зачетная фраза!

DE>В том же хаскеле, с его тотальным выводом типов, у не локальных функций типы всё-таки указывают явно и в таком случае разницы нет. :ямбды выглядят аккуратнее, это да.


Дык локальных функций (включая лямбды) в разы больше. А то что в С++ их нет — это огромный недостаток.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Почему не взлетел OCaml?
От: Klapaucius  
Дата: 26.02.16 08:54
Оценка: +1
Здравствуйте, DarkEld3r, Вы писали:

DE>В том же хаскеле, с его тотальным выводом типов, у не локальных функций типы всё-таки указывают явно и в таком случае разницы нет.


Да, в хаскеле указывают типы и там, где их можно вывести (как правильно подмечено в соседнем ответе — это можно сделать не везде). Но "можно указывать" и "нельзя не указывать" — это не одно и то же. На самом деле это настолько различные варианты, насколько вообще возможно.
Например, при выводе типов, можно писать "от композиции", т.е. сначала скомбинировать комбинаторы, а потом посмотреть какой будет тип (и, закончив эксперименты с кодом, вставить сигнатуру при желании).
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Re: Почему не взлетел OCaml?
От: BulatZiganshin  
Дата: 01.03.16 23:06
Оценка: +1
Здравствуйте, monax, Вы писали:

M>...Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


почему симула и смолток не популярны? разве ооп — плохая идея?
почему модула не в мейнстриме? неужели программисты не понимают преимуществ модульности?
почему ада не используется нынче? как вообще можно обойтись без исключений и параллельности, не говоря уж о type traits?
наконец, что не так с идеями структурного программирования паскаля и алгола?

как ни крути, из всех этих языков f# — второй после паскаля, которому удалось хотя бы относительно выйти в люди
Люди, я люблю вас! Будьте бдительны!!!
Re: Почему не взлетел OCaml?
От: LaptevVV Россия  
Дата: 02.02.16 10:10
Оценка:
Опередил свое время?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 10:16
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Опередил свое время?


Не знаю. LISP вот он опередил время, не было мощной техники для выполнения динамического кода. А вот OCaml очень прагматичен. И опять же повторю, у него не чисто функциональная парадигма, возможность писать императивный код у него есть.

Он же зарождался на вашей памяти, может помните что-то из событий того времени?
Re[3]: Почему не взлетел OCaml?
От: LaptevVV Россия  
Дата: 02.02.16 10:24
Оценка:
LVV>>Опередил свое время?
M>Не знаю. LISP вот он опередил время, не было мощной техники для выполнения динамического кода. А вот OCaml очень прагматичен. И опять же повторю, у него не чисто функциональная парадигма, возможность писать императивный код у него есть.
M>Он же зарождался на вашей памяти, может помните что-то из событий того времени?
Ну, 85 год — рождение...
Мы слыхали только о нем. А потом начался Горбачев и стало не до интересных дел в программировании...
Про ML я узнал много позже из биографии Вирта.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Почему не взлетел OCaml?
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 02.02.16 12:44
Оценка:
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml.


Думаю что основная причина – он никому не нужен. Он не привносит ничего особого, при этом довольно сложен и (в стародавние времена, может что-то уже и изменилось) однопоточен. Единственное где он вроде как обоснованно прижился – прототипы/первые версии компиляторов.
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 12:53
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP> Он не привносит ничего особого, при этом довольно сложен и (в стародавние времена, может что-то уже и изменилось) однопоточен. Единственное где он вроде как обоснованно прижился – прототипы/первые версии компиляторов.


Автоматический вывод типов при статической типизации — это очень неплохо. По сути, пишешь на нём, как на питоне, а он сам за тебя типы ищет. Сложность — возможно, мне сложно сказать, как бы я на него отреагировал лет пять назад, а сейчас у меня уже хватает опыта, чтобы брать любой язык и просто изучать его. Однопоточность не порок, что успешно доказано питоном. Есть огромное пространство задач, в которых многопоточность не является необходимостью. А параллельная обработка данных на уровне процессов в окамле возможна.

Мне пока только бедность стандартной библиотеки кажется весомым аргументом, но уже давно есть Core.
Re: Почему не взлетел OCaml?
От: Sharov Россия  
Дата: 02.02.16 13:37
Оценка:
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков? Чисто функциональным его не назовёшь, императивное программирование в нём есть, при этом порядок вычислений в нём прямой, а не ленивый, т.е. всегда можно предсказать, в каком порядке будут выполняться команды. Вывод типов — просто замечательная идея. Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


Вы прям с Липпертом одновременно -- http://ericlippert.com/2016/02/01/west-of-house/
Кодом людям нужно помогать!
Re[3]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 15:09
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Не опередил, а отвлёкся.

К>Французы — извращенцы, сначала форкнули SML, потом начали пихать в него всякие интересные фичи, причём с совершенно эклектичным синтаксисом, причём без оглядки на инфраструктуру и сообщество.

Например?
Re: Почему не взлетел OCaml?
От: Pzz Россия https://github.com/alexpevzner
Дата: 02.02.16 15:13
Оценка:
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков? Чисто функциональным его не назовёшь, императивное программирование в нём есть, при этом порядок вычислений в нём прямой, а не ленивый, т.е. всегда можно предсказать, в каком порядке будут выполняться команды. Вывод типов — просто замечательная идея. Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


Ну, скажем так, я бы не стал использовать OCaml в промышленном коде по следующим причинам:
1. У него недостаточно развитая экосистема
2. Нет внятных гарантий стабильности языка. Следующая версия компилятора может перестать компилировать существующий код
3. Если Inria бросит им заниматься, язык умрет
Re[5]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 15:47
Оценка:
Здравствуйте, novitk, Вы писали:

N>Не есть, а появился 20 лет спустя. Вопрос, как я понимаю, про "тогда",


Именно. Т.е. не почему он сейчас не взлетает, тут понятно, его обогнали по ряду параметров (сообщество, экосистема), и его никто не толкает.

N>сейчас OCaml совсем не нужен.


Нужен. Такие как OCaml, LISP, Haskell — это ж кладезь мудрости для программистов. Из этих языков постоянно что-то вытаскивают в мейнстримовые, от чего последние становятся лучше.
Re[6]: Почему не взлетел OCaml?
От: novitk США  
Дата: 02.02.16 16:39
Оценка:
Здравствуйте, monax, Вы писали:

N>>сейчас OCaml совсем не нужен.


M>Нужен. Такие как OCaml, LISP, Haskell — это ж кладезь мудрости для программистов. Из этих языков постоянно что-то вытаскивают в мейнстримовые, от чего последние становятся лучше.


Ключевое слово "сейчас".
В 96-ом был нужен, сейчас нет. Сейчас с ним возиться смысла нет, лучше сразу взять Хаскель или Скалу/Ф#.
Re[4]: Почему не взлетел OCaml?
От: Кодт Россия  
Дата: 02.02.16 16:46
Оценка:
Здравствуйте, monax, Вы писали:

К>>Французы — извращенцы, сначала форкнули SML, потом начали пихать в него всякие интересные фичи, причём с совершенно эклектичным синтаксисом, причём без оглядки на инфраструктуру и сообщество.

M>Например?

Например, синтаксис модулей, объектов и полиморфных вариантов. Как будто три разных команды придумывали.
Перекуём баги на фичи!
Re[5]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 18:18
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Например, синтаксис модулей, объектов и полиморфных вариантов. Как будто три разных команды придумывали.


А да, тоже обратил внимание, но пока ещё не решил, нравится мне это или нет.
Re[7]: Почему не взлетел OCaml?
От: monax  
Дата: 02.02.16 18:32
Оценка:
Здравствуйте, novitk, Вы писали:

N>Здравствуйте, monax, Вы писали:


N>>>сейчас OCaml совсем не нужен.


M>>Нужен. Такие как OCaml, LISP, Haskell — это ж кладезь мудрости для программистов. Из этих языков постоянно что-то вытаскивают в мейнстримовые, от чего последние становятся лучше.


N>Ключевое слово "сейчас".

N>В 96-ом был нужен, сейчас нет. Сейчас с ним возиться смысла нет, лучше сразу взять Хаскель или Скалу/Ф#.

Хаскель другой совсем. Насколько я понял, ленивые вычисления в хаскеле ломают людям голову, потому что заставить его создать side-effect сложно. Впрочем, это пока только по отзывам, изучать его пока не довелось.

Скалу смотрел 4-5 лет назад. Прочитал книгу по скале. Она меня тогда поразила своей крутостью, ну прямо в самое сердце. Даже специальные ключевые слова для описания примесей у них были. А потом я подождал пару недель и попробовал сделать понравившееся в родном питоне. Вот тут на скалу стал смотреть иначе, сдержаннее. А ещё JVM меня тогда отпугнула. Но с тех пор прошло много времени, и на скалу нужно заходить по-новой.

F# — это, считай, OCaml. Только они добавили туда null и связали с .net. Вроде как люди приглядываются и даже пользуются, но для меня есть большой недостаток — MS. Т.е. под линухом я это никак не заведу (моно не в счёт, это странное явление), а под линухом я как раз и работаю. Так что для перехода на F# должно произойти что-то неординарное, чтобы я плюнул на все знания в линух-экосистеме и перешёл в дотнет. Тут либо мне нужно будет выполнять задачу, которая вот 100% хорошо ложится на виндовс+дотнет, но совсем не ложится на линух+окамл, либо F# должен дать мне такие дикие преимущества, что без него никак. Но этого не будет, да и окамл — это "в целях повышения образованности", на прод его тащить пока не собирался.
Re[8]: Почему не взлетел OCaml?
От: novitk США  
Дата: 02.02.16 21:57
Оценка:
Здравствуйте, monax, Вы писали:

M>Хаскель другой совсем. Насколько я понял, ленивые вычисления в хаскеле ломают людям голову, потому что заставить его создать side-effect сложно. Впрочем, это пока только по отзывам, изучать его пока не довелось.

Если ты хочешь не "ломки головы", а максимальной продуктивности, то я советую остаться на Питоне. Динамика до сих пор рулит, хотя разрыв и сокращается.

M> Но с тех пор прошло много времени, и на скалу нужно заходить по-новой.

Скала — плохой язык. Хаскель лучше и намного, но она лучшее из применимого на практике.
Re[5]: Почему не взлетел OCaml?
От: uncommon Ниоткуда  
Дата: 02.02.16 23:52
Оценка:
Здравствуйте, monax, Вы писали:

M>Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел.


Это просто ахрененный аргумент. А в ocaml надо каждый раз let писать.
Re[5]: Почему не взлетел OCaml?
От: Evgeny.Panasyuk Россия  
Дата: 03.02.16 09:11
Оценка:
Здравствуйте, uncommon, Вы писали:

U>auto надо на let заменить, и будет няшно:

U>
U>let add = [](let x, let y) ...
U>


Ветка на тему let
Автор: Evgeny.Panasyuk
Дата: 14.04.15
.
Re[5]: Почему не взлетел OCaml?
От: Evgeny.Panasyuk Россия  
Дата: 03.02.16 09:37
Оценка:
Здравствуйте, monax, Вы писали:

M>Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел.


Это мелочь если стоит выбор между mainstream языком и экзотикой.
Кстати, в Haskell'е даже let писать не нужно.

M>Ещё интересно было бы сравнить время появления автоматического вывода типов в плюсах и окамле.


Как механизм автоматический вывод типов уже был в ISO C++98, а в компиляторах ещё раньше. Но был доступен для небольшого ряда конструкций. Новые версии соответственно расширили область применимости.
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 03.02.16 16:09
Оценка:
Здравствуйте, T4r4sB, Вы писали:

TB>Потому что сообщество говноедов ценит только языки, похожие на ссишку.


Let the holywar begin? Разминайте, хлопцы, пальцы, начинаем холивар?
Re: Почему не взлетел OCaml?
От: VTT http://vtt.to
Дата: 03.02.16 20:11
Оценка:
Есть мнение, что многие лиспо-функциональные языки созданы прежде всего из-за академического интереса.

1) берем / рожаем формализм
2) исследуем закономерности
3) пишем статьи / диссертации
4) ...
5) PROFIT!!!
Говорить дальше не было нужды. Как и все космонавты, капитан Нортон не испытывал особого доверия к явлениям, внешне слишком заманчивым.
Re: Почему не взлетел OCaml?
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 04.02.16 07:47
Оценка:
Здравствуйте, monax, Вы писали:

M>И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков?


Как и в эволюционном отборе, нужна ниша, где бы он мог развиваться. Читай отсутствие альтернативы.
Re[8]: Почему не взлетел OCaml?
От: dsorokin Россия  
Дата: 04.02.16 13:30
Оценка:
Здравствуйте, monax, Вы писали:

M>Хаскель другой совсем. Насколько я понял, ленивые вычисления в хаскеле ломают людям голову, потому что заставить его создать side-effect сложно. Впрочем, это пока только по отзывам, изучать его пока не довелось.


Побочные эффекты в хаскеле создаются легко. Просто их надо явно прописывать через типы, а это непривычно для многих.

M>F# — это, считай, OCaml. Только они добавили туда null и связали с .net. Вроде как люди приглядываются и даже пользуются, но для меня есть большой недостаток — MS. Т.е. под линухом я это никак не заведу (моно не в счёт, это странное явление), а под линухом я как раз и работаю. Так что для перехода на F# должно произойти что-то неординарное, чтобы я плюнул на все знания в линух-экосистеме и перешёл в дотнет. Тут либо мне нужно будет выполнять задачу, которая вот 100% хорошо ложится на виндовс+дотнет, но совсем не ложится на линух+окамл, либо F# должен дать мне такие дикие преимущества, что без него никак. Но этого не будет, да и окамл — это "в целях повышения образованности", на прод его тащить пока не собирался.


Мне F# как язык нравится даже больше, чем Ocaml. Особенно в первом нравятся sequence expressions и его обобщение computations expressions. Но тоже огорчает завязка на жирный рантайм дотнета.
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 05.02.16 09:30
Оценка:
Здравствуйте, Klapaucius, Вы писали:

K>Вообще, у окамла много серьезных недостатков, но у мейнстримовых языков многое или все еще хуже. К примеру, у окамла игрушечный рантайм без SMP, но у популярных динамических языков рантаймы, как правило, еще более убогие и игрушечные.


До рантайма я ещё не добрался. А что с ним не так?
Re[8]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 11:10
Оценка:
Здравствуйте, monax, Вы писали:


M>F# — это, считай, OCaml. Только они добавили туда null и связали с .net. Вроде как люди приглядываются и даже пользуются, но для меня есть большой недостаток — MS. Т.е. под линухом я это никак не заведу (моно не в счёт, это странное явление), а под линухом я как раз и работаю. Так что для перехода на F# должно произойти что-то неординарное, чтобы я плюнул на все знания в линух-экосистеме и перешёл в дотнет. Тут либо мне нужно будет выполнять задачу, которая вот 100% хорошо ложится на виндовс+дотнет, но совсем не ложится на линух+окамл, либо F# должен дать мне такие дикие преимущества, что без него никак. Но этого не будет, да и окамл — это "в целях повышения образованности", на прод его тащить пока не собирался.



F# уже прилично отошел от OCaml'а хотя все еще возможно писать совместимый код.
У F# есть несколько плюсов, главное более приятный синтаксис с отступами
https://msdn.microsoft.com/ru-ru/library/dd233199.aspx
Встроенные монады (Computation Expressions) https://msdn.microsoft.com/ru-ru/library/dd233182.aspx
Active Patterns https://msdn.microsoft.com/ru-ru/library/dd233248.aspx
Ну и плюс море сахара над классами и объектами (которые так еще и не перетащили в C#),
хотя объектная система OCaml'а конечно намного интереснее.
Re[9]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 11:15
Оценка:
Здравствуйте, novitk, Вы писали:

N>Если ты хочешь не "ломки головы", а максимальной продуктивности, то я советую остаться на Питоне. Динамика до сих пор рулит, хотя разрыв и сокращается.


На OCaml кстати тоже очень легко писать, и потом читать код. Может и с питоном в этом посоревноваться.
Я вот летом с Nim (http://nim-lang.org/) поигрался, хоть и корявый и сырой пока язык, но по моему
продуктивность на нем не хуже питона.
Re[4]: Почему не взлетел OCaml?
От: monax  
Дата: 06.02.16 11:51
Оценка:
Здравствуйте, FR, Вы писали:

FR>Такой же недостаток есть скажем у питона с его GIL, или у nodejs.

FR>Выход использовать вместо потоков процессы.

Питон показал, что это несмертельный недостаток. Есть и плюсы и минусы у такого решения.

FR>Второй большой недостаток ограниченность многих типов например max_int для 32 бит

FR>всего лишь 1073741823, один бит данных забирает теговая система для GC.

Вот про это не знал.

FR>Третий недостаток, который сильно повлиял на популярность по моему, это ориентированность

FR>на unix образные системы, windows скорее по остаточному принципу, хотя в последнее
FR>время с этим получше.

Это они зря. Несмотря на то, что я живу в *nix, игнорировать виндовс — потеря популярности.

FR>Ну и плюс очень бедная стандартная библиотека. Это немного исправляется библиотекой

FR>http://batteries.forge.ocamlcore.org/

А Core, которая заменяет стандартную библиотеку?
Re[11]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 12:04
Оценка:
Здравствуйте, monax, Вы писали:

M>Вот из-за Nim'a я c OCaml'ом и связался. Лето-осень вокруг нима поднялся шум. Меня заинтересовало, что за зверь. Прочитал мануал, потыкал язык. Но потом подумал, что не хочу возиться с чем-то сырым, да ещё и с непонятными целями, а OCaml уже достаточно стар, вылизан, имеет свою историю и принадлежит к семейству ML, которое меня давно интересует. А когда стал читать Программирование на языке OCaml, то нашёл для себя много интересного.


Интересно даже книжка на русском вышла, раньше только тут http://shamil.free.fr/comp/ocaml/ перевод был.
Re[5]: Почему не взлетел OCaml?
От: FR  
Дата: 06.02.16 12:10
Оценка:
Здравствуйте, monax, Вы писали:


M>Это они зря. Несмотря на то, что я живу в *nix, игнорировать виндовс — потеря популярности.


Ну они полностью не игнорировали, я например и начал изучать и использовал под windows,
но если под linux ocaml очень легко установить и использовать, в стандартных репозиториях
куча доступных библиотек, то под windows все что выходило за стандартный инсталлятор было
проблемно, сейчас вроде уже попроще.

FR>>Ну и плюс очень бедная стандартная библиотека. Это немного исправляется библиотекой

FR>>http://batteries.forge.ocamlcore.org/

M>А Core, которая заменяет стандартную библиотеку?


Core как-то мимо меня прошло, я начал с ExtLib, который плавно перерос в батарейки.
Re[12]: Почему не взлетел OCaml?
От: monax  
Дата: 06.02.16 12:15
Оценка:
Здравствуйте, FR, Вы писали:

FR>Интересно даже книжка на русском вышла, раньше только тут http://shamil.free.fr/comp/ocaml/ перевод был.


Это перевод https://realworldocaml.org/. Авторы как раз разработали Core, вокруг неё и книга крутится. Впрочем, большинство вещей без особых заморочек переписывается на стандартной библиотеке. Вчера вот там же читал про Async.
Re[10]: Почему не взлетел OCaml?
От: novitk США  
Дата: 07.02.16 03:18
Оценка:
Здравствуйте, FR, Вы писали:

FR>На OCaml кстати тоже очень легко писать, и потом читать код. Может и с питоном в этом посоревноваться.

FR>Я вот летом с Nim (http://nim-lang.org/) поигрался, хоть и корявый и сырой пока язык, но по моему
FR>продуктивность на нем не хуже питона.

Я тоже так думал, а потом месяцев 6 назад жизнь заставила перейти с Питона на Скалу. По моей оценки сейчас, когда я полностью освоился, прототипирование все равно идет раза в два медленней. Скала правда тоже кривовата, но хотя бы более менее отлажена. Возможно инструментарий подтянут и настанет счастье, но пока вот так.
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 08.02.16 19:16
Оценка:
Здравствуйте, D. Mon, Вы писали:

DM>Потому что программисты делятся на:

DM>1) "С++ (или Java) — наше все, все остальное нинужно. у нас даже вывод типов есть. и алгебраики в бусте."
DM>2) "я тупой, все что сложнее JS или Питона — заумь, наркомания и нинужно. Вот Го это круто, он простой, к тому же от гугла"
DM>3) "ФП! Функторы! Монады! Комонады! Когомологии! Предпучки! Топосы! Гомотопии... ой, где это я? Не, грязный ML это недостаточно монадично."

Беби:
Мне ужасно везет на женатых, первый раз влюбилась в женатого, потом шесть лет встречалась с женатым , месяц назад познакомилась с парнем, понравился.....женатый, может у меня карма дурная, что они на меня слетаются, как мухи

Нанни:
упс, о беби , беби

Свайн:
Опережая посты, краткое содержание темы.
1. Аффтор плять.
2. Мужики — плядуны.
3. Сцука разрушает чужие семьи.
4. Добейся хоть одного.
5. Это развод.
6. Куда смотрят жены.
7. Всякий разный флуд на посторонние темы.
8. Разные страшилки про детей.
От себя, обозначиваю пункты 1, 2 и 7

Сережка
Вот сцуко! Всю тему загубил


А ещё я узнал новое слово — предпучки.
Re: Почему не взлетел OCaml?
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 08.02.16 21:28
Оценка:
http://ericlippert.com/2016/02/08/facebook/

Now perhaps it is clear why I have been working frantically to learn OCaml for the last couple of months; several of Facebook’s compilers are written in OCaml, and so I’m going to need to have a working knowledge of that language very quickly.

Ce n'est que pour vous dire ce que je vous dis.
Re[2]: Почему не взлетел OCaml?
От: monax  
Дата: 09.02.16 08:27
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>http://ericlippert.com/2016/02/08/facebook/


DR>

Now perhaps it is clear why I have been working frantically to learn OCaml for the last couple of months; several of Facebook’s compilers are written in OCaml, and so I’m going to need to have a working knowledge of that language very quickly.


Про то, что в фейсбуке есть компиляторы на OCaml я знал. Ещё Haxe на нём же написан. Ну т.е. для написания компиляторов, видимо, он хорошо подходит.
Re[5]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 00:45
Оценка:
Здравствуйте, monax, Вы писали:

M>Плюсы же нужно каждый раз просить (auto), чтобы он типы вывел. Ещё интересно было бы сравнить время появления автоматического вывода типов в плюсах и окамле.


Вывод типов появился в ML-е. ОКамл, F#, Scala, Nemerle и от части даже C# унаследовали эту фичу от него.

ОКамл — это по сути и есть сращивание ML-я и ООП в стиле утиной типизации.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 00:47
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Ну, скажем так, я бы не стал использовать OCaml в промышленном коде по следующим причинам:

Pzz>1. У него недостаточно развитая экосистема
Pzz>2. Нет внятных гарантий стабильности языка. Следующая версия компилятора может перестать компилировать существующий код
Pzz>3. Если Inria бросит им заниматься, язык умрет

Нет слов! Ну, так займись языком и он не умрет. Это любой язык можно забраковать просто потому что его автор не большая шишка в Майкрософт или Гугле.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 00:49
Оценка:
Здравствуйте, monax, Вы писали:

M>Нужен. Такие как OCaml, LISP, Haskell — это ж кладезь мудрости для программистов. Из этих языков постоянно что-то вытаскивают в мейнстримовые, от чего последние становятся лучше.


Совсем недавно (всего 15 лет назад) не вытаскивали ничего. А о OCaml, LISP и Haskell разве что слышали.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Почему не взлетел OCaml?
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.02.16 00:50
Оценка:
Здравствуйте, DarkEld3r, Вы писали:

DE>Чем это принципиально отличается от необходимости писать let?


У параметров не надо писать let. А в ФЯ именно параметры занимают основной объем в коде.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Почему не взлетел OCaml?
От: DarkEld3r  
Дата: 25.02.16 14:42
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>У параметров не надо писать let. А в ФЯ именно параметры занимают основной объем в коде.

Хоть по существу и согласен, но всё-таки поспорю. В том же хаскеле, с его тотальным выводом типов, у не локальных функций типы всё-таки указывают явно и в таком случае разницы нет. :ямбды выглядят аккуратнее, это да.
Re[9]: Почему не взлетел OCaml?
От: DarkEld3r  
Дата: 26.02.16 14:38
Оценка:
Здравствуйте, Klapaucius, Вы писали:

K> Но "можно указывать" и "нельзя не указывать" — это не одно и то же.

Естественно. Справедливости ради, вариант "нельзя не указывать" тоже имеет определённые "преимущества" — не будет соблазна забить на указание типов и код (наверное) читать будет проще.

K> На самом деле это настолько различные варианты, насколько вообще возможно.

Да ладно? Есть ещё вариант "нельзя указывать".
Re: Почему не взлетел OCaml?
От: z00n  
Дата: 28.02.16 16:17
Оценка:
Здравствуйте, monax, Вы писали:

M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков? Чисто функциональным его не назовёшь, императивное программирование в нём есть, при этом порядок вычислений в нём прямой, а не ленивый, т.е. всегда можно предсказать, в каком порядке будут выполняться команды. Вывод типов — просто замечательная идея. Но при всех этих прекрасных характеристиках в мейнстриме его нет, ну разве что в виде F#, но это совсем недавно. Так почему он не отвоевал своё место под солнцем?


Как не взлетел — на нем же переписали Facebook
https://youtu.be/FvMuPtuvP5w?t=119

Hack is a version of PHP that looks like PHP but under the covers it's really Ocaml.
Re: Почему не взлетел OCaml?
От: dmz Россия  
Дата: 09.03.16 11:52
Оценка:
M>Недавно "в целях повышения образованности" взялся за изучение OCaml. Язык очень понравился, прямо такой хитрый и умный питон с компиляцией. И вот интересно стало, а почему он не взлетел и не стал одним из мейнстримовых языков?

Некоторые его любят, но стрёмноватый синтаксис, непонятно зачем нужные разнонаправленные фичи,
фейлы рантайма (подрезанный бит), так и не сделанная SMP, ну и главное, чисто франзцуская
извращённость. А правильным питоном является хаскель.
Re: Почему не взлетел OCaml?
От: K1RA  
Дата: 15.06.16 11:45
Оценка:
Просто любопытства ради:
F# — один из наиболее высоко оплачиваемых языков программирования сегодня (http://stackoverflow.com/research/developer-survey-2016#technology-top-paying-tech)
(больше разных графиков тут — http://stackoverflow.com/research/developer-survey-2016)

Говорят, что Ocaml и F# наиболее всего нашли себя в мире quant-ов (финансы).
Но кое кто утверждает, что не только там он используется — https://fsharp.tv/gazettes/f-the-most-highly-paid-tech-worldwide-in-2016/
Re[2]: Почему не взлетел OCaml?
От: trop Россия  
Дата: 22.02.19 23:14
Оценка:
Здравствуйте, alex_dorin, Вы писали:
_>Взлетел давно и работает на НАСА
_>http://alt-ergo.lri.fr/

исторически Ocaml наиболее популярен во Франции
-
Re: Почему не взлетел OCaml?
От: VladCore  
Дата: 27.04.19 08:01
Оценка:
Здравствуйте, monax, Вы писали:

Я знаю ответ, но скажу если укажете свой опыт в разработке софта. А просто так писать очевидные в узких кругах вещи не интересно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.