Alexander
не 50% конечно, но и не жалкие единицы
Alexander
Так я про хаскеллистов, а не про ФП. Ты хаскеллист? Автоматически токсичный зазнайка, что бы ни говорил
Andrei
в среде рубистов есть куча фанов фп
есть, я даже знаю одного, который в продакшон монады на руби втащил, за неимением возможности втащить хаскель.
Alexander
Так я про хаскеллистов, а не про ФП. Ты хаскеллист? Автоматически токсичный зазнайка, что бы ни говорил
Мне казалось, недавние события в Твиттере это снова продемонстрировали
Alexander
не, ну если человек заходит в руби-тред со словами "привет придурки, а хаскель круче руби" то он наверняка токсичный зазнайка
Alexander
а если не заходит то и внимание не привлекает
Alexander
есть, я даже знаю одного, который в продакшон монады на руби втащил, за неимением возможности втащить хаскель.
А я знаю того, кто втащил фримонады, но использовал их не как монады, а просто отдельные вызовы
Alexander
кстати довольно хорошая мысль попробовать вкрутить стейт
Alexander
но без do-нотации как то неэстетично
Alexander
в руби вечная проблема с тем что нет нормальных примитивов для многопоточного мутабельного глобального стейта
Alexander
но без do-нотации как то неэстетично
Ех... Мне сейчас приходится без нее жить в плюсах, чтобы работать все с тем же фримонадным кодом
Alexander
Все на баиндах...
Alexander
вообще, если yield_self нотация взлетит, то можно будет и о монадах подумать
Alexander
но без do-нотации как то неэстетично
В динамическом языке эмулировать do-нотацию же - раз плюнуть?
Alexander
ну на прокси-объектах да, но это все равно будет выглядеть отвратительно
Nikita
https://github.com/dry-rb/dry-monads/pull/50 вот вариант
Alexander
А макросы в руби есть? А-ля сишные.
Alexander
код в pr сам по себе херовый
Nikita
начинается, я про синтаксис
Nikita
можно подумать мне нужны было обсуждение кода
Alexander
хотя подход прикольный
Alexander
да. в рантайме.
Не очень понятно, что такое "макросы в рантайме", ну да ладно
Alexander
там нет доступа к AST = не макросы
Vasiliy
(в руби нет макросов)
Alexander
там нет доступа к AST = не макросы
Так и в Си/C++ нету. Там просто строчки переписываются. Не всем же языкам лисповые макросы иметь
Andrei
Не очень понятно, что такое "макросы в рантайме", ну да ладно
уж какие есть вот выдержка из рельсового delegate — if allow_nil method_def = [ "def #{method_prefix}#{method}(#{definition})", "_ = #{to}", "if !_.nil? || nil.respond_to?(:#{method})", " _.#{method}(#{definition})", "end", "end" ].join ";"
Alexander
вы предлагаете eval считать макросом?
Andrei
это ладно, а вот в master stack перестало собираться intero и поломало intellij-haskell
Alexander
Мне просто всегда думалось, что макросы перед исполнением кода разворачиваются. А в рантайме - это что-то другое уже
Viacheslav
макросы в лиспе
Alexander
макросы в лиспе
А что с ними?
Alexander
ну если в двух словах, в руби компиляция идет в рантайме. Причем, чсх, в любой момент рантайма
Viacheslav
ну они вполне себе в момент исполнения кода разворачиваются
Alexander
Тут, видимо, смешаны понятия рантайма компилятора и рантайма программы
Alexander
собственно говоря, любой скриптовой язык собирает объектную модель прямо в рантайме
Serghei
не любой
Serghei
обладатели jit делают это раньше
Alexander
наоборот позже
Viacheslav
это не про руби конечно
Alexander
сначала обхъектная модель, потом компиляция
Alexander
можем взять тот же js
Alexander
jit работает со статистикой, а статистика это приватная часть объектной модели
Andrei
develop7@t-rex ~/p/stack (master)> stack build intero Warning: Ignoring unknown field "generated-other-modules" in executable section "stack" Error: While constructing the build plan, the following exceptions were encountered: In the dependencies for ghc-paths-0.1.0.9: Cabal-2.2.0.1 from stack configuration does not match >=1.6 && <2.1 (latest matching version is 2.0.1.1) needed due to intero-0.1.30 -> ghc-paths-0.1.0.9 siiiiiiiigh
Alexander
stack upgrade
Alexander
а, или ты уже?
Andrei
уже 1.6.5
Andrei
хоть ты прямо бутстрапь :)
Alexander
С такими инфраструктурными проблемами Хаскель еще долго будет в ж. Пора создавать новый язык...
Andrei
не вполне понятно, конечно, в чём снойман сотоварищи сами пилят стек и пользуются ли при этом intero ну то есть стало непонятно
Alexander
Раньше ходила байка, что самые лучшие разработчики MS пишут код в Блокноте.
Alexander
Слоан не пользуется интеро
Alexander
насколько я его окружение помню
Alexander
я не винде в нотепад++ писал
Alexander
Notepad++ прекрасен. Жаль, под Винду только.
Alexander
неовим полущ
Кабачок
Notepad++ прекрасен. Жаль, под Винду только.
вино и виртуалки вам в помощь
A64m
нет, не прекрасен
Alexander
нет, не прекрасен
Он единственный меня выручал, когда надо было работать с большими файлами.
Viacheslav
кажется началось
Viacheslav
опять
A64m
насколько большими?
Alexander
Хотя на Линуксах с этим справлялся Geany
Alexander
насколько большими?
Я не помню уже. Меньше гигабайта, но больше 100мб
Евгений
неовим полущ
Неовим мёртвый же после выхода вим8
Alexander
В задачи входила работа с регекспами
Viacheslav
старый добрый vim вот помню открывал и делал реплэйсы по 10гигабайтному дампу бд
Кабачок
Здравствуете, это канал об аниме? Как пропатчить Emacs для поддержки OTF лигатур?
Alexander
Помню, чтобы научиться слепой печати, задрачивал Соло на клавиатуре около двух месяцев. Ощущение, что вим так же учат, но вопрос, есть ли подобные обучающие софтины.
parket
На первое время хватит. Потом наработаются стандартные паттерны, и будет удобно.
Alexander
Есть vimtutor и https://vim-adventures.com
Пробовал. Но у меня есть более принципиальные проблемы с вим. Я думаю слишком медленно, чтобы быть в нем эффективным.
Евгений
Я хоткеи вима не юзаю практически, мне хватает встроенного в редактор ed
Alexander
Не нужно думать. Множественные повторения нарабатывают мышечную память.
Да, я это понимаю мозгом. Тут отличий от слепого метода нет.
parket
Да, я это понимаю мозгом. Тут отличий от слепого метода нет.
Ну, я поступил хардкорно. Поставил себя перед фактом, что отныне я использую исключительно vim. Первые пару месяцев было очень медленно и бесило. Хотел бросить. Потом стало проще. Пол года спустя восстановил былую производительность. Сейчас ( 3 года спустя ) все остальные редакторы кажутся жутко неэффективными.
Dmitry
Вот я так же в Linux перешёл