Вы видите копию треда, сохраненную 7 июня 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
{Основные диалекты}
:: Clojure - единственный лисп-образный язык, который тебе нужно знать! Много интерпрайз, самый большой миска рис (пик стронгли релейтед)! Делать фулстак дата-дривен опердени с метагенерацией, получать удар одобрение партия, добрый кошка-жена! Шапку читать здесь: https://rentry.co/9ve9d
:: Common Lisp - разрабатывался как промышленный язык, пригодный для широкого спектра применения, из-за чего имеет достаточно объемную спецификацию. Является мультипарадигменным (процедурщина, функциональщина, ооп (CLOS)), с сильной, динамической типизацией. Есть опциональная декларация типов и частичный их вывод в некоторых реализациях.
Описание особенностей: http://habrahabr.ru/post/143490
Основные реализации:
- свободные: SBCL (нативный код), Clozure CL (нативный код), ECL (через сишку), Clisp (байт-код; небольшой размер образа; похоже, заброшен), Clasp (LLVM; ориентирован на интероп с C++), ABCL (байт-код JVM), CMUCL, GCL.
- коммерческие: LispWorks, Allegro CL, Scieneer CL, mocl
:: Scheme - это минималистичный лисп, пригодный в основном для обучения, исследований. Наиболее практичными реализациями являются GNU Guile и Chicken Scheme.
:: Racket - развитие PLT Scheme. Racket включает в себя много подъязыков (typed racket, lazy racket, frtime racket, Scheme стандартов r5rs и r6rs).
{Scheme}
::: Учебники
- SICP :: https://mitpress.mit.edu/sites/default/files/sicp/index.html
- The Scheme Programming Language (R6RS) :: https://www.scheme.com/tspl3
- Практика :: https://exercism.io/my/tracks/scheme
::: Документация
- http://web.mit.edu/scheme_v9.2/doc/index.html
::: Остальное
- https://github.com/theodesp/awesome-scheme
- https://github.com/schemedoc/awesome-scheme
{Racket}
::: Учебники
- HtDP :: https://www.htdp.org/
- Racket Guide :: https://docs.racket-lang.org/guide/index.html
- Beautiful Racket: https://beautifulracket.com/
- Остальные :: https://racket-lang.org/books.html
::: Документация
- https://docs.racket-lang.org/
::: Библиотеки
- https://github.com/avelino/awesome-racket
- https://pkgs.racket-lang.org/
::: Среда разработки
- DrRacket :: https://docs.racket-lang.org/drracket/
- Online :: https://www.jdoodle.com/execute-racket-online/
{Common Lisp}
::: Учебники
- Cookbook :: https://lispcookbook.github.io/cl-cookbook/
- PCL :: http://lisper.ru/pcl/
- OnLisp :: http://www.paulgraham.com/onlisptext.html
::: Документация
- http://www.lispworks.com/documentation/HyperSpec/Front/index.htm
::: Библиотеки
- https://github.com/CodyReichert/awesome-cl
- https://ultralisp.org/
- https://lisp-journey.gitlab.io/blog/state-of-the-common-lisp-ecosystem-2020/
::: Среда разработки
- Portacle :: https://portacle.github.io/
- Остальные :: https://lispcookbook.github.io/cl-cookbook/editor-support.html
Предыдущий тред: >>2256609 (OP)
Чтобы пользоваться программами на джабе, надо jre пользователю скачивать. Хеллоу ворд будет сотни мегабутов весить! Тысячи их!
https://www.gog.com/en/game/exiled_kingdoms 170 MB вместе со спрайтами, а пользователю не пох что там жава?
Ну вот майнкрафт лагает, хотя это пиксельная игра. Джава медленная. Зачем учить медленный лисп, если есть камон лисп
Кложефанбой - оп-перекатчик 13-го (несчастливого для предыдущего опа) треда; без комментариев.
Петухонодаун - некомпетентный залетный аноним, плохо разбирается в комплюктер сайенс, разработке ПО и программировании вообще. Как правило задает глупые вопросы и пытается троллить, но посты выдают в нем школьника.
Типикал коммонлишпер - ненавидит кложу, ибо не тру лисп. Ненавидит другие ЯПы, ибо не тру лисп. Ненавидит залетных анонимов, ибо не тру лисп. Ненавидит печеньки, щеночков и Иисуса Христа, ибо не тру лисп. Ненавидит ТЕБЯ, ибо не тру лисп.
Просветленный - гомоиконность, чувак! Я так преисполнился в познании, чувак, что весь этот синтаксический сахар, чувак, мне просто до пизды, чувак! Чистое сияние вечных скобок, чувак! Если стандарт языка нельзя распечатать на одном листе и скрутить из него самокрутку, то... кстати, передай-ка мне р5рс, чувак... О чем я там, чувак?.. Охх ебать мой call/cc, чувак, вот это стандарт!
Вкатывальщик - решив последовать совету из шапки раздела скачивает SICP, ничего не понимает, скачивает слоника, ничего не понимает, идет в sicp-тред, ничего не понимает... Через некоторое время эволюционирует либо в петухонодауна, либо в просветленного.
Кабанчик - изредка заходит в тред и оставляет полтора поста про мощь языка, bottom-up проектирование, бизнес-ориентированные DSL'ы, 500%-ое увеличение time to market и генераторы динамических оперденей. Тайна его существования покрыта мраком.
Байтоеб - вкатывается в тред с единственным вопросом: "хелло ворлд на CL/racket/clojure/языкнейм занимает в памяти 15 килобайт, ВЫ ЧТО ОХУЕЛИ?! Я на няшной компилировал в 1997 году во время практики в универе хелловорлд и он занимал 14 килобайт! ЧЕ-ТЫР-НАД-ЦАТЬ!!! ВЫ ЧТО ОХУЕЛИ?!!"
Тайпоеб - вкатывается в тред с единственным вопросом: "у меня вот сейчас котик прыгнул на клавиатуру и вместо LazyAbstractOpticalEndoProfunctorHui напечаталось LazyAbstractOpticalEndoProfunctorHuii, и что бы вы думали, мне КОМПИЛЯТОР ПОДСВЕТИЛ ОШИБКУ, ха-ха, а вот вы бы следующие два дня потратили на отладку, ха-ха, а у меня КОМПИЛЯТОР ПОДСВЕТИЛ ОШИБКУ, прикиньте, ха-ха, НУ ЧТО КАК СОСЕТСЯ, ЛУЗЕРЫ?! ХА-ХА HUII ВМЕСТО HUI И КОМПИЛЯТОР МНЕ ЭТО ПОДСВЕТИЛ, ХА-ХА, СТАТИЧЕСКАЯТИПИЗАЦИЯКОМПИЛЯТОРПОДСВЕТИЛКОМПИЛЯТОРубТИПЫейтеКОМПИЛЯТОРменякТИПЫтонибКОМПИЛЯТОРудьПОДСВЕТИЛ"
Senior Developer - заходит в тред рассказать о том, почему ФП не работает в реальном мире и как он автоматизировал выгрузку налоговой отчетности из 1С в сайт на вордпрессе, за что ему повысили зарплату до 50к (серыми), и как он уже купил жигу, пока задроты тут сидят и дрочатся со своими лишпами-хуишпами.
Нормальный человек - заходит в тред спросить совета по сабжу. Зашел на двач ты, ищешь советов мудрых; сосни-ка хуйца. Перекатывается в реддит\слак.
Кложефанбой - оп-перекатчик 13-го (несчастливого для предыдущего опа) треда; без комментариев.
Петухонодаун - некомпетентный залетный аноним, плохо разбирается в комплюктер сайенс, разработке ПО и программировании вообще. Как правило задает глупые вопросы и пытается троллить, но посты выдают в нем школьника.
Типикал коммонлишпер - ненавидит кложу, ибо не тру лисп. Ненавидит другие ЯПы, ибо не тру лисп. Ненавидит залетных анонимов, ибо не тру лисп. Ненавидит печеньки, щеночков и Иисуса Христа, ибо не тру лисп. Ненавидит ТЕБЯ, ибо не тру лисп.
Просветленный - гомоиконность, чувак! Я так преисполнился в познании, чувак, что весь этот синтаксический сахар, чувак, мне просто до пизды, чувак! Чистое сияние вечных скобок, чувак! Если стандарт языка нельзя распечатать на одном листе и скрутить из него самокрутку, то... кстати, передай-ка мне р5рс, чувак... О чем я там, чувак?.. Охх ебать мой call/cc, чувак, вот это стандарт!
Вкатывальщик - решив последовать совету из шапки раздела скачивает SICP, ничего не понимает, скачивает слоника, ничего не понимает, идет в sicp-тред, ничего не понимает... Через некоторое время эволюционирует либо в петухонодауна, либо в просветленного.
Кабанчик - изредка заходит в тред и оставляет полтора поста про мощь языка, bottom-up проектирование, бизнес-ориентированные DSL'ы, 500%-ое увеличение time to market и генераторы динамических оперденей. Тайна его существования покрыта мраком.
Байтоеб - вкатывается в тред с единственным вопросом: "хелло ворлд на CL/racket/clojure/языкнейм занимает в памяти 15 килобайт, ВЫ ЧТО ОХУЕЛИ?! Я на няшной компилировал в 1997 году во время практики в универе хелловорлд и он занимал 14 килобайт! ЧЕ-ТЫР-НАД-ЦАТЬ!!! ВЫ ЧТО ОХУЕЛИ?!!"
Тайпоеб - вкатывается в тред с единственным вопросом: "у меня вот сейчас котик прыгнул на клавиатуру и вместо LazyAbstractOpticalEndoProfunctorHui напечаталось LazyAbstractOpticalEndoProfunctorHuii, и что бы вы думали, мне КОМПИЛЯТОР ПОДСВЕТИЛ ОШИБКУ, ха-ха, а вот вы бы следующие два дня потратили на отладку, ха-ха, а у меня КОМПИЛЯТОР ПОДСВЕТИЛ ОШИБКУ, прикиньте, ха-ха, НУ ЧТО КАК СОСЕТСЯ, ЛУЗЕРЫ?! ХА-ХА HUII ВМЕСТО HUI И КОМПИЛЯТОР МНЕ ЭТО ПОДСВЕТИЛ, ХА-ХА, СТАТИЧЕСКАЯТИПИЗАЦИЯКОМПИЛЯТОРПОДСВЕТИЛКОМПИЛЯТОРубТИПЫейтеКОМПИЛЯТОРменякТИПЫтонибКОМПИЛЯТОРудьПОДСВЕТИЛ"
Senior Developer - заходит в тред рассказать о том, почему ФП не работает в реальном мире и как он автоматизировал выгрузку налоговой отчетности из 1С в сайт на вордпрессе, за что ему повысили зарплату до 50к (серыми), и как он уже купил жигу, пока задроты тут сидят и дрочатся со своими лишпами-хуишпами.
Нормальный человек - заходит в тред спросить совета по сабжу. Зашел на двач ты, ищешь советов мудрых; сосни-ка хуйца. Перекатывается в реддит\слак.
(1 2 :FOO BAR)
Как я могу достать значение BAR по ключу :FOO?
Всё правильно ругается
>property list n. 1. a list containing an even number of elements that are alternating names (sometimes called indicators or keys) and values (sometimes called properties).
У тебя произвольный список, а не plist что ли? Ну, напиши свою функцию
(defun yoba-getf (list key)
..(loop :for (x y) :on list
...........:if (eql key x) :return y))
Можешь, но список должен иметь чётное число элементов, иначе какой семантики ты ожидал от списка пар ключ-значение?
бля, это так странно говорить ТЫ ЧТО-ТО МОЖЕШЬ, когда речь про лисп, ведь по сути в лисп можно вообще все. и даже для этого есть какой-нить ебаный макрос
Этой фотке же сто лет в обед
Да, до меня допирало очень долго. Особенно мешали долбоёбы не только здешние, которые убеждали меня в обратном. Лисп компиляторы - не компиляторы. Программу на лисп нельзя скомпилировать в обычном понимании этого слова. Т.е. так, как пытался делать я.
Для Лиспа нет компилятора. Вообще то, это так, поскольку для серьезных Лисп-программ полная компиляция противопоказана - ведь в этом языке единство кода и данных поддерживается на все 100% и зачастую программа синтезируется непосредственно во время выполнения.
Да, я был слишком туп, чтобы допереть до этого самостоятельно. Никогда прежде не встречал и не понимал гомоиконичность.
http://lisp.ru/page.php?id=4
P.S. Ладно хуйню написал, так как sbcl в машинный код на выходе производит.
Нет нужды.
А что вы делаете на кожуре то? В плане производительности она же просто дно, что по цпу, что по потреблению памяти. Бизнес-логику некритичную катаете?
Нет же ни одно серьезной и уважаемой системы в JVM мире на кожуре. Уровня elasticsearсh или kafka.
Это не ты ли тот аутист, что избегал средств интерактивной разработки?
>Программу на лисп нельзя скомпилировать в обычном понимании этого слова.
https://github.com/atlas-engineer/nyxt/blob/master/nyxt.asd
(asdf:make 'nyxt/gi-gtk-application)
>Для Лиспа нет компилятора.
Есть. Разница только в том, что он является частью рантайма, а не внешним инструментом.
> Это не ты ли тот аутист, что избегал средств интерактивной разработки?
Я. Но я не избегал REPL. Я просто охуевал с того, что программу, написанную на языке программирования нельзя скомпилировать. И никто из вас, учёных в говне мочёных, не объяснил, что может быть так, что компилятор может быть не нужен. Вот в схеме компиляторы есть, поэтому я и прихуел, что что в СL так нельзя. Но вот я попробовал что-то написать и был приятно удивлен. Ясен хуй, что имакс тупая параша для быдла. Я всегда буду хуесосить имакс. Не за то, что он сложный, а за то, что он раздутый и медленный. Имакс блять термальная программа работает хуже, чем браузерное говно vscode. Но это и так было понятно, что Столлман тупой ебантяй, долбоёб и фанатик.
А твой asdfghjk; я уже обоссал. Это хуйня, а не компилятор. У CL нет компиляторов. фыва это скорее что-то типа make из мира Си.
> Есть. Разница только в том, что он является частью рантайма, а не внешним инструментом.
Но это обсосная хуйня. Нахуя мне холлоуворд в 20 мегабутов. И ты ебанутый долбоёб, если думаешь. будто это нормально. Это не нормально. Рантайм блять. Это не jvm, чтобы таскать с собой всю хуйню. Если ты не ебанько, то твой компилятор должен выдавать только машинный код, относящийся к алгоритму работы программы, а не в хуй дуть. В хуй дуют только пидоры. лисп не для пидоров, это раст для пидоров
Я вообще бляя теряяюсь. Лисп это загадка нахуй. Я будто встретил ебанько-тян и вот втюрился в нее, а она вот такая вот. ССижу пержу, разгадываю тайны ее глубокой натуры. Так же и лисп. Мне говорят иди наххуй, а я ввсе равно сижу и думаю про лисп. Просто вы бля ходите как говном намазанные, для вас лисп диковинка. Хуй проссышь, но для буду по факту отвечаю, тут ебать ли найдется реально тру LISP HACKER. А вот именно такие люди с горящими глазами и нужны, чтобы объяснять лисп. Ни в коем случае не продвигать и не пропагандировать. Лисп должен оставаться граалем, а не как питон. Питон знает каждый вкатыш-скуф. Так и я только питон знаю. Но я начал учить еще до всего этого. А вот лисп это писечка, это вещь нишевая. Это для себя.
Я не ебанутый, я просто очень долго искал что-то особенное. Я пробовал nim, v, vala, но лисп это что-то другое совсем. Это что-то, что кажется по-насстоящему правильным. Это как когда тебя трахнули в жопу, а тебе даже понравилось. вот и тут также.эя забыл нахуяя я это писал я просто пьяны чуктк
> Это не ты ли тот аутист, что избегал средств интерактивной разработки?
Я. Но я не избегал REPL. Я просто охуевал с того, что программу, написанную на языке программирования нельзя скомпилировать. И никто из вас, учёных в говне мочёных, не объяснил, что может быть так, что компилятор может быть не нужен. Вот в схеме компиляторы есть, поэтому я и прихуел, что что в СL так нельзя. Но вот я попробовал что-то написать и был приятно удивлен. Ясен хуй, что имакс тупая параша для быдла. Я всегда буду хуесосить имакс. Не за то, что он сложный, а за то, что он раздутый и медленный. Имакс блять термальная программа работает хуже, чем браузерное говно vscode. Но это и так было понятно, что Столлман тупой ебантяй, долбоёб и фанатик.
А твой asdfghjk; я уже обоссал. Это хуйня, а не компилятор. У CL нет компиляторов. фыва это скорее что-то типа make из мира Си.
> Есть. Разница только в том, что он является частью рантайма, а не внешним инструментом.
Но это обсосная хуйня. Нахуя мне холлоуворд в 20 мегабутов. И ты ебанутый долбоёб, если думаешь. будто это нормально. Это не нормально. Рантайм блять. Это не jvm, чтобы таскать с собой всю хуйню. Если ты не ебанько, то твой компилятор должен выдавать только машинный код, относящийся к алгоритму работы программы, а не в хуй дуть. В хуй дуют только пидоры. лисп не для пидоров, это раст для пидоров
Я вообще бляя теряяюсь. Лисп это загадка нахуй. Я будто встретил ебанько-тян и вот втюрился в нее, а она вот такая вот. ССижу пержу, разгадываю тайны ее глубокой натуры. Так же и лисп. Мне говорят иди наххуй, а я ввсе равно сижу и думаю про лисп. Просто вы бля ходите как говном намазанные, для вас лисп диковинка. Хуй проссышь, но для буду по факту отвечаю, тут ебать ли найдется реально тру LISP HACKER. А вот именно такие люди с горящими глазами и нужны, чтобы объяснять лисп. Ни в коем случае не продвигать и не пропагандировать. Лисп должен оставаться граалем, а не как питон. Питон знает каждый вкатыш-скуф. Так и я только питон знаю. Но я начал учить еще до всего этого. А вот лисп это писечка, это вещь нишевая. Это для себя.
Я не ебанутый, я просто очень долго искал что-то особенное. Я пробовал nim, v, vala, но лисп это что-то другое совсем. Это что-то, что кажется по-насстоящему правильным. Это как когда тебя трахнули в жопу, а тебе даже понравилось. вот и тут также.эя забыл нахуяя я это писал я просто пьяны чуктк
>CL нет компиляторов
sbcl, маня. Также Лисп - это семейство языков, а не только CL. Поэтому твои лиспы можно даже в embedded использовать.
https://www.sbcl.org/
>Steel Bank Common Lisp (SBCL) is a high performance Common Lisp compiler.
>Сайт разрабов
>забор
Ясно, зеленый долбоеб с двача конечно же лучше знает, что получилось у автора программы больше самого автора.
Ну пиздец ты аутист, создаешь себе проблемы там, где их нет. Как тот селюк, которому дали бензопилу вместо обычной, а он жалуется, что не пилит, а заводить он её не собирается, потому что другие пилы и так пилили, а бензин вообще для быдла.
Как описывать asdf-систему приложения и как его собирать в привычном для сишника понимании - я тебе показал. Пиздуй разбираться или прекращай срать в тред.
Тебя же ещё в прошлом треде ебалом в факты >>2389316 →
тыкали, ты зачем опять копротивляешься?
>Программу на лисп нельзя скомпилировать
Аллах запретил?
Петухонодаун, угомонись, оставь этот свой вброс в прошлом треде.
>В плане производительности она же просто дно
Быстрее руби и питона, ты ведь уже переписал все с руби и питона на раст?
>Нет же ни одно серьезной и уважаемой системы в JVM мире на кожуре.
Весь бэкенд обработки данных о покупках у волмарта, весь бэкенд нюбанка (это как тинькоф, только бразильский).
>Уровня elasticsearсh или kafka.
Storm? Ну и circleCI кстати.
>Быстрее руби и питона
Слабо в это верится. Кложа медленнее явы в несколько десятков раз, это как раз уровень питухона.
К тому же, тормоза последнего компенсируются обертками над сишными либами, коих достаточно на все случаи жизни, а руби без рельсов никому нахуй не нужен хотя язык хороший
>Весь бэкенд обработки данных о покупках у волмарта, весь бэкенд нюбанка (это как тинькоф, только бразильский).
Это не показатель. Вебпарашные круды и на пэхэпэ прекрасно работали и работают. А он ещё и странички генерирует, а не только жисон отдаёт.
>Это не ты ли тот аутист, что избегал средств интерактивной разработки?
Нет, не он. Я вообще выкатился из треда, потому что ИРЛ и крестомакакинг.
Потому что соевых смузихлёбов и трансснежинок нет, а остальных токсичная атмосфЭра не задевает.
Да я не про это. Мне как-то всё равно на т н "язык ненависти" и плохие словечки. Но я всегда когда вещаю, то стараюсь, чтобы было
матюки и оскорбления < посыл, идея, информация
А обычно в лисперских кругах получается, что
тупой пиздеж, надутая ирония, нытьё, оскорбления > какая-то полезная информация
У нас такого нет, но обычно прибавляется лютый дроч на имакс и как мантру тебе объясняют раз за разом, какую программу выбрать. (имакс) Каким файлообменником пользововаться (имакс). И так далее (имакс).
ПО никто не пилит. Кажется, что лисп учат чисто чтобы обоссать другие языки и выёбываться знанием лиспа. А когда кто-то реально заикнулся про то, что хочет использовать лисп, тут труба иронии прорывается и наивного анона смывает с головой
> - PCL :: http://lisper.ru/pcl/
Этот всё. Там уже какие-то кабанчики подсуетились и спиздили домен.
С руби и питона переписывают часто на ноду/TS, которая тоже спокойно разъебывает кожуру по производительности и потреблению памяти.
Ну братан, так-то не толстил, все так и есть, слой динамических абстракций очень тяжелый и за это надо плотить. И JVM не могет это нормально оптимизировать, а если сюда добавить еще иммутабельность и прочую фп-шизу, то это просто перфоманс-анус, с которым вообще нихуя не сделать.
Больше всего кложу разъёбывает количество макак, которые смогут нанять за те же деньги(а значит нанять меньше, впарив джуна по цене синьёра)
Якой такой "слой динамических абстракций"? Это https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/PersistentArrayMap.java ? Обычный жабакод, видали и похуже.
Ничуть не толстил. На стековерфлоу про кложуру дохуя вопросов "бля, а хули так медленно". Настолько дохуя, что можешь из них фортунки сделать. И практически всегда там дцатикратное отставание от джавы. И практически всегда в ответах появляется клоун, который предлагает использовать интероп, чтобы срать, не снимая свитер.
>тупой пиздеж, надутая ирония, нытьё, оскорбления > какая-то полезная информация
Мальчик, а ты как вообще на этот сайт попал?
Зачем тебе куча макак, когда можно нанять одного лиспера уровня Никитонского, который за неделю сделает тебе все по красоте? Это не джава какая-нибудь, где ты только первые полтора-два года будешь MVP пилить, а потом еще месяцев 8 рефакторить, чтобы оно хоть какую-то нагрузку держало и не сбоило по кд.
Это значит, что кожуристы сами макаки, только более дорогие. Ведь решают задачи макак и варяться в той нише: рестухи, банковские залупени, итд перекидывание жсона. Нет такого, что нанимают кожуристов писать какие-то сложные телеком системы, базы данных или элементы инфраструктуры. Все задачи абсолютно примитивные и макаковские, которые могут за более дешево наклепать те же питонисты или нодеры.
а) потому-что не сделает за неделю
б) когда таки сделает, это будет ультра-тормозная залупа
в) реально прошаренные и талантливые кодеры не будут опускать до задач макак. им это просто не интересно, это так не работает
>ПО никто не пилит. Кажется, что лисп учат чисто чтобы обоссать другие языки и выёбываться знанием лиспа. А когда кто-то реально заикнулся про то, что хочет использовать лисп, тут труба иронии прорывается и наивного анона смывает с головой
Вот поэтому ты заходишь в этот тред только один раз.
Получаешь ушат говна и оставляешь "знающию людей" знать то, что они "знают". А потом пиздуешь писать на лиспе так, как тебе нравится. Ну, или как выражаются здесь: "Есть ножом суп". Тащемта нормально кушается.
> ПО никто не пилит.
> лютый дроч на имакс
я пилю. замену имаксу. будет нескоро, но вы все охуеете.
нет, на сатанинском борщелиспе
да я в курсе про лем и про климакс, но оно все говно, потому-что они косплеят имакс и имакс - говно. я дрочил на него поначалу, но переписывать имакс со всеми его охуитительными решениями и уебанской архитектурой с фаллософией буферов - это нужно быть долбоебом. но я же не долбоеб, не так ли?
не охота пока много рассказывать. ну это, знаешь да, проще разрабатывать втихоря, хотя бы базу и фундамент, где я определяюсь с базовыми конструкциями. просто скажу что смена языка далеко не самая главная фича, меня больше интересуют конкретные приложения ради которых я это все затеял, и шоб оно все было кастомизируемо дохуя.
ты спросишь зачем тогда я написал что пилю замену но при этом не хочу о ней ничего рассказывать - да хуй знает, прост захотелось.
>потому-что они косплеят имакс и имакс - говно
Если емакс - говно, то почему его косплеят даже хипсторы? Сублайм, атом, вскод
Твой личный опыт?
Эклипса вон в свое время нажевались, многих до сих пор от трех букв IDE в холодный пот бросает
Общечеловеческий это опыт. И весьма бытовой. Если тело наотказ не отторгает говно, то оно к нему привыкает, а потом даже может быть начинает вахтерить в ирке и защищать его всеми правдами и неправдами. С эклипсом видимо у всех было отторжение. Фанбоев у имакса достаточно, но даже опытные в упор не видят настоящих проблем имакса. У них спроси какие в емаксе проблемы, они тебе скажут, юзабилити, лучше дефолты, всякая дристня короче вроде вида кнопок. Я это не придумываю, с год назад был тред в мейлинг листе мол как улучшить имакс, там все примерно этим и ограничилось. Ну то есть проблем у имакса нет, но почему-то все идут на вскод. Охуительно, на правда ли?
Правильный ответ, и там нихуя об этом никто не написал: наконец нужно понять что буфера - это зло, что елисп код всегда почему-то - говнокод (внезапно) и что даже какие-то базовые хотелки кастомизации занимают уйму времени, а потом выбросить имакс нахуй и запилить наконец что-то дельное. Естественно на нормальном диалекте. Всех смущает мол миллиард пакетов, как же так, как же мы их заменим, О ГОСПОДИ СПАСИТЕ, на что я отвечают четко и ровно: их мы тоже отправляем без почестей в ёбаную буржуйку. Переосмысляем жизнь и пилим все с нуля, в этот раз Как Надо (ТМ).
> Сублайм, атом, вскод
мне просто интересно, но как именно они косплеили имакс? те же плагины были и у вима, например, и он гораздо распространеннее сабжа.
>У них спроси какие в емаксе проблемы, они тебе скажут, юзабилити, лучше дефолты, всякая дристня короче вроде вида кнопок.
Я с ними согласен. Емаксу в первую очередь переработка интерфейса нужна. Впрочем, doom и spacemacs отчасти эту проблему решают.
А в остальном, JIT уже завезли, елисп практически эволюционировал в борщелисп. Многопоточность бы ещё добавить и ffi.
>Ну то есть проблем у имакса нет, но почему-то все идут на вскод.
Потому что тот привычнее и дружелюбнее к нюфагам. Очевидно же.
>Правильный ответ, и там нихуя об этом никто не написал: наконец нужно понять что буфера - это зло
Чем они тебе не угодили? Какую сущность предлагаешь взамен?
>елисп код всегда почему-то - говнокод (внезапно)
Если сравнивать расширениями на жс для того же атома, то понимаешь, что бывает намного хуже.
> Сублайм, атом, вскод
>мне просто интересно, но как именно они косплеили имакс?
Программируемые редакторы. Тот же сублайм отличается только питоном вместо елиспа, более привычными хоткеями в редакторе, более приятным внешним видом и расположением минибуфера. И ЕМНИП тем, что у него буферы исключительно текстовые.
>те же плагины были и у вима, например, и он гораздо распространеннее сабжа.
В vi их не было, добавили уже в vim. И угадай, чем вдохновлялись. И тот факт, что большинство его расширений портировано с емакса, это подтверждает.
> Потому что тот привычнее и дружелюбнее к нюфагам. Очевидно же.
Очевидно же что это не так. Вот смотри, за сколько там, 40 лет?, никто не запилил дружелюбный и привычный интерфейс для ньюфагов на всемогущей платформе. Тебе не кажется это как минимум странным? Или может платформа не такая уж и всемогущая?
> Чем они тебе не угодили? Какую сущность предлагаешь взамен?
в двух словах сложно все сформулировать. как выкачу, так запилю статьи.
> В vi их не было, добавили уже в vim. И угадай, чем вдохновлялись
интересно, не знал
> привычнее и дружелюбнее
ну всмысле да, конечно они популярны из-за того что там можно мышкой накликать себе весь компот и вот ты уже вкатился за 3000кк в секунду, но я к тому что в емаксе такого не запилили и не запилят, потому-что емакс как платформа не состоятельна для серьезных и продвинутых приложений (даже текстовых) и в этом его реальная проблема. так же ты в нем можешь сделать любую хуйню, но она объективно выест тебе мозг прежде чем ты заставишь ее нормально работать, это тоже проблема.
> ты в нем можешь сделать любую квадратно-гнездовую хуйню, но даже она выест тебе мозг
быстрофикс
> Мальчик, а ты как вообще на этот сайт попал?
С лурки фото_рак_.bmp
>>398994
> имакс - говно
This. А еще я охуеваю с людей, которые реально искренне любят имакс. Хотя бы за это убожество Столлману надо поломать руки. И то, что имакс - платформа разработки под лисп де-факто это просто пиздец. Причем чтобы сделать нормальную среду разработки лисп не надо ловить звёзд с неба, все пункты и так понятны. Буквально что и как делать - первое, второе, третье. Но лисперы любят жрать говно. Nuff said
> хотя бы базу и фундамент
Логично было бы пилить на CL, но как показывает практика, даже веб-говно вскод быстрее парашного имакса. Так что даже если писать лисп код в браузере, то это будет лучше, чем что либо еще
Хотя я не уверен, что под CL есть нормальные удобные графические библиотеки. Даже если и есть не факт, что они живы
> И то, что имакс - платформа разработки под лисп де-факто это просто пиздец.
ага
> Хотя я не уверен, что под CL есть нормальные удобные графические библиотеки. Даже если и есть не факт, что они живы
ну вот этим я и занят для начала - CL гуи либой. ибо что есть - либо мертво, либо говно, но это, того... есть чем вдохновлятся. будет без хуйни, без вэбни, без говна, все по-человечески. делаю для себя по сути. а то чувствуешь себя обезьяной какой-то среди гор говна, равнин мусора, как персонаж зеленого слоника, как ебанавт. первопроходцы айти, мать его за ногу, и главное всем похуй, все привыкли, у них и все заебись, ну или органы чувств стерлись в труху, хуй их знает. пойду халвы наверну.
>никто не запилил дружелюбный и привычный интерфейс для ньюфагов на всемогущей платформе.
Некому было. Откуда взяться дизайнерам в попенсорсе?
Это потом, когда хипстота выкатила свой недоемакс, стали представлять, как должен выглядеть нормальный интерфейс. После этого и появился spacemacs, а за ним и doom.
> потому-что емакс как платформа не состоятельна для серьезных и продвинутых приложений (даже текстовых)
Да вот нихуя, а в точности до наоборот. Именно потому его все и копируют, что емакс - такая продвинутая платформа и под него написано много крутых вещей, от некоторых охуевают даже за пределами сообщества (org-mode, например). Под хипстоту типа вскода/атома никогда столько не напишут, но не потому что они как платформа хуже, а потому что порог входа ниже и соответственно сообщество более аморфное.
>Нет же ни одно серьезной и уважаемой системы в JVM мире на кожуре.
>>Есть, вот
>Это не показатель
По потреблению памяти +- одинаково (шо то говно, шо это, но кожура хотя бы дает тебе нормальный высокоуровневый язык взамен за производительность). Алсо ты можешь писать на кложурце под ноду как бы.
Алсо "переписывать с питона на жс" - это просто квинтэссенция (известной части) современной индустрии разработки ПО.
>сложные телеком системы
Банковский сектор - то же самое.
>базы данных
datomic
>или элементы инфраструктуры
Storm уже выше кидали.
Короче приходи через месяц, попробуешь потоньше.
>они косплеят имакс
Они это делают не по прихоти, а чтобы переиспользовать гигатонны уже написанного под него кода, очевидно же.
>и уебанской архитектурой с фаллософией буферов
Уже было десять лет назад (lighttable). Алсо ты говоришь "буферы" как будто это что-то плохое.
Речь о производительности шла. Ну и
>вебпарашные круды
>серьёзные и уважаемые системы
желтый_блинчик.жпг
>но почему-то все идут на вскод
Потому что вскод делает и пиарит одна из крупнейших в мире корпораций, а не рандомный анон с харкача, ну камон. Плюс юзабилити и дефолты для среднего макакена.
>Переосмысляем жизнь и пилим все с нуля
Никогда такого не было и вот опять!
>никто не запилил дружелюбный и привычный интерфейс для ньюфагов
Spacemacs как бы оно и есть. Кроме него еще тыщи специализированных каштомных сборок были, типа чисто органайзер, чисто редактор для писателей-непрограммистов, чисто идешка для %языкнейм%. Просто это никому нахуй ненужно.
>Хотя бы за это убожество Столлману надо поломать руки.
Он его запилил в 80-ых, до сих пор все пытаются с разной степенью успешности его копировать, буквально все - от браузеров до ДЕ.
Я понял, ты просто не понимаешь, о чем вообще речь. Ладно, считай, что ты меня затроллил, я качусь дальше.
Всем похуй на 3.5 негродебилов, если это твой эхочамбер - вылазь скорее.
> . После этого и появился spacemacs, а за ним и doom.
ага, вот только лучше от этого не стало лул, ну разве что вкатиться легче кому-то, да.
>>399453
> Да вот нихуя, а в точности до наоборот.
а вот нихуя да нихуя. то что емакс всемогущ - это мантра заядлых завсегдатаев ИХНЕГО мейлинг листа, ничего слаще редьки не жрали. орг-модом я пользуюсь уже много лет и считаю его дерьмом. один из лучших сортов дерьма что есть, но все равно дерьмо. орг-мод - одна из вещей которые открыли мои глаза на всю реальную убогость емакса. вот ты говоришь орг мод охуенен, а я говорю что он уже встретил свой потолок и как-то радикально лучше сделать его не смогут. ты смотришь в прошлое, а я смотрю в будущее. когда у тебя скопится собственный список хотелок для емакса и орг-мода (хотя бы такой который нужно листать что бы весь прочитать), ты наверняка придешь к таким же выводам что и я, потому-что поймешь что все из этого списка делается через жопу, или вообще не очевидно как делается.
а то что миллион мух там что-то копируют меня мало интересует. щенячий восторг затмил им мозг, они не способны не копировать.
блять, пацаны, это может не очевидно, но я люблю емакс на самом деле. я понимаю почему он крут и почему люди его защищают. поделия на электроне конечно же лютой сранью считаю. но еще я понимаю что у емакса есть ебические такие недостатки (фатальные, десу), к сожалению, неисправимые. и сообщество будет заниматься байкшеддингом, будет дрочить вприсядку прежде чем признать что они долбоебы, что они уперлись в потолок и что пора бы переосмыслить чем на самом деле должна быть такая платформа. вот и все.
>>399544
>> Переосмысляем жизнь и пилим все с нуля
> Никогда такого не было и вот опять!
я еще не видел никакого переосмысления нигде.
> Потому что вскод делает и пиарит одна из крупнейших в мире корпораций
ну типа и это тоже решает. только они не перетянут реальную аудитория емакса, людей которые понимают и ценят его мощь.
>>Весь бэкенд обработки данных о покупках у волмарта
>ты просто не понимаешь, это не говнокруд, ЕТО ДРУГОЕ
Да-да, давай, катись
> Они это делают не по прихоти, а чтобы переиспользовать гигатонны уже написанного под него кода, очевидно же.
Ну да. Но какая разница сколько там гигатонн кода, если он - говнгокод? А говнокод он из-за убогой архитектуры.
> (lighttable)
у этих были какие-то правильные мысли, жаль они жс уебки без сознания
> буферы" как будто это что-то плохое.
не столько плохое сколько злое. их хватает ровно настолько что бы валяться ленивым хуйлом в грязи и быть довольным свинтусом, но многим недостаточно что бы просто сказать "заебало".
>ага, вот только лучше от этого не стало лул
Объективно стало намного лучше. И гуй причесали, и хоткеи разных пакетов к общему виду привели, и конфиг системой модулей организовали, и дефолт хороший собрали, и порог входа снизили.
>один из лучших сортов дерьма что есть, но все равно дерьмо.
Да я уже понял, что ты слишком хорош для этого мира.
>ты смотришь в прошлое, а я смотрю в будущее
Пока что ты только беспочвенно поливаешь говном.
>когда у тебя скопится собственный список хотелок для емакса и орг-мода (хотя бы такой который нужно листать что бы весь прочитать)
Список в студию.
То-то у нас дохуя де со встроенными психотерапевтами, дохуя браузеров на лисп, в каждой де ебанутые хотеки, а хром и лису вот-вот переведут на монопоточность. Кстати, разрабов nano долго хуесосили, что их редактор весит слишком мало, ведь любому имаксеру понятно, что редактор должен весить минимум 100500 мегабутов, должен уметь варить кофе и иметь свой собственный язык программирования для кофигов. Настоящие тру программисты знают,что если от редактора нельзя получить защемление нервов в руках от горячих клавиш, то такой редактор не тру и говно. Имакс по-настоящему показал уровень качества софта
> Да я уже понял, что ты слишком хорош для этого мира.
нет, просто емакс слишком хуев для меня
> Пока что ты только беспочвенно поливаешь говном.
очень почвенно, но что бы раскрыть суть нужно много и долго писать. а в двух словах мне не интересно. да я и не пытаюсь кому-то что-то тут доказать.
> Список в студию.
а что он тебе даст? мне он даст геморрой потому-что ты будешь уточнять пункты, а потом предлагать методы решения и кукурекать мол это не невозможно. и что, у тебя своего списка нет? ты емаксер вообще такие реквесты делать?
>очень почвенно, но что бы раскрыть суть нужно много и долго писать
Да ты уже накатал несколько стен голословщины и не смог родить ни единого аргумента.
>> Список в студию.
>а что он тебе даст?
Всё с тобой понятно. В следующий раз готовься лучше.
>>399577
И судя по всему, ты не разбираешься в терминологии. Буфер - не то, что ты думаешь. Это просто контейнер для текста/изображений/виджетов.
> Буфер - не то, что ты думаешь. Это просто контейнер для текста/изображений/виджетов
Подкинул писю в твой буфер ня
мимо
Маня, я знаю что такое буфер. И мне похуй что тебе там понятно. Я тебе прямо сказал что я сюда не пришел что-то тебе доказывать, хуле тебе еще надо?
Почему-то фанбои сильно оскорблаются когда критикуешь их любимый софт. Я пришел чисто по фану полить говном имакс, услышать мнения окружающих, но всегда находится аутист которые требует аргументов, верещит про какую-то хуйню, думает что ему кто-то что-то должен.
>когда критикуешь их любимый софт
>критикуешь
Значение знаешь? Я из тебя критику чуть ли не клещами вытягивал, а ты так ничего и не смог родить. Какой-то совсем беспомощный тролль
Да отъебись уже, аутист блять лол.
>критикуешь их любимый софт
>находится аутист которые требует аргументов
А критика без аргументов это случаем не contradictio in adjecto? Так-то у тебя в постах проглядывается лишь неразвернутое личное нытье.
https://mailman.common-lisp.net/pipermail/cdr-cvs/2009-January/000000.html
> The Jews of Israel are simply being Jews. Jews are an existential threat to the human race.
база
> Next time, you hear someone say, “God tells us that we must support Israel” you will have the clear Christian answer that just the opposite is true!
но вообще капитанская портянка
Успокойся уже, маня. Дураку не объяснишь, а умный сам все поймет.
Если ты используешь емакс достаточно долго, ты сам придешь к выводам к которым пришел я.
Если ты залетный, мне нехуй тебе что-либо доказывать.
Но без шуток, я просто не хочу сейчас ввязываться в споры и не охота ничего доказывать шизам. Что бы все объяснить и показать альтернативу, придется дохуя писать, но лучше я это напишу в подобающем формате, а не здесь.
для реалистов. при чем тут политика?
Использую емакс пять лет, в буферах не вижу ничего плохого. Что я делаю не так?
пацаны, загляните через годик где-то, я все распишу, уже с кодом и примерами
не бугуртите сильно что похож на жир, я не жир
прост зашел потыкать палочкой местный народ
>Что я делаю не так?
Тоже не знаешь, что такое буфер. Это просто объект, представляющий документ в памяти редактора. В каждом редакторе есть подобная сущность.
>я еще не видел никакого переосмысления нигде
Тогда тебе нужно для начала заняться рисерчем prior art'а.
>>399577
>Но какая разница сколько там гигатонн кода
Подумой, и ты узришь ответ.
>>399606
>То-то у нас дохуя де со встроенными психотерапевтами
Ты не поверишь... впрочем, лень даже печатать тебе ответ...
>редактор весит слишком мало, ведь любому имаксеру понятно, что редактор должен весить минимум 100500 мегабутов
...потому что ты очередной убогий шизик с зекача.
> Тогда тебе нужно для начала заняться рисерчем prior art'а.
то есть переосмысления как такогого не было? ну так покажи если было.
> Подумой, и ты узришь ответ.
я уже узрел, братишка
то, что надписи на немецком придаёт особый шарм
Хорошо, через год ждём от тебя ссылку в очередном лиспотреде
У него очень своеобразный код. Настолько, что я бы сказал, это (((их))) война против хаскеля.
установился только с пятого раза без ошибок
чтобы сохранить настройки зума(шрифта) надо ебаться с конфиг файлами ебаными в которых чёрт ногу сломит
действительно, почему лисп не популярен, наверное потому, что прежде чем начать что-то делать надо получить докторскую степень по емаксу и пердольке этого говна
ну да, не осилил текстовый редактор и что ты мне сделаешь?
>документированный конфиг на 20 строк
>ебаться
>чёрт ногу сломит
Ну, что тут сказать, спасибо емаксу, что бережет наше уютненькое сообщество от всякого быдла.
элитка порвалася
так с дедлайном я другой мелкобуквенный : ( ну и я сам емаксер-говноед (ну, пока-что).
>>402016
в емаксе для этого типа придумали custom-set для всякой хуйни вроде смены шрифта из-за которой не охота лезть в .emacs самому, хотя как по мне весьма дубовый механизм которым далеко не все пользуются и лучше сразу учиться лезть в конфиг и писать
https://stackoverflow.com/questions/294664/how-to-set-the-font-size-in-emacs
вот ты не осилил дефолт, взял спейсмакс, думал всех наебал, да? так вон у спейсмакса свои переменные для шрифта, такие дела:
https://stackoverflow.com/questions/37042419/how-easily-change-font-size-in-spacemacs
Ты обосрался.
>Банковский сектор - то же самое.
Во-первых не то же самое. По большей части это кучи смрадных рестух, перемотанных ESB. Во-вторых что ты, блядь, вообще несешь, банковский сектор в основном на жабе, там кожуру использует буквально полторы конторы.
>datomic
Это довольно маргинальная хуйня, которую практически никто не использует. Она даже не опенсорс, чтобы можно было более подробно взглянуть на продукт. Т.е. ничего уровня cassandra или elastic нет.
>Storm уже выше кидали.
Ты продолжаешь серить под себя, шторм на жабе переписан.
https://storm.apache.org/2019/05/30/storm200-released.html
>In previous releases a large part of Apache Storm's core functionality was implemented in Clojure.
>The new Java-based implementation has improved performance significantly
Не тормозит! Твердо и четко!
>and made Apache Storm's internal APIs more maintainable and extensible
На яве? Более гибкий и поддерживаемый? Кек
> While Apache Storm's Clojure implementation served it well for many years, it was often cited as a barrier for entry to new contributors. Apache Storm's codebase is now more accessible to developers who don't want to learn Clojure in order to contribute.
Неосиляторы победили
победил рыночек, никто не будет нанимать свитер, когда на рынке полно жабомакак всех сортов
Макака, спок. Ты этими манёврами никак не отвлечёшь внимание от корня проблемы - на кожуре нельзя писать сложные системы, хоть как-то требовательные к нагрузкам. Физически невозможно.
В эффективном решении одного узкого класса задач.
на винду
только те, что сами пробовали, чтобы вот просто установил и сразу работало
Никаких нет. Гуглить когда научишься, сучонок? https://lispcookbook.github.io/cl-cookbook/editor-support.html
Ну неси ссылку пруф. В интренетах много что пишут, чисто логически это выглядит брехней - граалВМ не дает особо существенного прироста.
Пишет о разработке игры на борщелиспе.
Пилит-то давно, но статью выкатил недавно
На пример не обращайте внимания, это просто с чем я столкнулся, думаю так будет со всеми более сложными вложенными списками. Без негатива, я просто пытаюсь разобраться.
Используют paredit, parinfer или один из сотней их аналогов.
Кстати, для большинства циклов do не очень удобен, рекомендую loop или iter
>>406470
Вы походу не поняли, в чём вопрос.
Моя проблема в том, что в какой-то момент вложенность достигает таких значений, что где-то в середине какого-то списка после курсора у меня накапливается столько закрывающих скобок, что я путаюсь и не могу сразу понять, как мне выйти на уровень выше.
С paredit/smartparens/т.д. не запутаешься.
https://github.com/Fuco1/smartparens/wiki/Working-with-expressions#navigation-functions
https://ebzzry.com/en/emacs-pairs/#navigation
https://www.youtube.com/watch?v=5pRxm0zXgas
К тому же, нормальные редакторы подсвечивают парные скобки и/или раскрашивают их разными цветами в зависимости от уровня вложенности.
Кек, годно, схоронил
Невозбранно удвачиваю адеквата.
>там кожуру использует буквально полторы конторы.
В частности та, которая финансирует ее разработку. Еще раз, рандомхуй говорил, что такого не бывает - я привел контрпример.
>Это довольно маргинальная хуйня
Еще раз:
>на языкнейм нет промышленных субд
>>вот же
>это другое
>шторм на жабе переписан
Я в курсе - это произошло уже после того, как он взлетел, так как оригинальные разрабы его сдали в утиль апачи фаундейшен, а у них только толпа жаба-кодеров. Тащем-то это классика лиспа же (и кложурец тут видимо не исключение): команда пилит продукт, он взлетает, команда уходит пилить новый продукт, старый отдают толпе мартышек ПРОМЫШЛЕННЫХ ИНТЕРПРАЙС ИНЖЕНЕРОВ на поддержку.
>на кожуре нельзя писать сложные системы, хоть как-то требовательные к нагрузкам. Физически невозможно.
А мир кстати схлопнулся в сингулярность. Физически схлопнулся.
Перед тем, как заходить в этот тред, надо включать мозг. Те, кто этого не делают, будут посланы нахуй быстрее, чем они успеют сказать "не понял".
Никакие, сижу в треде в зекаче только ради троллинга и ощущения интеллектуального превосходства.
1. Как у лиспа (CL, SBCL) с многопоточностью?
2. Как у лиспа с битовыми операциями?
Допустим, появилась идея написать что-то типа irc-сервера или proxy-сервера. Насколько возможно будет это реализовать на лиспе? Вот эти вот обслуживания множества клиентов и формирование IP-пакетов?
Меня больше интересует то, насколько это будет целесообразно и удобно. Т е живое объяснение от кого-то с опытом в таких вещах
ну тогда тебе в мэйлрассылки/слаки надо идти, язык полумёртвый, спецов мало, а уж на дваче под узкую тему тем более
Так, блядь, почему нету норм дебага в гайле, мне, блядь, чё в ракет укатываться, и ставить порашный редактор сука? Вы охуели?
На форче активно обсуждают лисп. Хули вы тут все такие мёртвые, я не ебу. Вообще лисп заебись язык, но жаль, что для него не существует нормального IDE
Именно лисп? Чё, правда? Не ООО ДАААА REPL ЕЕЕЕЕ @ БЕЗ НЕГО ЛИСП ДЫРКА ОТ БУБЛИКА!
>1. Как у лиспа (CL, SBCL) с многопоточностью?
https://lispcookbook.github.io/cl-cookbook/process.html
Если кратко, то в ansi не было, но bordeaux-threads стал де-факто стандартным api для потоков и поддерживает все реализации.
>2. Как у лиспа с битовыми операциями?
В стандарте есть средства для байтоёбства
http://www.lispworks.com/documentation/HyperSpec/Body/c_number.htm
Смотри ldb dpb, boole, log* и т.д.
Также обрати внимание на библиотеки nibbles и lisp-binary
>Насколько возможно будет это реализовать на лиспе?
Возможно, почему нет-то? На лиспе и вебсервера пишут, и есть среди них достаточно шустрые (например, woo).
>и формирование IP-пакетов?
Ты tcp/ip велосипедить собрался что ли?
> First appeared 2005; 17 years ago
Ебать перспектива. Это такой же язык для обкатки фп-фич для нормальных языков.
>F#
Говно. Это такая кложа из мира дотнета и ML, додиез в овечьей^WнедоOCaml'ной шкуре для завлечения юнцов с горящими глазами на унылую галеру кровавого интерпрайза.
> для завлечения юнцов с горящими глазами на унылую галеру кровавого интерпрайза
Нахуй их завлекать и кому потом поддерживать это говно?
и что плохого в кровавом энтерпрайзе? ты никогда не пользовался продуктами этого кровавого интерпрайза или услугами тех, кто ими пользовался? пчёлы против мёда
Это как коммунизм не взлетел - хотели как лучше, а вышел пиздец.
Люди ещё не готовы к скобочкам.
Из минусов тулинг хоть и нормальный, но никогда не будет таким же, как у c#, у мс он не на первом, не на втором и не на третьем и т.д. месте по приоритетам, кривая обучения такая, что полно туторов по стартовому синтаксису и всё, дальше сам ебись, выискивай и всё такое. Подойдёт только тем, кто уже знаком с .net, куча туторов для перехода из c#, т.е. по факту язык - как дополнение, а не самостоятельная единица.
Линупс классный, но что-то мне подсказывает, что без нормальной иде для людей без свитера так и останется уделом андерграунда. Но честно не понимаю, почему он не взлетел и на нём нет такой инфраструктуры вокруг, как у тех же даже хотя бы Go из свежих. Хотя clojure пытается пукать, но если это лучшее, что может коммунити, то хз. Неужели скобки так сильно пугают? Хотя к ним за пару дней привыкаешь.
>по факту язык - как дополнение, а не самостоятельная единица.
Именно. Подсахаренное говно. И это один из его главных минусов. Как и кожуры, кстати.
>Хотя clojure пытается пукать
Уже давно даже не пытается. Те, у кого хер стоял, нашли новую игрушку, а явисты, коих они пытались к себе заманить, довольствуются скотлином, который более органично вписывается в экосистему жвм.
С F#, впрочем, похожая история.
И, спрашивается, нахуй эта подделка ocaml нужна, когда оригинал живее и востребованнее?
Да я и жд путями, проложенными узниками гулага пользовался. Что ж теперь, на каторгу из-за этого идти?
Для чего, по-твоему, все эти заигрывания интерпрайза с опенсорсом? Всё ради культивации кадров и бесплатного развития экосистемы
Я про то, что как бы они не пытались релизовывать сверхгодные решения в новых языках, но по итогу сосут и остаются языками без какой-либо аудитории пользователей
никто не знает, выстрелит ли твой новый язык, когда он это сделает, какую нишу в итоге займёт т.д. вот взять тот же лисп или f#, поместить их в условия большого коммунити, коммерческих фирм с бесконечным баблом, то ты бы спрашивал, почему никто не развивает C# и прочее, у них был бы легаси-код из 60-х и люди бы жаловались, почему нет вакансий на Java.
Скорее всего не будешь, они учатся не ради денег, а ради скилла, потом всё равно пишешь на мейнстримных языках.
> в условия большого коммунити, коммерческих фирм с бесконечным баблом
Личруали текущие условия. Получается, что лисп по сути своей бестолковый язык. Если он не годится не то, чтобы как полноценный ЯП, но даже как встраиваемая система; люди юзают ебланский говёный lua
inb4: gimp!!! autocad!!! КО КО КО!!!!
Лисп никогда не был популярным языком. Его придумали и использовали только в стенах Университетов. Решали проблемы ИИ, писали вычисления, также лисп использовался для управления космическими аппаратами, например, телескоп Хаббл. С чего вы вообще взяли, чтотот язык должен быть широко популярен? Вы же не используете Coq, верно? А на этом языке писали софт для ьортового компьютера боевых вертолетов США. Такая же история и с лиспом.
>С чего вы вообще взяли, чтотот язык должен быть широко популярен?
Но он ведь такой мощный и классный? Верно? Да? Лисп же такой аутентичный, загадочный и всегда из него воруют классные фишки. Ведь правда?
Тикуль охуенно популярный язык в своем мире, но ни один зумерок про него не слышал наверное. У лиспасхемыгайла тоже ниша есть, где он популярен, кек.?
Проблема всех этих гайлов - GPL. Ни одна серьёзная контора не возьмётся писать коммерческий софт под этой лицензией, если только она не рассчитывает зарабатывать исключительно на саппорте.
>популярность
>корпорации, серьёзные конторы
Пиздец. Да что за хуйню вы тут несёте? Ощущение, будто смотрю тупой американский фильм, где школьники выясняют, кто самый популярный на районе и чья вечеринка была самой шумной. Как можно обсуждать языки, не подняв ни единого технического аспекта?
Тут, похоже, уже давно никто не программирует. Остались одни лишь перманентные быдловайтишники, всё лелеющие надежду выучить правильную технологию и попасть на галеру побогаче. Спасибо, Абу, блять.
Никому нахер не нужен технический аспект, все при капитализме идёт из бабок, ау. Если бы у нас в госконторах не использовали плюсы, то Россия была бы страной веб макак разного сорта
Съеби в воркач, быдло
Гугли про VHS кассеты и как они распространились. В то время было дохуя систем лучше и пизже, чем VHS, но по одной причине VHS был популярнее всех - раньше всех вышел на рынок. Рыночек порешал. Рыночек блять.
Так что иди нахуй.
Линукс тоже во всем технически лучше винды. А еще ортогональные сплит дворак клавиатуры технически лучше обычных кверти. Но ты же ебалан и не понимаешь, почему одно популярнее другого
И что? Тебе кто-то запрещает использовать инструмент, который не так популярен, но пизже?
В чем проблема использовать инструмент с gpl? Ты же не сам язык продаешь, а программу написанную на этом языке. На такой кейс ГПЛ ограничение не накладывает. До появления шланга все на gcc компилировали и ничего.
Биллибой, спок.
Чел, если ты не вкуриваешь, что для языка основное и первостепенное база это комьюнити, то с тобой не о чем говорить.
Господи, как же это похоже на нахрюки про хохлов, ты бы ещё боевую картинку кинул
Ооо, приверженец stackoverflow-driven development? Неожиданно и приятно встретить хорошего гребца за пределами js-треда
У хохлов тоже одни вкатыши вместо комьюнити? Просто не слежу за ситуацией
Наверно, кто-то скажет, что мелочь, но из-за таких мелочей тратится время. Из-за подобной лабуды иногда хочется всю программу или библиотеку на десятки тысяч строк писать в одном пакете, но тогда как минимум autocomplete забивается до невозможности применения.
Месье не учил историю информатики и программирования в частности? В 70е-80е Лисп был дико популярен у академиков. Это в 90е он начал падать из-за изменения типовых задач и появления всяких перлов и пайтонов.
Also, первый GUI для Мака был написан на Лиспе.
Почему не исправил? https://github.com/ruricolist/serapeum/blob/master/REFERENCE.md#exporting
>Если я хочу, чтобы была возможность перегрузить слоты (обычно такое бывает, если эти слоты являются статичными, т.е. есть :allocation :class), придется эскпортировать еще и имена слотов.
Скорее всего, ты что-то делаешь не так. Слоты не являются частью интерфейса, их не следует переопределять ни экспортировать, ни переопределять. Работай с методами чтения и записи.
Борщелисповская система типов умеет валидировать вложенные словари по заданным именам ключей? А генерировать данные по описаниям? Ну вот то-то и оно.
>Борщелисповская система типов умеет валидировать вложенные словари по заданным именам ключей?
Во-первых, в борщелиспе нет словарей. Для того, для чего в кожуре используются словари, в борщелиспе предназначены структуры.
Во-вторых, да, можно. См. http://www.lispworks.com/documentation/HyperSpec/Body/t_satisf.htm
>А генерировать данные по описаниям?
Пример в студию.
> Во-первых, в борщелиспе нет словарей.
Ты ебобо?
(defparameter ∗dict∗ (make-hash-table))
(setf (gethash 'ty ∗dict∗) :pidor)
(ql:quickload :alexandria)
(print (alexandria:hash-table-plist ∗dict∗))
>в борщелиспе нет словарей
Уточню. Их нет в смысле как эрзац-объектов. А так-то хэш-таблицы, разумеется, есть.
>структуры
Ну и у структур поля типизированные, так что проверка вложенных данных имеется из коробки.
>>422590
Так и знал, что ты придерешься, но не успел запостить уточнение.
>>422515
>А генерировать данные по описаниям?
Дай угадаю, оно только словари по описанию умеет строить? Т.е. по сути переизобретение конструкторов структур.
Или оно сможет сгенерировать строку по описанию:
(deftype email (and string (satisfies emailp)))
>Ну и у структур поля типизированные, так что проверка вложенных данных имеется из коробки.
А можно проверить, что одно из полей - структура, у которой одно из полей - другая структура, у которой одно из полей - emailp?
>>422600
>Дай угадаю, оно только словари по описанию умеет строить?
Нет, не только словари. Ёб твою мать, Серёжа Брин тебе дал гугл, но нет, не хочу гуглом пользоваться, хочу анона доёбывать. https://clojure.org/guides/spec#_sampling_generators
> Но ты так и не ответил, емеил оно мне сгенерирует или нет? А за разумное время?
Да. На оба вопроса - да.
Kek, тех тредов уже нет, но идею я понял. Захожу, и о чудо! Там есть даже те, кто активно смешивает с говном имакс-евангелистов. Охуеть. Freedom of speech, охуеть.
>и такая же более правильная
>более правильная
Внимательно посмотри на прилагающуюся картинку. Очень внимательно. Изучи детали, подметь ньюансы. Посмотри на композицию и общий эмоциональный эффект.
А теперь подумай ещё раз и попробуй написать "более правильная" своими пальцами. И если бог не уебёт по твоей башке молнией в этот момент, то ты очень везучий тролль.
А, ну понятно, самому надо описывать. АПИ весьма всратый.
Кстати, палю годноту https://quickdocs.org/cl-string-generator
По итогу получается, что я был прав >>420759
Это суррогат системы типов борщелиспа с подобием https://quickdocs.org/check-it
>->
Ты за неделю так и не смог погуглить?
>>430205
>Ичо?
То, что это не
>Это суррогат системы типов борщелиспа с подобием https://quickdocs.org/check-it
, утеночек.
>Ты за неделю так и не смог погуглить?
Ты сам-то доку пытался читать, дружок? Я жду комментариев несогласных кожуристов.
>>Ичо?
>То, что это не
>>Это суррогат системы типов борщелиспа с подобием https://quickdocs.org/check-it
Объясни, как это следует из
>Генеративное тестирование появилось в эрланге 30 лет назад, потом его прикрутили к типам хачкеляторы.
? У тебя с логикой проблемы? Особенно если учесть, что кложеспек вообще-то не являет собой систему генеративного тестирования.
Ты ебобо?
1. OCaml
Мне из курсерного курса очень понравилась система типов у Standard ML, когда сам почти никогда нигде типы не указываешь, но при этом у тебя статическая сильная типизация. Смущает, что окамл даже на фоне других функциональных языков не очень популярен. Как у него с библиотеками, нужен он вообще кому-то? Говорят, F# похож, но это ведь придется трогать дотнет.
2. Clojure
Пробовал Racket, странный синтаксис (наверное, просто дело привычки) и динамическая типизация (неужели в больших проектах тоже нужно гвоздями прикручивать тайпчекеры?).
А еще я не знаю джаву, будет ли это проблемой при изучении кложуры, там же наверное стандартная библиотека джавовская?
3. Elixir
Я так понял, что эликсир и эрланг это вроде как котлин и джава. Смутила опять таки динамическая типизация и то, что рядом с этими языками везде упоминают OTP, у меня сразу ассоциации с руби, который нужен только для рельс.
Итак, что мне начать учить, чтобы через пару месяцев не разочароваться?
Common Lisp бери, идеальное сочетание практичности и академической стройности. Типизация динамическая, но ты можешь вставлять статические аннотации типов gradual typing таксказатб, чтобы упростить жизнь компилятору и ускорить код ну и продокументировать код типами заодно.
Clojure - хороший вариант, но да, жаба, рано или поздно упрёшься в её ограничения. Хорошо знать жабу для неё не надо, достаточно обладать навыком чтения документации.
фшарп это по-моему один из живых представителей семейства мл, ну, полуживых, даже вроде какая-то работа есть. А чем тебе дотнет плохо?
>Как у него с библиотеками
Не очень, но последние несколько лет стало гораздо лучше. Появился более-менее вменяемый тулинг, ну и в целом количество боли уменьшилось.
>А еще я не знаю джаву, будет ли это проблемой при изучении кложуры
Нет.
>у меня сразу ассоциации с руби, который нужен только для рельс.
Правильные ассоциации.
>Итак, что мне начать учить, чтобы через пару месяцев не разочароваться?
В чем проблема поверхностно познакомиться со всеми тремя? Алсо, ты не упомянул раст, который тоже был бы неплохой опцией. Ну а так - бери окамл и кложу\кложескрипт, наибольший бэнг за твой бак.
>Алсо, ты не упомянул раст, который тоже был бы неплохой опцией
Раздел для членодевочек двумя бордами ниже.
Спасибо за информацию, но необязательно транслировать в паблик свои бордопредпочтения, анон.
Так раньше был отдельный тред по кложе, это от него шапка, а теперь все тусуют здеся.
Я тоже не пишу (увы), но говорил о том, что обсуждать с друзьями членодевок можешь в /ga/, а тут не /ga/.
Я же говорил о том, что любитель раста - с околостопроцентной вероятностью игрок за обе команды, если ты понимаешь, о чём я.
OCaml. Если ты действительно знаком со Standard ML и владеешь Emacs, то достаточно почитать доки и пару часов что-нибудь пописать, и язык уже твой. В отличие от Хаскелля, навыки и знания, которые получишь в работе с ним, могут заметно улучшить тебя как программиста даже на мейнстримных языках.
Библиотек на жизнь, но документация хромает. Есть достаточно удобный FFI для привязки кода на Си.
Отмечу, что на Windows с ним придется много пердолиться. В частности, придется либо качать с сайта установщик Cygwin, либо самому строить из исходников в MinGW.
>>439390
>Common Lisp бери, идеальное сочетание практичности и академической стройности.
Перехваливаешь. CL имеет в себе кучу странностей, унаследованных из лиспов 80х и, по современным меркам, странный подход к некоторым вещам (дежурный пример: пакеты). Язык хорош для применения, но имеет кучу уродливых мест, особенно по сравнению со Scheme (одна сигнатура функции map чего стоит). А где ты "академическую стройность" усмотрел, я не знаю. Язык составлялся не комитетом академиков, как Standard ML и Haskell, а комитетом хакеров, которые ориентировались не на формальное описание, а на решение задач здесь и сегодня.
> Считается, что он не приспособлен к решению "реальных" задач?
Все дело в минималистичном стандарте, первая версия укладывалась в 50 страниц. Благодаря этому язык прекрасен для обучения школьников и студентов и для языкового задротства (бывают такие задроты, которые считают, что всякий тру-лиспер обязан написать свой интерпретатор Схемы). Современный стандарт укладывается в 200 страниц, но он полон неопределенного поведения и недоговоренностей, из-за чего писать переносимый код - пытка. Как следствие - нет развитой инфраструктуры.
Кому ты нахуй нужен, никто тебе членом в лицо тыкать не будет. Я мимо проходил, хотел про кложу почитать, а тут ты такой дружок-пирожок весь тред засрал своими сексуальными фантазиями
>любитель сочного каменного хуя в своей нежной попке
Хорошо что подписался, но я и без этого понял с кем говорю
>Как emacs облегчает вход в ocaml?
Это был намек на Tuareg и Merlin. Без них использование верблюда - малопродуктивное занятие.
Если пет проект, то выбери то, что проще дебажить, правда хуй знает, что, я пробовал только Ракет и Хачкель. Что то, что другое, дебажить пиздец неудобно, даже задачки с хакерранка, а на пет проектах, не говоря уже о продакшене, вообще наверное ебануться можно.
Статическая типизация, какая бы она крутая не была, от семантических ошибок не спасает от слова совсем.
Я бы выбрал что-то со статической типизацией, хорошим дебаггером (желательно визуальным, а не а ля gdb без фронта), не чисто функциональное и с элементами императивщины. Иначе удачи в попытках вырвать array из IO монады, когда придется портировать какой-нибудь императивный алгоритм. По описанию подходит F#, он на вижуал студио, а там хороший дебаггер, правда он хороший для C++, не факт, что это экстраполируется на F#. На днях попробую может сам и скажу, благо винда и ВС стоят.
Попробовал сегодня, в общем нормальный дебаггер, работает так, как ты ожидаешь, базовые вещи по крайней мере не хуже чем C++. Если брезгуешь дотнетом и те костыли для имакса, про которые говорил анон выше, позволяют визуально дебажить код на Окамле, я бы посмотрел в эту сторону. Ну еще Эклипс какой-нибудь наверняка дружит со Скалой.
Ну и надо писать debugger-френдли код, т.е. весь код из функций-однострочников это не вариант, заебешься это отлаживать. Поэтому код будет немного напоминать императивный с кучей let'ов.
Жопные манёвры уровня шестого "Г" класса.
>как он автоматизировал выгрузку налоговой отчетности из 1С
>повысили зарплату до 50к (серыми)
>5 вакансий «lisp»
>Уровень дохода от 200000: По запросу «lisp» ничего не найдено
>23 302 вакансии «1с»
>Уровень дохода от 200000: 1 321 вакансия «1с»
Ебать какой у маминых борщевых компутерсаентистов манямирок, лол
Дружочек, по-настоящему интересные вакансии в паблик никогда не попадают, уж не говоря о помоечном хаха ру.
Дебаггер ненужен. Инфа 100%, твердо и четко. Ты что-то делаешь не так.
Алсо, с точки зрения дебагабельности и интроспекции кложа конечно выигрывает на порядки у окамла, но не думаю, что это то, исходя из чего следует делать свой выбор.
Да, вроде есть. Французский институт какой-то есмь его главпахан. Да, добавляют. Из последнего слоупок.пнг крупного емнип запилили анбаундед варианты (теперь язык еще на 14.88% сложнее!).
По книжкам обычно советуют real world ocaml (вроде у него выходило недавно обновленное издание), но есть и книжки чисто про фп, и про математику, и вообще на любой вкус.
Представляю себе тогда какие суммы у 1С-ников на интересных вакансиях, которые не попадают в паблик.
>170 MB
Electron как плафторма со всей мощью веб-апи и самым мощным графическим тулкитом столько весит.
Нужен, если ошибки синтаксиса или типизации компилятор/линтер еще может поймать вне рантайма правда не в динамическом языке, лол, то логические без дебаггера ты хуй выловишь. Минус где то поменял на плюс и пиздец. Что ты будешь делать, перечитывать весь код или сразу переписывать с нуля? Или ты 10x инженер и сразу пишешь правильно? Или ты свидетель секты тдд? Так тот анон не обязательно такой.
>с точки зрения дебагабельности и интроспекции кложа конечно выигрывает на порядки у окамла
Окамл хотя бы статический и значительную часть ошибок можно выловить еще до отладки.
>не думаю, что это то, исходя из чего следует делать свой выбор
Критикуешь -- предлагай.
Харкачую вопрос. Тоже давно облизываюсь на их вакансии, но что-то смущает. Кожуру лишь недавно учить начал. Думаю буду писать на тупоскрипте за ролтон, а личные проекты на кожуре делать, сейчас как раз куча свежих идей в голове.
>то логические без дебаггера ты хуй выловишь
Ты воюешь не туда. В языках с полноценным рантаймом и интроспекцией (лиспы, смолток) дебагер ненужен.
>Критикуешь -- предлагай.
Так я не критикую, я наоборот за лишпы, но тот анон выбрал окамл, что тоже замечательно и полезно.
Так как ловить логические ошибки без дебаггера, не гадая на кофейной гуще? С дебаггером понятно, прога выдала не тот результат, я поставил брейкпойнт туда, где она ошиблась, прошелся по промежуточным результатам и нашел в них ошибку и так далее, пока не найду собственно сам баг. Без дебаггера как я должен этого добиться? Через трейс что ли? Так это все равно не так удобно, как графический дебаггер, а на какой-нибудь хвостовой рекурсии ты вообще заебешься искать проблему (правда это проблема ФП в целом, а не способа дебаггинга, но поэтому я в >>445034 и сказал, что лучше брать язык с элементами императивщины).
Код на окамеле я посмотрел кста, степ дебаг там вроде тоже не распространен, а let .. in везде режут глаза, хуета короче, в общем я бы выбрал либо F#, либо Скалу, но я императиводебил, как можно уже понять.
>Так как ловить логические ошибки без дебаггера
С помощью интроспекции в полноценном рантайме!
>я поставил брейкпойнт туда, где она ошиблась
СМЕКАЛОЧКА
>а на какой-нибудь хвостовой рекурсии ты вообще заебешься искать проблему
Хвостовая рекурсия - это просто цикл. В ФП используется крайне редко и только для императивного кода который не запихивается в фолд
>а let .. in везде режут глаза, хуета короче
Экспертиза уровня 7 "Б".
>либо F#
Фшарп - это и есть кастрированный окамл, натянутый напильником на б-гмерзкий дотнет.
>Скалу, но я императиводебил
/s/но/ведь желтушные инкаминг ин 3... 2... 1...
Непрактично. Библиотек нет, FFI стандартизированного нет, тулинга нормального нет, портируемости между имплементациями нет, населена роботами. Хотя как язык схемка прекрасна, конечно.
В общем, хочу линупсячее ядро к SBCL прикрутить - и всё, только чтобы конпелировать было вольготно. Как думоити?
Предупреждая очевидный взвизг, про мезано знаю, хочется линупс.
Чтобы можно было сказать, что я пользуюсь SBCL/Linuпs и все охуевали.
Хорошо, мой ответ, если без придуривания - нету, сделай сам.
>и поучить что-нибудь функциональное
Хачкель. Учишь чисто для фп, делаешь петпроджекты, а потом бросаешь нахуй. Теперь бы можешь на своих любимых крестах го и питоне писать функционально, а лишние сущности - в пизду.
А как в го и питоне реализовать иммьютабилити? Ну то есть го копирует некоторые аргументы функций, но всякие слайсы и мапы передаются по ссылке, их кто хочешь может испортить. Можно написать свои костыли, но зачем так жить.
>А как в го и питоне реализовать иммьютабилити?
С помощью иммутабельных персистентных структур данных.
Не меняй проинициализированные переменные, вот тебе и будет иммутабельность.
>>446447
У маминых борщевых компутерсаентистов новая методичка? Крупнейший российский сайт с вакансиями - хуйня и не показатель, да у нас тащемта гора работы и зарплаты в миллионах, где-то там, ну вот там, просто в паблик это не попадает, воот.
По-моему даже хаскеледебилы до такого в своем демеджконтроле не доходили, просто визжали, что хаскель для души, а сами синьоры-помидоры в других стеках.
Реальность, конечно, тяжела, понимаю. В 1С больше и работы, и зарплаты. Ну зато вы элита компутер саенса, даа. Зарплаты, правда, пока в борщах, но то такое: кризис.
На C просто конпеляешь и вот тебе exe, а на лиспе как? И какие компиляторы под винду?
>В 1С больше и работы, и зарплаты.
А у гей-шлюх - ещё больше.
А унижение - меньше (чем в 1С).
Вот и думай.
Я бы под винду поставил WSL и компилировал по-человечески. Ну это если хостить процесс под виндой не надо.
А если семерка?
>У маминых борщевых компутерсаентистов новая методичка
Ага, сидят они себе такие в ботоферме в комфортабельном офисе в пригороде питера и хуячат сменами 5/2 по методичкам посты на анонимных имиджбордах. Ты ещё под кроватью у себя посмотри, скриптомакак ебучий, наверняка там пару борщехлёбов найдёшь.
> На C просто конпеляешь и вот тебе exe, а на лиспе как?
Точно так же. Даже проще, берёшь Shinmera/deploy и вот у тебя кросс-платформенный деплой твоего лиспокода.
Тогда нужно. Бери SICP и вперёд, при должном усердии сатори гарантировано.
Лиспы - это не язык, это семейство языков. Тебе нужен конкретно scheme.
Нет.
Как первый язык программирования - лучше Little Man Computer.
Это такой детский ассемблер. Есть неплохие эмуляторы, загугли.
Потому, что надо таки немножко понимать, что такое компьютер, идею "исполнителя", выполняющего "программу" и т.п.
А вот потом уже - да.
А если я тыкал в QBASIC, два курса института сидел и мне довелось тыкать в Pascal, параллельно я трогал Linux начиная с Убунты 8 версии, смотрел лекции Курячего, один раз за всю жизнь написал крохотный скрипт для RenPy, и я, как ОП третьего Лэйн-треда, поклоняюсь Ивакуре - при всех этих ничтожных обстоятельствах я способен покорить Лисп?
Потому что NIH, очевидно же.
Для массажа простоты. В рпмках зависимости между пакетами строятся строго по версиям либ необходимым для линковки, а в дебе просто по названиям пакетов
В результате чего в деб дистрах можно подключить репу, установить какую-нибудь фигню и начнутся глюки и падения всего софта в системе.
Так а ежа-то с ужом зачем таки было скрещивать?
Вот у тебя в браужере есть консолька, вот теперь представь, что вместо специализированного браузера с консолькой у тебя полноценный компилятор с консолькой (которая доступна по сети)
потому что с дебагером ты можешь полностью остановить ход программы
в нужном месте в нужное время
без ручного персистентного вмешательства в код
а если есть хотсвоп то возможностей еще больше
>Экспертиза уровня 7 "Б".
Не, ну ты мне объясни, нахуя они сделали так, почему нельзя просто let писать через строчку, как в фшарпе. Или хотя бы как в Хачкеле, где один раз пишешь let, а потом список биндингов.
>это и есть кастрированный окамл
А в чем кастрированный? Степ дебаггер есть (в отличие от окамла), можно тянуть что угодно из C# если чего то не хватает. Пока только плюсы вижу.
>дотнет
А че те не нравится, опенсорс же.
>б-гмерзкий
Как там в 2007?
>потому что с дебагером ты можешь полностью остановить ход программы
И в чем разница? Объясни конкретно.
>без ручного персистентного вмешательства в код
Что такое персистентное вмешательства, я знаю только персистентные структуры данных...
>а если есть хотсвоп то возможностей еще больше
Ну так "хотсвоп" - это и есть кастрированная, урезанная, неполноценная и прикрученная изолентой сбоку костыльная версия того, о чем мы тут говорим (полноценного репла).
>Не, ну ты мне объясни, нахуя они сделали так, почему нельзя просто let писать через строчку, как в фшарпе.
Мой комментарий был про то, что делать вывод "хуета" на основе минорных синтаксических особенностей - это школолотронство.
Писать просто через строчку можно, ну тащем-то в эфшарпе ж так и сделали. Какой синтаксис сделаешь - так у тебя в языке и будет. Конструкция let...in традиционно идет из пейперов по плт эмэля, ну смысл в том, что в грамматике у тебя let <sym> = <expr> in <expr> - тело после ин является вложенным, в нем доступен объявленный биндинг (переписывается это все в лямбду). Если же вводить отдельную конструкцию для объявления биндингов на отдельной строчке, то тебе надо стейтменты вводить, ну и в целом ни красоты ни минимализма.
>А в чем кастрированный?
Прибит гвоздями к левой платформе, у которой другой основной язык. Соответственно все либы и весь ентот ваш дотнет оопский. Алсо нет компиляторов в жс, емнип нет препроцессоров, 1ст-класс модулей, динамических вариантов
>Степ дебаггер есть (в отличие от окамла)
https://ocaml.org/docs/debugging#setting-break-points
>А че те не нравится, опенсорс же.
))
>Как там в 2007?
Очень хорошо, спокойно, безоблачно.
>И в чем разница? Объясни конкретно.
а как ты собрался останавливать ход с интроспекцией
у тебя там функция pause есть которая весь тред замораживает или что
>Что такое персистентное вмешательства, я знаю только персистентные структуры данных...
это когда тебе приходится лезть в код и руками дописывать интроспекцию
это чревато тем что дописанное может остаться там навсегда
с дебагером же такие изменения только временные
вот как ты интроспектировать чужую скомпиленную либу будешь
или я что то не понимаю
пока что я вижу интроспекцию как вызов print(a.x) в коде
>у тебя там функция pause есть которая весь тред замораживает или что
Ну можешь thread.sleep вызвать, можешь readln какой-нибудь вызвать, можешь подключить какую-нибудь либу с функциями для трассировки и (внимание) дебаггинга (лол) и вызывать их. Что хочешь, то и вызываешь.
>это чревато тем что дописанное может остаться там навсегда
Каким образом? Если ты собака (on the internets nobody knows you're a dog), то я еще могу представить такую ситуацию. А если ты человек, то не могу. То есть вот ты дебажил код, потом ВНЕЗАПНО впал в кому и получил амнезию, а потом еще твой код ВНЕЗАПНО задеплоился в продакшн каким-то волшебным образом. Извини, но нет. Алсо, по такой логике ты можешь поставить брейкпоинт И ЗАБЫТЬ ЧТО ТЫ ЕГО ПОСТАВИЛ И ПРОГРАММА В ИДЕ НЕ РАБОТАЕТ И ПОЧЕМУ-ТО ОСТАНАВЛИВАЕТСЯ ДЕБАГЕР СЛОМАЛ ТЕБЕ РЕЛИЗ ААААА ну камон
>вот как ты интроспектировать чужую скомпиленную либу будешь
Чужую и без исходников - никак, тут только традиционные способы. Речь именно о разработке (интерактивной разработке), не о реверс-инжиниринге или абьюзе бинарных артефактов.
>пока что я вижу интроспекцию как вызов print(a.x) в коде
Ну по сути все эти инструменты это и есть glorified debug print. Просто удобный, с трассировкой, визуальным браузером значений, ну и повторюсь, суть(с)(тм) в том, что ты подключен к выполняющейся программе и можешь в ее контексте выполнять любой код.
>Каким образом? Если ты собака (on the internets nobody knows you're a dog), то я еще могу представить такую ситуацию. А если ты человек, то не могу. То есть вот ты дебажил код, потом ВНЕЗАПНО впал в кому и получил амнезию, а потом еще твой код ВНЕЗАПНО задеплоился в продакшн каким-то волшебным образом. Извини, но нет. Алсо, по такой логике ты можешь поставить брейкпоинт И ЗАБЫТЬ ЧТО ТЫ ЕГО ПОСТАВИЛ И ПРОГРАММА В ИДЕ НЕ РАБОТАЕТ И ПОЧЕМУ-ТО ОСТАНАВЛИВАЕТСЯ ДЕБАГЕР СЛОМАЛ ТЕБЕ РЕЛИЗ ААААА ну камон
запросто
пропишешь три брейкпоинта через пару дней вернешься удалишь два а про третий забудешь
не недооценивай человеческий фактор
в иде есть список брейкоинтов и кнопка продолжить а еще автофокус на сработавшем брейкпоинте
>Речь именно о разработке (интерактивной разработке), не о реверс-инжиниринге или абьюзе бинарных артефактов
не ну если ты разрабатываешь hello world то такое может еще и проканает
но если ты делаешь что то серьезнее то часто используешь либы и копание в их кишках иногда бывает необходимо особенно если туго с документацией или тебе нужно какое то специфичное поведение
а еще в либах могут быть баги
>ы подключен к выполняющейся программе и можешь в ее контексте выполнять любой код
прям во время ее работы на серваке
inb4: НЕ ПИШИТЕ ПРО КЛОЖУ. КЛОЖА ЭТО ЖАБА, А НЕ ЛИСП
>В Grammarly мы используем множество языков программирования для разработки наших сервисов: кроме языков для JVM и Javascript'а мы также пишем на Erlang, Python и Go
>Клоуны с зоопарком языков и технологий, где лисп приплели до кучи
Ну ну
Go же специально делали как эрланг для императивщиков, держать их одновременно это взаимоисключающие параграфы.
Ни на каком языке никто серьезно не программирует. Так, иногда иронично напишут немного кода, чтобы потом на мемесы разобрать. А все работает на кодовой базе алгола и фортрана из 60-х.
база
>не недооценивай человеческий фактор
Это не человеческий фактор, это отсутствие производственных процессов и какого бы то ни было релиз-инжиниринга.
>в иде есть список брейкоинтов и кнопка продолжить а еще автофокус на сработавшем брейкпоинте
При чем тут иде? Можно пользоваться иде, но не пользоваться дебаггером, а можно пользоваться дебаггером, но не пользоваться иде. Энивей, ты точно также можешь получить список всех выставленных трассеров и брейкпоинтов в коде, думаю не надо объяснять как.
>но если ты делаешь что то серьезнее то часто используешь либы
С открытым исходным кодом, але. Чет ты вообще плаваешь, анон.
>прям во время ее работы на серваке
Ну да, в том числе.
>НЕ ПИШИТЕ ПРО КЛОЖУ
Тогда не спрашивай про интерпрайз. Единственный лисп, применяемый в интерпрайзе - это кложа.
>КЛОЖА ЭТО ЖАБА
А, ты у мамы просто дурачок. Кстати, объясни, когда кложа запускается в ноде.жс рантайме, - где там джава? Просто хочу разобраться.
>Go же специально делали как эрланг для императивщиков
Абсолютно никакой связи, учи матчасть хоть не знаю википедию прочитай про эти два сабжа.
алсо сомневаюсь, что пайк был в курсе про ерланг на момент своего высера, лол
>>Клоуны с зоопарком языков и технологий, где лисп приплели до кучи
Всё nlp у них на борщелиспе
>Единственный лисп, применяемый в интерпрайзе - это джава.
>путать джаву с джаваскрипом
Одинэсник, плес.
Фукамачи-сан уже давно забросил эту свою поделку, потому что коммонлисперы его справедливо накормили говном за неё
В нем нет ничего от кложуры. Это общелисп плюс наработки сообщества минус атавизмы. В целом неплохо, но требует доработки напильником. Я даже когда-то пытался использовать в одном своем проекте, но потом оказалось, что в этом нет смысла, ванильный общелисп с любимым набором батареек удобнее
Вот про сообщество не надо. Оно хоть и немногочисленное, но активное и вообще теплое и ламповое.
Так пасаны! Нет времени обеснять! Почитаем оп-ссылки потом. Накидайте мне хеллоувордл на любом из лиспообразных языков, который:
1. Компилируется в нативный код.
2. Кроссплатформеннен.
3. Выводит нативное графическое окно с текстом хеллоуворлд и кнопкой ОК, по нажатию на кнопку приложение закрывается.
4. Скомпилированное приложение состоит из одного бинарника и зависит только от системных либ (в т.ч. (актуально для линукса) от текущей графической либы рабочего стола).
5. Чтобы выполнить предыдущие пункты потребуется минимум теложвижений: скачать только один СДК, создать только один файл с кодом, выполнить только одну команду компиляции.
Могут ли лиспоязыки в такую задачу?
Это да
Common Lisp, CommonQt
ОП, какого хуя в шапке нету пикрил? Я всегда заходил на двач за списком литературы, но эту вещь пришлось гуглить. Из-за вас порожнячников двач для меня теряет ценность, как источник инфы. Если что, пикрил годная вещь. Но двачеры, почему-то, предпочитают жрать говно от авторов, не имеющих представления о написании книг.
Вот шо за хуйня? Какой еблан это писал? percolate - шляпа полная. Оно сломает нахуй сортировку.
Написал "(+ 1 2 3 4 5 6)", нажал enter - то, что ввел, сдвинулось вправо, хотя результат правильный.
В чем может быть проблема и как починить? Пикрелейтед
Напиши reset в терминале или открой новый терминал, вряд ли тут дело в сабже.
Алсо, use cider, luke
>Напиши reset в терминале
не помогло
>открой новый терминал,
я даже комп ребутал, 0 эффекта
>вряд ли тут дело в сабже
вероятно. подозреваю, что какое-то навешеное говно на терминал для удобства сломал, но хз что
Ну у меня не воспроизводится, даже до .1 специально обновился сейчас. Попробуй с чистым башрц, попробуй в зш, попробуй другой эмулятор терминала, етк.
А так вообще поставь например вс код какой-нибудь и не парься.
https://clojure.org/guides/editors
На хаскеле, к примеру, встречаю репы на гитхабе, понятно что его можно использовать практически-коммерчески. Чому на лиспе нет ничего известного?
Открытая антологическая база знаний, как её блятб. Которая уже 40 лет разрабатывается.
Видел ещё презентацию как челы белки крутили и все это на CL + cpp
foo bar = yoba bar where yoba = ...
Это нормально, что у меня от такого лицо скрючивается?
Можно ведь по-человечески:
foo bar = let yoba = ... in yoba bar
Или я просто не просветлился в должной степени и из меня лезут мерзкие процедурно-императивные привычки?
Он на плюсах, на лиспе там пишут скрипты типа расширений, там да дохуя всего написано
Мимо работал пару лет в Автогаде
Есть
Извините.
А когда ты пишешь
void foo() {
helper()
...
}
void helper() {...}
-- это другое? Иногда удобнее сверху-вниз (от общего к частностям), иногда снизу вверх.
а у меня {1 3 2}
чому не по порядку?
не знаю(это шутка какая-то? я не понял)
вот нашел в другом месте, что оказывается ето не только у меня так, ето оно так у всех. но какого хуя? объясни пожалуйста
Шутка в том, что сету не нужен порядок в принципе.
По определению, set (множество) - это неупорядоченный набор элементов (с константным1 временем проверки вхождения элемента в данный набор).
Точно так же как map (отображение) - это неупорядоченный набор пар ключ-значение с константным1 поиском по ключу.
[1]: амортизированно константным
Твои оправдания, почему до сих пор не деплоишь лисп в интерпрайс-грейд микросервис-ориентед клауд-реди кубернетис-инеблед континиус-деливери-интегрейшен-профайлинг виз-сервис-меш гитопс скейлебл инфраструктуру?
Код:
>(defn rev [lst n]
(if (> n 0)
(
(rev (drop-last (conj (apply list lst) (last lst))) (- n 1))
)
)
)
(rev [1 2 3] (count [1 2 3]))
Ошибка:
>Cannot invoke "clojure.lang.IFn.invoke()" because the return value of "clojure.lang.IFn.invoke(Object, Object)" is null
Но ведь разве функция не возвращает измененный объект и не работает по типу:
>def func(obj, n):
if(n>0):
func(obj, n-1)
?
Делаю для изучения, буду благодарен за ответ.
Точнее, вот:
(defn rev [lst n]
(if (> n 0)
(
(rev (conj lst (last lst)) (- n 1))
)
)
)
(println (rev [1 2 3] (count [1 2 3])))
не выводит принт. Разве функция не должна перед выходом возвращать измененный объект? Спасибо.
(defn j [lst]
(doseq [i (for [i (range (count lst))] (inc i))]
(if (not= 0 (mod i 2))
(println (nth lst i))
)
))
код выводит нечетные позиции в списке. Добавляю строку принта для дебага:
> (println i "%2 !=0")
(println (nth lst i))
и второй принт выводит другие значения. Вызов увеличивает i? Это с хакерранка, если что. Извиняюсь за разметку.
Для начала следуй установленному соглашению о форматировании кода https://github.com/bbatsov/clojure-style-guide, а не вот этот вот пиздец:
>)
>)
>)
Если человек с такой базовой штукой разобраться не может, то понятно, что мало кто захочет ему отвечать, согласись.
Далее - разберись с понятием сложности алгоритма, и чем отличается линейная сложность от константной, например. После этого прочитай доки к функциям drop-last, last - и подумой, какую ебучую сложность имеет твоя реализация в этом посте (т.е. сколько раз ты проходишься по списку).
>>560117
Ты зачем-то вызываешь результат rev как функцию. Твой rev не возвращает функцию, поэтому непонятно, зачем ты это делаешь и что ты хотел сделать. Возможно, ты просто не разобрался в синтаксисе и поставил лишние скобки. Если так, то пройди сначала https://maria.cloud это для детей, но для начала отлично зайдет, займет минут 15, алсо там сообщения об ошибках сделаны более понятными для ньюфага
Далее, у тебя неправильный алгоритм и ненужный аргумент n. Разбирайся. Напиши сначала рекурсивную версию, потом версию с хвостовой рекурсией и аккумулятором (используй loop/recur), потом версию через reduce.
Алсо, при работе в репл (repl = read-eval-print-loop) тебе не нужно дополнительно преобразовывать в строку и печатать результат, он автоматически печатается самим реплом (вызов println ненужен).
>>560324
Без понятия, что ты спрашиваешь. Один принтлн у тебя выводит i и какую-то строку, другой - i'ный элемент списка. Понятно, что это не одно и то же.
Короче, рекомендую для начала разобраться в основах, пока у тебя изрядная каша в голове.
Тогда это называлось нечёткая логика:
http://www.r-5.org/files/books/computers/algo-list/fuzzy-logic/about/T_Terano_K_Asai_M_Sugeno-Fuzzy_Logic-RU.djvu
Для начала прочитай файл с настройками в формате JSON, затем замени все скобки на круглые, затем начинай выполнять задания в этих самых круглых скобках:
(ADD 25 25 .x)
(PRINT x)
Теперь упрости немного:
(PRINT (ADD 25 25))
И усложни немного:
(WITH (ADD 25 25 .x) (PRINT X))
И т.д. и т.п.
Большое тебе спасибо, что поделился материалом
Настолько Ъ, что все финансирование отъебнуло на несколько лет.
Гугли John McCarthy -> MIT AI Lab
Нечеткая логика и без лишпа прекрасно обходится, это не то.
Спасибо, разобрался.
Пейсал на схеме в студенчестве. Сейчас неинтересно + язык непрактичный, зарабатываю сишником под юниксы.
В чем суть REPL? Максимально неудобная штука. Код писать удобно в IDE, в нужном месте, выполнять код лучше с полной перезагрузки приложения, иначе можно столкнуться с тем что в REPL работает а при перезагрузке уже нет, а это главнее. Что то менять и вычислять во время выполнения позволяет любой отладчик.
matrix = Matrix[i x j] x Matrix[i x j+1] x BMatrix[k+y+(i/j)];
Все свойства лиспа можно сохранить.
> В чем суть REPL? Максимально неудобная штука.
Это IDE из 60-х.
> выполнять код лучше с полной перезагрузки приложения,
Дампили память на диск, потом грузили. Это быстро, кроме шуток.
> Что то менять и вычислять во время выполнения позволяет любой отладчик.
А отладчик тоже в REPL.
Мне его советовали вместо шемы когда я начал увлекаться программирование для себя, но дальше так и не пошло, как писал свои рогалики на питоне и скрипты для себя, так и пишу, но несколько глав на хтдп прошел и мало что понял, даже сикп был понятнее с его примитивами. Может дело в подаче материала.
В чем в конечном итоге профит этой книжки и насколько она актуальна в 23м? И не надо меня посылать читать заглавие
На русском читал? А то ж ведь перевели официально. Пистонообразное что-то нужно? Ну так вон - DCIC примерно от тех же авторов.
Да мне просто интересно в чем её сакральный смысл и чему она в итоге учит, что она даст на выходе и насколько она актуальна в 23м году и насколько применима эти Шесть шагов разработки функции в реальных задачах и энтерпрайзе.
Сикп и его смысл мне понятен, он не устареет, он еще и прикладной к тому же.
Я застрял на "function composition". Вроде бы всё чётко так и легко, потом просто тупик. Вот тут, мол, надо применять function composition. Что? Как? Откуда? Один куцый пример приведён, которого мне совсем не хватило. Если в треде есть пояснительная бригада, целиком проглотившая HtDP, то прошу пояснить сей феномен.
Я не особо сообразительный человек и использовал решебник на гитхабе
Вопрос в чем?
>В чем суть REPL?
В интерактивной разработке (сокращает feedback loop -> повышает скорость разработки).
>Код писать удобно в IDE
Так репл - это часть иде.
>выполнять код лучше с полной перезагрузки приложения
Особенно это лучше, когда компиляция проекта занимает хотя бы 5 минут. Еще лучше, когда тебе нужно после запуска восстанавливать состояние (например при разработке гуи).
>можно столкнуться с тем что в REPL работает а при перезагрузке уже нет
Можно, но перед коммитом \ при сохранении у тебя прогоняются тесты на чистом образе, так что даже когда такая ситуация возникнет (редко), ты все равно это сразу увидишь.
>Что то менять и вычислять во время выполнения позволяет любой отладчик.
Не совсем. Ну вот репл - это и есть такая модель выполнения языка, которая позволяет иметь отладчик на стероидах, к которому можно удаленно подключаться из иде и иметь полный доступ ко всему языку, ко всему исполняющемуся образу и ко всему состоянию приложения. Иными словами, отношение тут обратное: отладчик - это такой кастрированный репл, криво прикрученный сбоку.
>прочесть что то такое
Потому что это "что то" в твоем примере - это нечитабельное говно. Лисповый синтаксис однозначен, легко читается, легко редактируется, легко обрабатывается программно, позволяет иметь простую систему лисп-макросов. Это объективные (инженерные) преимущества. А на другой чаше весов - мне скобочки не нравяцца)) и прочий гуманитарный дебилизм. Выбирай сам, что тебе ближе по уму.
В чем конкретно вопрос?
> можно столкнуться с тем что в REPL работает а при перезагрузке уже нет
Это может быть только в том случае если ты пишешь жестко связанное говно, нарушая все практики программирования.
>DrRacket :: https://docs.racket-lang.org/drracket/
Пиздец он убогий, есть альтернатива?
Лиспворкс тоже не совсем фри, там ограничения свои.
Где RAD IDE по настоящему фришные???
>легко обрабатывается программно
Неправда, можно написать foobar который будет читать код далее и использовать скобки по своему усмотрению.
>Лисповый синтаксис однозначен
Неправда, см.выше
>легко читается
Неправда, попробуй взять этот пример, где всего лишь умножение 3 элементов массива, и перепиши на лиспе. Это простейший мега-читаемый код, только умножение на Х заменил.
>позволяет иметь простую систему лисп-макросов
Простая = убогая.
>А на другой чаше весов - мне скобочки не нравяцца))
Если это создает реальные трудности, то это недостаток.
Почему ФПшники так любят сокращать имена переменных, до того, что возникает путаница и по контексту сложно догадаться, о чём идёт речь.
В качестве примера, я вчера начал играться с OCaml и там вместо "element" или хотя бы "elem" в официальной доке пишут elt, а "lst" так вообще означает list of elements.
Для логических операторов они вообще прихуячили lsl lsr asr, вместо общепринятых <<, >>, для asr - хуй знает.
Предположение одно: они пишут высококачественный код (лол) на лету, причём пишут его так быстро, что им нужно постоянно сокращать переменные, чтобы быстрее писать и глазами парсить написанное.
Математикам подражают. Те тоже любят сокращать все до пидорских однобукв. Раньше это было оправдано - доска и лист бумаги не резиновый, а сейчас уже нет, но моск уже одеревенел.
Почитал книжку, открыл емакс, освоил фундаментальные вещи. Что дальше? Не было просветления, на которое я надеялся.
Функциональный стиль без состояний и минимальные эффекты, да круто, но это просто хороший стиль.
Фишки как изменение функции при работе программы, супер, быстрые разработка, отладка.
Функции как объекты первого класса, замыкания, хорошо.
Макросы, я ещё не могу судить об этом, т.к. нет опыта, но возможность дополнения языка конечно радует.
Может фишка в создании своих мм... языков предметной области ? Что я не понял/пропустил?
Бочку ещё не сделал.
благодарю
Это старинный язык из 70х без преимуществ, иначе бы его уже использовали.
>Почему ФПшники так любят сокращать имена переменных
Тем временем сишники: itoa strconv alloc sprintf stdio
>Для логических операторов они вообще прихуячили lsl lsr asr, вместо общепринятых
https://developer.arm.com/documentation/dui0068/b/Thumb-Instruction-Reference/Thumb-general-data-processing-instructions/ASR--LSL--LSR--and-ROR
Это как раз общепринятое именования битоебских операторов.
>сокращать имена переменных
Потому что это улучшает читаемость. Чем меньше скоуп идентификатора - тем короче имя. Чем больше скоуп - тем дескриптивнее и подробнее имя. Для стандартных вещей - соглашение по стандартным именам. То же самое в общем-то в си\голанге\расте, например, просто у ФП свои стандартные вещи и соглашения по их именованию. Ну например при деструктуризации списка принято писать x:xs и так далее.
Например, в clojure:
coll - collection
s - string
f, g, h - function
& more - varargs
m - map
k, v - key, value
Коммон лисп - не особо функциональный. С таким же успехом можно жс назвать функциональным. За функциональщиной в кложу. инб4: без статик тайпинга и монадного ио ето не фп ряя
Основные фишки - клос, сигналы и рестарты, макросы, интерактивная разработка. Попробуй написать какой-нибудь гуевый пет-проект. Посоветовал бы игрушку написать, но не знаю, как у кл нынче дела с графическими библиотеками.
>Потому что это улучшает читаемость. Чем меньше скоуп идентификатора - тем короче имя. Чем больше скоуп - тем дескриптивнее и подробнее имя. Для стандартных вещей - соглашение по стандартным именам.
Так всё стало на свои места. Спасибо.
Я за свободный вечер прочитал первую главу оф. refman и сразу перескачил на 5 главу, ибо быстрее всего хочу дойти до идеи GADT'ов и пощупать получше систему типов, а потом сравнить её с системой ТС. Жаль, что дваче по окамлу последний индексированный тред утонул в 2019, а язык тем временем развивается, в декабре вышла 5 мажорная версия, в которой добавили новую среду выполнения для SMP и effect handler'ы для написания всяких параллельных штук.
>Коммон лисп - не особо функциональный
А в чем тогда профит его использования?
А кложа мне показалась дикой черепахой даже по сравнению с питоном, не говоря о sbcl, но я её просто потыкал
мимо проходил
Борщехлебик столкнулся с реальным миром :(
Пробовал на "буханке" по карельским боротам ездить? Неудобно, сложно, трясёт, зато как привыкнешь - и вокруг красота, природа, спокойствие. Такое умиротворение сразу. И плевать на всех этих ослов на тойотах, которые только на шоссе кайф от езды способны получать.
Знаю, даже не хочу пробовать. Это говно без задач.
>Я пробовал nim, v, vala, но лисп это что-то другое совсем
Попробуй хаскель ещё, может понравится.
>LispWorks, Allegro CL
Не могу найти полные версии, все торренты обшарил, это прикол какой то???
Развиваться-то он развивается, только эти мудаки до сих пор не могут выкинуть говностдлиб и заменить ее на коре (кстати, рил ворлд окамл тоже новый вышел в этом году). И вместо системы сборки у них дюна.
А так да, спустя эн лет запилили наконец мультитрединг, тащем-то нормальный рантайм теперь.
Интерактивная разработка, объектная система, сигналы и рестарты, компиляция в нативный код.
Кложа обычно быстрее питона, но вообще не очень понятно, что значит "быстрее\медленнее".
Полистай пару дней Clojure for the brave and true. Зайдёт - покопайся поглубже.
мимо жявапидор 5+ лет
когда то давно ебашил на эрланге с эликсиром
> lsl lsr asr
> Это как раз общепринятое именования битоебских операторов.
> общепринятое
Специфичное для арма.
Пдп11: asl asr ash
Мипс, спарк, альфа: sll srl sra
Хуй86: shl shr sar
А кложура годится для хуйлоада?
Я прост не в курсах.
Гориз масштабирование только или и вертикальное?
Реактивную работу с субд умеет?
Неблокирующий асинхронный веб?
Я знаю как все это в жяве делоть. Но про кложуру сдышал только что это лиспоскобочки
Та же самая идея. У дураков идеи похожи. Пишешь лапшу на dsl в одном файле. Указываешь какая часть кода на сервере исполняется какая на клинте.
Так это в 1с придумали, ну ясненько.
>Поясните за гомоиконичность
https://www.youtube.com/watch?v=o7zyGMcav3c
>профиты
Метапрограммирование
>символ
Если у твоего языка ад-хок синтаксис, то у тебя в грамматике просто класс "идентификатор", а если тебе нужно first-class представление программы в виде данных, то тебе желательно иметь тип, чтобы идентификаторы представлять
>А кложура годится для хуйлоада?
apache storm олдфаги не помнят ньюфаги не знают
Вопросы у тебя имхо не про язык, а больше про платформу, кложа работает на жвм и\или ноде, нутыпонел. Нетти и вперед
благодарю
Чувак пилит веб-DE а-ля смолтолк. Пока ещё сыро и ебаное вебговно, но уже охуенно
Тем временем компания из 1 программиста нанятого за 17к рублей пишет на PHP и ExtJs это. Тоже WebDE + Приложения.
Акцент не на вебде (в рисовании окошек и менюшек через clog ничего сложного и интересного), а на "а-ля смолтолк". У него интересная концепция, где ДЕ не как набор программ, оконный менеджер и меню пуск, а как среда отображения, манипуляции и композиции объектов. Посмотри видосик в описании, он всё рассказывает и показывает.
>нанятого за 17к рублей
Намекнул бы кто этой компании из 1 программиста, что это маловато даже за такую заурядную хуиту. Макаки, верстающие на тильде статичные одностраничники, и то в пару раз больше запрашивают.
Я понял идею, но пока вижу тормоза и отсутствие реального применения, как это применять эффективно? Смогли бы МЕЛТОР нанять за 7к программиста которое сделает им все в два раза быстрее?
Какой стабильности или реального применения ты ожидал?
Это сырой прототип, чувак только экспериментирует. Что не отменяет охуенности проекта, потому что у него есть ясное видение своей задумки.
>МЕЛТОР
Решительно не понимаю, если ты понял идею, то нахуя приплёл этот круд с закосом под икспи. Но если знаком лично с этим одним программистом, то поинтересуйся, действительно ли он оценивает свою работу дешевле сидения за кассой в пятерочке.
>веб-
Пусть перепиливает на skija\humbleui, а пока НЕНУЖНО.
А так конечно заебись, но ведь тот же гном3 тоже знаете ли своего рода а-ля смолток.
>skija\humbleui
>jvm
😬
Если уж выбирать из двух зол, то пусть остаётся веб.
>но ведь тот же гном3 тоже знаете ли своего рода а-ля смолток.
Если только внутри. Да и то там скорее дотнет.
>Если уж выбирать из двух зол, то пусть остаётся веб.
Хамблуи же специально для того, шоб как веб, только жрало меньше и работало нормально.
>Если только внутри.
Чому? Альт-ф2 -> lg -> выполняй что хочешь. Тулинга правда не завезли.
>почему лисперы не сделают нормальный синтаксис, и хоть немного выразительный, что бы можно было просто написать и прочесть что то такое
>matrix = Matrix[i x j] x Matrix[i x j+1] x BMatrix[k+y+(i/j)];
Почему? Потому что уже сделали https://github.com/phantomics/april
(defun matrix-multuply (A B)
(april-c "+.×" A B))
(defun identity-matrix (size)
(april-c "{⍵ ⍵⍴1,⍵⍴0}" size))
(let ((A (april "3 3⍴⍳9"))
(B (identity-matrix 3)))
(matrix-multuply A B))
Блять, макаба стала юникодные пробелы сжирать?
Получается и ассемблер ничем не хуже лиспа?
code:
mov rcx, estr
call eval_list_str
data:
estr: db '(print (+ (* 6 8)))'
>Метапрограммирование
Мне тут поясняли что эта тру хурма вымерла с баном доступа к процессору, а на прослойке вм она в обще не имеет профитов
ШУЕ ППШ.
Если рассматривать в общем -- несомненно, как и любой полный по Тьюрингу язык. Только не стоит забывать о десятом правиле Гринспена.
Но если немного погрузиться в детали, то по крайней мере одно принципиальное отличие таки найдётся. В моём примере april/april-c -- макросы, и разбор и транспиляция в лисп APL-кода происходит на стадии их раскрытия. Таким образом в готовом бинаре получается уже скомпилированный APL. В твоём же примере без модификации инструментария полностью скомпилированный бинарь не получить.
Ну можно сделать на любом языке парсер строки с префиксом APL и что бы была подстановка кода, пока вижу тот же уровень.
нормальный такой челик
>Ну можно сделать
Можно. Конечно, можно. Я даже тебе наводку дам https://camlp5.readthedocs.io/en/latest/
Когда наиграешься с подстановкой велловорлдов седом и соберешься идти дальше, тебе придётся переизобрести примерно такую штуку и в процессе заодно осознать, что даже хороший препроцессор не ровня макросистеме. Но это уже другая история
Ждём тебя с готовым
> и гречки
Накати, отец, тебе уже везде гречка мерещится
> с арабскими цифрами
Арабские цифры выглядят не так, как ты думаешь. Загуглишь сам
Обнови webkitgtk
Я помню когда учил го, несколько был поражён - запустил бота, 3 раза упал до запуска, 1 раз на null poiner - все, нахуй. Бот работает железобетонно, нахуй. Хоть лом на башке верти.
Вот и как жить? Идешка не подсказывает. Откуда должно взяться 500% ттм? Дохуя об этом слышу но так и не понял откуда это взялось
Хуясе. Никогда не думал, что встречу кого-либо с такой точкой зрения.
А как без режимов? Ctrl+Alt+Shift+Super+Жопа+Аллах+... на каждый чих?
Сега прилипла.
Алсо, реквестирую ресурсы по кишкам SBCL. В частности по sb-int и как вообще образ под себя настраивать. Не очень хочется в исходники лезть.
>Алсо, реквестирую ресурсы по кишкам SBCL.
Их нет. Разработчики не утруждают себя документированием кишок, ибо не предполагают стабильного апи и вообще нехуй туда лезть.
Хорошо, тогда не настолько кишкам. Как пример: в мануале SBCL говорится, что ты можешь сменить функцию чтения пользовательского ввода. А сама функция даже не называется. И хуелиард такого. ЧЗХ?
Хз, видимо предполагается, что если действительно можешь, то сможешь и в исходниках найти, где и что там подкручивается.
А ты что хочешь-то? Репл потюнить? Есть же sb-aclrepl и cl-repl. Вторым я и сам пользуюсь
Да, что-то типа. Я тут писал два-три треда назад. Хотел CLI утилиту сделать, но писать такую с нуля заёбывает. Хочу чуть-чуть изменить обработку ввода + некоторые новые функции + reader macro (чтобы эти новые функции можно было вызывать по типу @eto yoba, а не (eto yoba)). А потом просто засейвить образ в исполняемый файл и в хуй не дуть.
Откопал свой пет, после N месяцев пинания пиписек на работе.
Имакс - это desktop environment, а не текстовый редактор.
Хз, очень редко торможусь на ошибках, которые бы могла словить система типов (тем более а-ля го или джава). Зато вот когда после кложуры пишешь на го, то часто зарываешься на дохуя времени из-за того, что вместо наиболее логичной формы данных приходится делать нечто, что влезет в тайпчекер.
Попробуй писать спеки или хотя бы просто примеры входа\выхода для функций (по ним потом можно автосгенерить спеки).
Вы видите копию треда, сохраненную 7 июня 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.