2010-07-22 3 views
17

Я просто возвращаюсь в OCaml для нового небольшого исследовательского проекта после многих лет SML, Haskell и F #.Сколько продуктов со значением "OCaml Batteries включена"?

Я быстро обнаружил, что мне не хватает некоторых вещей при использовании библиотек OCaml, и я также пропустил синтаксис для монадических понятий.

Аккумуляторы OCaml, как представляется, заполняют именно эти пробелы. Но я немного не уверен, достигли ли они уровня зрелости, стабильности и достаточно широкого распространения для этого проекта. Часть моего сомнения связана с наличием ряда икота при его установке, включая обнаружение того, что в настоящее время инструкции по установке устарели, и только в результате Googling в итоге нашел ответ на запрос поддержки, который объяснил, что требуется.

Батареи относительно стабильны? (Или, по крайней мере, более стабильный, чем указано выше?) Является ли его использование относительно распространенным? (Например, составляет 10% от нового кода OCaml, написанного с его использованием?)
Какие проекты должны быть рекомендованы?
(И, в частности, было бы рекомендовано для небольшого среднего исследовательского проекта, который должен дать небольшую библиотеку, которая, вероятно, будет поддерживаться в течение некоторого времени.)
Любые другие рекомендации?

+1

Я не знал, что произошли такие большие перемены. Я только что проверил количество сообщений в архиве Caml-list по месяцам, и за то, что он стоит, похоже, не сильно изменилось за последние четыре года: http://caml.inria.fr/pub/ml-archives /caml-list/index.en.html Можете ли вы указать на любые ссылки, которые показывают отвес? Или, по крайней мере, объясните, как вы определили, что был отвес? У вас есть – RD1

+4

@ Jon: Это довольно смелое утверждение, и я не склонен верить, если вы не можете поддержать его со звуковой статистикой из разумно беспристрастного источника. – bcat

+2

@ RD1 и bcat: я только что вырвал статистику для двух списков рассылки OCaml, и они с каждым годом падают последовательно каждый год в течение четырех лет подряд, начиная с 663 сообщений в месяц в 2007 году до 276 (58% снижение). Продажи наших продуктов, связанных с OCaml, упали на 60% за тот же период, и, следовательно, мы снизили OCaml. Тенденции Google демонстрируют аналогичную тенденцию с ~ 60% -ным снижением доли поисковых запросов Google для OCaml. –

ответ

12

Полу-отказ от ответственности: Я являюсь одним из действующих разработчиков Батареи в комплекте.

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

Ожидайте увидеть его в достаточном количестве потока на протяжении всего цикла 1.x. Мы стремимся поддерживать совместимость API-интерфейсов для всех выпусков 1.x, но новые вещи будут добавлены, а старые модули/функции, вероятно, будут устаревать. Большая часть его должна быть довольно стабильной, хотя мы все еще находим и исправляем ошибки. Тем не менее, это будет очень полезно, если больше людей будут использовать его и сообщать об ошибках, которые мы еще не видели.

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

Мой совет: если вы используете Extlib, используйте батареи. Он вобрал в себя функциональный набор Extlib (действительно, большую часть его кода), и он немного отличается от него. Если вы найдете ошибки, сообщите об этом :).

+0

Приветствия, отличный ответ. Это достаточно хорошо с моей точки зрения, поэтому я буду использовать его. – RD1

9

Ну, я лично рекомендую батареи OCaml в комплекте. Конечно, это просто так, что я оригинальный автор :)

Это еще не распространено, но теперь оно является частью Debian/testing и Ubuntu Lucid Lynx, в дополнение к GODI, поэтому вы можете ожидать, что количество людей, чтобы проверить его на наличие ошибок.