metaclass: (Default)
[personal profile] metaclass
Ребе айсед регулярно пытается убедить меня использовать емакс для разработки на Clojure.
Ну, безотносительно к юзабилити, которое там странное, есть две вещи которые я в принципе не в состоянии понять:
1) Как сочетается редактирование текста и REPL? Одно - редактор файлов, второе, условно говоря, "командная строка).
2) Любой код работает не сам по себе, а в контексте 100500 внешних зависимостей, т.е. чтобы выполнить определенную функцию - ее надо, как минимум, загрузить со всеми жабьими зависимостями и рядом лежащими функциями, а как максимум - еще передать ей пару тыщ записей из базы данных.

То же самое касается любых языков с REPL - хаскель, скала, F# итд

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

Date: 2013-03-23 06:57 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Из редактора функцию нету смысла забрасывать, она не заработает.

Особенно у функций нет зависимостей. Даже если она чистая - у нее статик зависимостей на библиотеки-classpath и соседние чистые функции сотни штук, реально. У меня в коде функций, которые зависят только от clojure.core сильно меньше половины.

Date: 2013-03-23 07:09 pm (UTC)
From: [identity profile] prepor.livejournal.com
про отсутствие зависимостей у функции бред конечно, но это не значит, что это не работает всё ) Когда пилишь функцию все окружение уже загружено (иначе то как?!), и для определения одной маленькой функции может быть влом загружать весь буфер опять, тем более там может быть что-то еще не дописано. C-M-x и все, функция загружена, запустили, о збс, идем дальше.

+ тесты конечно. Моментальный запуск тестов, с красивой подсветкой мест ошибок и тремя видами дифов для is-макросов. Прелесть. Как вы живете без этого?

Date: 2013-03-23 07:52 pm (UTC)
From: [identity profile] golikov konstantine (from livejournal.com)
так например lein repl умеет в зависимости (правда сначало надо писать всякие use/require...), разве емакс так не может?

Date: 2013-03-24 11:14 am (UTC)
From: [identity profile] theiced.livejournal.com
что нрепл что костылизм со слаймом работают с лейн проектами же.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 7th, 2025 11:25 pm
Powered by Dreamwidth Studios