LINUX.ORG.RU

«OCaml мёртв и тормозит»

 ,


2

4
«OCaml мёртв и тормозит»

Уже некоторое время я использую язык OCaml в качестве альтернативы Си++ для написания разного рода полезных и не очень программ. Библиотек не очень много, но этот недостаток компенсируется простым как бревно интерфейсом к сишным либам, которых, как известно, чуть более чем дофига.

В качестве среды разработки я использую emacs. Существуют плагины для IDEA, eclipse и vim, но первый у меня не завелся, второй слишком тормозной, а последний умеет только бибикать и все портить.

Для emacs есть несколько пакетов, обеспечивающих базовые инструменты для работы с OCaml. В интернете широко распространен tuareg-mode, но я использую TypeRex.

TypeRex работает на линуксе и макоси, с окамлом старше 3.11.2 и емаксом с версии 23.2.1.

Искаропки умеет:

  • навигация по коду (go to definition и т.п.);
  • автокомплит;
  • базовые возможности рефакторинга кода.

Говорят, его можно собрать и под OCaml 4.0, но я не пробовал.

Итак, на скриншоте можно увидеть:

  • emacs (меню и туллбар, ага) с typerex, пресловутой темой solarized и шрифтами terminus
  • эмулятор терминала через eshell
  • скриншот с v4l2 устройства, полученный в процессе чтения Unix system programming in OCaml и ковыряния библиотеки ocaml-extunix
  • в остальном — дефолтная убунта

>>> Просмотр (1366x768, 210 Kb)

★★★★★

Проверено: JB ()

Могу подкинуть полезный для ТеХнического сообщества Ocalmовый (emacs тоже задет будет) проект для доковыривания до рабочего состояния. В целях, естественно, обучения, ну и для пользы всем добрым людям.

Evgueni ★★★★★ ()

палю годноту:

(menu-bar-mode 0)
(tool-bar-mode 0)
(scroll-bar-mode 0)

x4DA ★★★★ ()

кстати почему не хаскел?

x4DA ★★★★ ()

эмулятор терминала через eshell

не назвал бы eshell эмулятором терминала

x4DA ★★★★ ()

Кто дал тебе мою фотографию ?!

s9gf4ult ★★ ()

От соляры глаза не пучит? Я вот сразу чувствую, что глазные мышцы то ли напрягаются, то ли что. Не срослось у нас, короче.

uuwaan ★★ ()
Ответ на: комментарий от x4DA

кстати почему не хаскел?

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

s9gf4ult ★★ ()
Ответ на: комментарий от yoghurt

Почему LOL? Я не хочу тролить, мне правда интересно, так как я выбираю между ними. Спасибо за адекватный ответ.

SAA ★★★ ()
Ответ на: комментарий от uuwaan

Из любой темы можно сделать такое повыбирав неудачные цвета для токенов.

zz ★★ ()

Подсветка кода оставляет желать лучшего.

helios ★★★★★ ()

+1 к увидевшим свою фотографию. Посоны, мы клоны! А ну угадывайте, о чем я сейчас думаю?

vurdalak ★★★★★ ()

все понравилось, можно было бы прикопаться к шрифтам, но чего то не хочется

Vernat ★★ ()

а, да, вброс про vim бородат

Vernat ★★ ()

Э-э-э. А зачем тулбар и меню?

baverman ★★★ ()

Думаю, что тебе нужен Vim. ;)

renya ★★★★★ ()

Почему у emacs не работает глобалменю?

olibjerd ★★★ ()

У меня тоже solarized-dark. Лучше еще не видел, использую > 1 года.

gensym ★★ ()
Ответ на: комментарий от lazyklimm

да все руки не дойдут убрать лишнее нафиг.

ymn ★★★★★ ()
Ответ на: комментарий от x4DA

ну, причин несколько:

  • синдром утенка во все поля;
  • хаскел очень бурно развивается, а разрабы не очень парятся об обратной совместимости. при обновлении на новую версию платформы начинается адовое веселье и пляски вокруг кабала;
  • имхо окамл более приветлив к новичкам, чем хаскель. есть у меня один проект с кое-какими перспективами монетизации. когда я его начинал, то выбрал окамл из-за того, что любого нормального программиста можно научить окамлу за месяц-два максимум, в отличие от;
  • на самом деле не так много функциональных, статически типизированных, компилируемых в нативный код языков программирования. выбирать особо не из чего)
ymn ★★★★★ ()
Ответ на: комментарий от bhfq

годно, чо) но имхо терминус там бы смотрелся еще круче)

ymn ★★★★★ ()

Как поживает хвостовой рекурсивный вызов?

postman_ ★★ ()
Ответ на: комментарий от gensym

Так же использую solarized-dark, но в последнее время заметил, что если после целого дня его использования переключиться на light, то глазам легче становится.

winlook38 ()
Ответ на: комментарий от ymn

advi http://advi.inria.fr/ точнее его использование совместно с whizzytex http://cristal.inria.fr/whizzytex/ — отображение LaTeXовского текста в реальном времени.

Когда я его тыкал палочкой, advi не мог отображать вставляемые eps-картинки и это была его бага. Возможно там что-то поправили. С другой стороны в идеале было бы обучить advi pdf (придётся по другому назвать).

Движение в сторону отображения набираемого LaTeX текста в реальном времени время от времени возникает, но это либо спецредакторы, либо под маком или Windows и за деньги. Под GNU/Linux ничего особо стабильного не проявилось.

Evgueni ★★★★★ ()

Хороший способ засунуть свою фотку на главную ЛОРа.

Quasar ★★★★★ ()

OCaml ужасен (haskell лучше), но на нём уже много толкового софта написано, не исправить.

XVilka ★★★★ ()
Ответ на: комментарий от SAA

Это я утрировал, конечно, но, по сравнению, с Haskell он довольно многословен.

XVilka ★★★★ ()
Ответ на: комментарий от SAA

Возможно, ТС хотел убрать тулбар, меню и прочее, но в лиспах false это только nil, а все остальное - t(rue), включая 0. Поэтому мы видим их на экране.

yoghurt ★★★★★ ()

Был же дебиан сид:-(
В чём профит по сравнению с C++ то? Думал окамлисты - это неосилившие монады хаскеллисты.

aptyp ★★★ ()
Ответ на: комментарий от aptyp

Был же дебиан сид

дебиан теперь на основном компе, а на ноуте убунта.

В чём профит по сравнению с C++

  • функциональный язык, иммутабельные структуры и т.п.
  • система типов не такое говно как в плюсах
  • код на окамле более компактный

Думал окамлисты - это неосилившие монады хаскеллисты

ты ошибся. монады есть много где.

ymn ★★★★★ ()
Ответ на: комментарий от ymn

А производительность по сравнению с плюсами какая, тут всё-таки не синтетический тест, результаты интересны.
Я из не осиливших монады, а окамл практически не смотрел, так что ничего удивительного.

aptyp ★★★ ()
Ответ на: комментарий от zloy_starper

да ничего не тормозит) это цитата из шапки ocaml@c.j.r

ymn ★★★★★ ()
Ответ на: комментарий от aptyp

А производительность по сравнению с плюсами какая

зависит от задачи. а так окамл, примерно как и хаскелл, медленнее плюсов раза в 2-3.

ymn ★★★★★ ()

За solarized - минус
А уж за радугу подсветки синтаксиса в емаксе - тем более
ах, да, за емакс тоже минус

kovrik ★★★★ ()

Здравствуйте. Теперь Вы должны мне денег в качестве компенсации морального ущерба, причинённого Вами, а конкретнее - вашими, я не побоюсь этого слова, непристойными картинками!

pikwik ()

Тема норм (сам такую с gvim использую). А вот зачем свою фотку вешать на десктоп? Так любишь себя?

GreenBag ()
Ответ на: комментарий от GreenBag

так это результат работы программы, который емакс показывает. захват изображения с v4l2-устройства.

ymn ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.