Лиспотред №15 /lisp/ 3142890 В конец треда | Веб
Лиспы - семейство языков программирования. Характерные особенности лиспов: динамичность, гомоиконность (код как данные), программируемость.

{Основные диалекты}
:: 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).
:: Clojure - для тех, кто считает, что из смеси явы и лиспа может получиться что-то хорошее, или тех, кто интересуется креольскими языками, есть отдельный тред. Тред утонул, дом сгорел, отец-подлец бросил, поэтому поживёт сиротка пока у нас. Мальчик со странностями, но хороший, не обижайте. Шапка треда здесь https://rentry.co/9ve9d

{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://cl-community-spec.github.io/

::: Библиотеки
- https://awesome-cl.com/
- https://ultralisp.org/
- https://lisp-journey.gitlab.io/blog/state-of-the-common-lisp-ecosystem-2020/

::: Среда разработки
- https://lispcookbook.github.io/cl-cookbook/editor-support.html

Предыдущий тред: >>2681837
2 3142895
)))
3 3143679
Близок ли идеологически язык Forth и его потомки к лиспам?
4 3143889
>>143679
Скорее нет, чем да.

Всё таки это языки разных парадигм.

Форт конкатенативный, а лисп аппликативный.

Но общие черты есть. Конкатенативные языки стремятся к простому синтаксису, гомоиконности, вполне обладают функциональной базой (вычисление с помощью композиции).

А ещё их мощным плюсом является то, что они просто донельзя просты. Пока у многих языков реализация интерпретатора/компилятора является по сути чёрным ящиком с множеством магических вещей (типа GC, EventLoop, RefCounting, итд), то в конкатенативных языках даже GC не нужен, ибо нахуя, если переменных нет.
image.png73 Кб, 761x781
5 3145062
>>143889
Но в Форте же есть переменные. В Лиспе тоже есть.
6 3145063
>>145062
В конкатенативных и в стековых языках нет переменных в привычном понимании этого слова.
image.png34 Кб, 829x416
7 3145064
В чем отличие точечной пары от списка?
Я думал, что (1 2 3 4) - это просто сокращенная форма для (1 . (2 . (3 . 4) ) ), соответственно (1 2) и (1 . 2) - это одно и то же.
Но вот на ЛОРе пишут, что это разные вещи, мол, в NewLisp неправильно сделано.
8 3145069
>>145063
И в чем здесь отличие Форта от Паскаля или Си, кроме синтаксиса? Привычное понимание переменной - именновая ячейка памяти, содержимое которой можно читать и изменять. Т.е. вместо MOVB (1000), 123 или POKE 1000, 123 можно записать x:=123 или 123 x !

Вот в Erlang нет переменных, только аргументы функций и локальные константы. Соответственно x:=x+1 или x @ 1 + x ! не напишешь, а для изменяемого состояния нужно использовать рекурсию.
9 3145073
>>145069

> И в чем здесь отличие Форта от Паскаля или Си, кроме синтаксиса?


Насчёт Форта не знаю, но в других конкатенативных языках, типа Joy у языка действительно другие семантические свойства.
10 3145074
>>145069

> Вот в Erlang нет переменных, только аргументы функций и локальные константы.


Под переменными я имел в виду именно аргументы и константы.

Они есть в аппликативный языках, но не в конкатенативных. Там используется бесточечный стиль.

К примеру, в аппликативный языке мы пишем так:
fn x = print(x + 1)
Или более наглядно в лиспе:
(define (fn x) (print (+ x 1)))

В конкатенативном же:
: fn 1 + print

Тут отличия совершенно не в синтаксисе, а в том как вычисления выполняются.

Нет стека переменных, нет стека вызова функций. Есть только датафлоу. Это всё очень облегчает реализацию языка, даже не не уровне простого синтаксиса, а простого способа вычислять. Даже GC не нужен.
11 3145493
>>145064
(1 2 3 4) => (1 . (2 . (3 . (4 . nil))))
(1 2) => (1 . (2 . nil))
(1 . 2) => (1 . 2)
12 3148964
>>145074

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


Брейнфак еще проще в релизации!!!
13 3148976
>>142890 (OP)
Щас бы учить юзлесс язык, идеи которого уже внедрены давным давно во все популярные ОО-языки: php ruby python java c# c++ Go Dart.
# OP 14 3149150
>>148976

> идеи которого


Идеи лиспа: гомоиконность и мощнейшые макросы (которая к примеру позволяет добавить завтипы и линейные типы в язык).
Он может иметь любой синтаксис и любую семантику.

Ни один из перечисленных тобой языков этими свойствами не обладает.

Вот ты можешь в джаву, го, дарт встроить зависимые типы и вывод типов по Хиндли-Милнеру.

Нет, очевидно.

А в лишпе это просто делается макросами:
https://docs.racket-lang.org/ts-reference/index.html
https://docs.racket-lang.org/ts-reference/Experimental_Features.html#%28part._.Dependent_.Function_.Types%29

Можно даже ad-hoc полиморфизм как в Haskell добавить при желании.

Такого тебе никакой кастрированный golang не даст.
15 3214840
Стоит ли покупать книгу ansi common lisp за тысчу?
16 3221445
>>148976
Шо, в какой-то из перечисленных уже завезли полноценную поддержку горячей замены кода?
17 3221446
>>149150

>встроить зависимые типы и вывод типов по Хиндли-Милнеру.


>А в лишпе это просто делается макросами


Ну, не прям уж ПРОСТО, но по крайней мере это возможно сделать.
https://github.com/coalton-lang/coalton вот как раз такой проект для любителей ХМ, монадок и борщелиспа
18 3221483
>>142890 (OP)
Мы чисто хикки.
19 3221512
>>221483
Чисто Ричард?
20 3221674
>>214840
Не стоит даже качать бесплатно.
image17 Кб, 512x420
21 3222480
Нравится Clojure, но не нравится, что вместо документации на оф.сайте какой-то набор блогпостов, разрозненные статьи в разных местах. И ещё что это нормально - собирать стек с нуля, буквально на каждый чих искать какую-то отдельную микрозалупу. Ну это касается веба и новичков, типа меня, потому что я вообще не шарю, а тут каждую хуйню надо подбирать, о которой я вообще не слышал даже никогда и не знал, что они существуют.
Видел на эту тему пост на реддите, 6 летней давности, там чел тоже сокрушался. Видимо за 6 лет нихуя не поменялось. А жаль, прошёл несколько туториалов(встроенный в calva, несколько бесплатных книжек по основам), мне понравилось. Но нужно иметь бэкграунд предметной области, при чём не самый базовый, с кондачка не вкатиться. Может в других лиспах другая картинка, но сомневаюсь.
22 3222618
>>148976
Но эти фишки вставлены через жопу в уже переполненный и уберусложнённый синтакс, которому лишь бы поддерживать ОО. В лиспе ты просто напишешь код, а с другими языками и их заморочками будешь бороться. Даже с питоном.
аниме.webm17,6 Мб, webm,
640x360, 11:51
23 3223498
24 3226939
А правду говорят, что лисперы - ебанутые на всю голову?
image.png121 Кб, 700x800
25 3228397
>>149150
Нету у этом вашем (((ЛИШПЕ))) никакой гомоиконности. Вместо имени функции использовать лямбду нельзя.
26 3228405
>>222618
Угу, "просто пишешь", а потом материшься, потому что непонятно, какого хуя оно не работает, хотя должно. Как в каком-нибудь C++, где надо знать костыли всех стандартов. Какое же говно этот лисп.

Вот на JavaScript лямбды какие надо (если бы не было шизоидных преобразований типов, был бы идеальный язык).
27 3228414
>>228397
Все есть, в полноценном виде, не как у эрланга/пролога.
>>228405
Это разные пространства имен для символов, в зависимости от контекста будет взято значение из таблиц переменных или функций.
Согласен, решение хуйня, потому что кроме возможности назвать переменную list и т.п. ничего не дает, но на самом деле писать funcall/function надо довольно редко даже в весьма функциональном коде. если это так важно, то пробуй схему.
https://stackoverflow.com/questions/1020968/separate-namespaces-for-functions-and-variables-in-common-lisp-versus-scheme
>>228405

>Вот на JavaScript лямбды


Нет, алсо, после "жс" дальше можно не читать.

>если бы не было шизоидных преобразований типов


Если ты пишешь в 2024 на жс вместо тс на своем макакофронте, то ты долбаеб со скилбокса видимо.
28 3228464
>>228414

> про лисп написали плохо! напишу плохо про жс в ответ

29 3228471
>>228464
Я понимаю, если бы ты в пример привел Хаскель и Окамл, там действительно сделано как надо, но ты какую то хуйню из 90ых притащил и еще на типы пожаловался, хотя эту проблему в жс давно решили, но ты, в силу своей отсталости, даже про это похоже не в курсе.
30 3228900
>>228397

>гомоиконности


Значение знаешь?
>>228414

> потому что кроме возможности назвать переменную list и т.п. ничего не дает


https://docs.racket-lang.org/gui/button_.html
Даёт возможность не изобретать на каждый род сущностей по конвенции именования, чтобы не отстреливать себе ноги, случайно перекрыв локальной переменной пакет, класс, функцию, макрос, перезапуск и т.д
31 3230587
Шапка устарела
32 3230823
>>230587
Держи в курсе
33 3231649
>>230823
Держи
34 3232657
>>230587
Что устарело?
35 3233283
>>232657
Всё
36 3233413
Что можно написать на лишпе? У Зибеля только какие-то задачки на построение БД, но я что, зря учил Первый язык, жемчужину колдовства?
37 3233454
>>233413
Что угодно. Но что бы ты не писал, получается емакс.
38 3233480
>>233454
К слову, емаксобраузер https://nyxt-browser.com/
39 3235066
>>149150
при этом применение макросов ломает гомоиконичность, кхе кхе
40 3235164
>>235066
Нет, не ломает.
41 3236859
>>149150

>можносделать



Прошло миллион лет, а лисподебилы так и повторяют свою хуйню, как будто это 2011 и в /це нульчика
42 3237088
Как лисп обходится без статической типизации?
sage 43 3237473
>>237088
Лучше, чем какой-нибудь питухон
https://ideone.com/F3sGzg
44 3237481
>>236859

>можносделать


Причина подрыва? Да, можно. И уже сделали.
45 3243233
Писали ли вы свои лиспы? Это трудно?
46 3243341
>>243233

> Это трудно?


Да.
https://justine.lol/sectorlisp2/
sage 47 3244166
>>237481
перечень людей, кто хочет вместо полноценного языка со всем из коробки на уровне примитивов юзать прикрученную сбоку на макросах дрисню:
конец списка
48 3244470
Как называется интерфейс в стиле волков коммандер?
49 3244603
>>244470
Двухпанельный? TUI? Причем тут лисп?
50 3244632
>>244603
Да, его же легче к программе привязать чем к графическим гуям?
51 3245157
>>142890 (OP)

>гомоиконность


А как вы теперь свои гомоиконы пердолите когда в силе запрет пропаганды ЛГБТ?
52 3245159
А как лисперы зарабатывают на гречу? Вакансий видно только изредка и то только по Clozure. В остальное время приходится уходить в спячку?
53 3245657
>>245159
Скажу тебе по секрету, далеко не всем заказчикам есть дело до используемых технологий. Можешь хоть на бреинфаке с апл писать, лишь бы поставленная задача была решена.
54 3245676
>>244166
Ну и чем тот же коалтон отличается от "полноценного языка"?
55 3245795
>>245657
Но это только если техдир не узнает? Они обычно всякой экзотики как огня боятся.
На фрилансе т.е.?
56 3246099
>>245795
где угодно
договаривайся с тимой
все равно если на выходе тупо докер контейнер то все равно на чем писать
у меня в конторе так на эрланге пишут, такая же нишевая хреь как лисп
57 3246126
Я правильно понимаю, что в cl в вебе у вас всё делается дедовскими способами, просто есть веб сервер и всё, остальное надо писать самому? И ни о каком интерактивном вебе искаропки не идёт речи(максимум вебсокеты)?
59 3246279
>>246099
Ну.. на эрланге проще, даже пачка вакансий щас висит. Сам на эликсире пишу.
60 3246301
>>246279
Пачка это 3 штуки на всю Россию? Ну да, чуть побольше чем у лиспа, но программистов у него примерно столько же, лисп хотя бы в парочке вузов встречается.
61 3246559
>>246129
Ну т.е. да.
62 3246585
У эликсира хотя бы человеческая(одна из лучших) документация, есть отличная поддержка разных редакторов, менеджер проектов mix и т.д.
А скобочники за 146 лет существования лиспа так нихуя нормально и не сделали. Единственный полноценный редактор у них это емакс(пиздец), типа очень быстро в нём работать. Сука ты на нём пишешь не отрываясь по несколько часов что ли? Нет, ты точно также сидишь, думаешь, что-то пробуешь, потом эвалишь и так по кругу, где бля скорость нахуй. В одной операции, которая нужна примерно никогда? Хуита короче. Просто не экосистема, а какой-то балаган.
63 3246808
>>246559
Да, только голый ханчентут и статика. Статья именно об этом.
15941212862910.png194 Кб, 400x400
64 3246812
>>246585
Ты clhs/clus не нашел и плагин для своего вскода или что?
65 3246998
>>246812

>clhs/clus


нечитаемая хуета
если ты считаешь это нормальным, то ты походу из сторожки своей не выходил лет 40

>плагин для своего вскода


плагины есть, и вроде даже не один, но не сравнится с функционалом той же кложуры, максимально примитивная хуета, что есть, что нет
да и в целом почему в cl не запилили за столько лет нормальной инфраструктуры, тот же квиклисп как я понял по сути каждый раз загружается в репл при инициализации новой сессии, т.е. ебать костыль
66 3247000
>>246998

>той же кложуры


плагина, офк(calva)
67 3247394
>>246998

>нечитаемая хуета


Да я уже понял, что с чтением у тебя сложности, даже шапку никак осилить не можешь.
Там есть ссылка на документацию в современной верстке, а там, в свою очередь, ссылка на ещё одну - пользуйся. Ну или не пользуйся.

>плагины есть, и вроде даже не один


>но не сравнится с функционалом той же кложуры


Какой ты пробовал и чем не сравнится?

>тот же квиклисп как я понял по сути каждый раз загружается в репл при инициализации новой сессии, т.е. ебать костыль


Вот это да! Ух, а какие непотребства динамический компоновщик выделывает - тебе лучше вообще не знать
68 3247418
>>247394
ну я так и думал, что ты охранитель, вот поэтому лисп и находится на уровне засохшего кала, потому что нет человеческих условий даже просто начать что-то делать
69 3249132
Во многих проектах видел упоминание ocicl и clpm в качестве альтернативы quicklisp'у. Что за покемоны и кто из них теперь главный? Квиклисп уже можно закапывать? Помогите разобраться
70 3250280
>>246585
никогда не понимал подобные визги
какой тулчейн тебе нужен? сырцы это просто текст, лисп машина это просто лиспмашина
хуй знает что тебе нужно чтобы писать тексты и пихать их в лиспмашину
ну вот что? смузи?

алсо по сабжу треда
вы ваще компилите свои коекаки в бинари? или в объектники? или похуй?
71 3250367
>>250280

>вы ваще компилите свои коекаки в бинари? или в объектники? или похуй?


Если просто скрипт, то обхожусь росвеллом. Если что-то крупнее - asdf program-op
https://lispcookbook.github.io/cl-cookbook/scripting.html#with-asdf
72 3250383
>>250280

>хуй знает что тебе нужно чтобы писать тексты и пихать их в лиспмашину


>ну вот что? смузи?


С Л А Й М
Л
А
Й
М
73 3250388
>>250383
ну и поставь себе слайм, или еще какой плагин хуягин их сейчас силлиарды
вот блять ноют ебаные нытики аррря как писать букафки я нимагу печатать у миня адин палиц а не восимь рук пук хрюк аря
хартьфу блять
74 3250602
>>250367
почитал сей материал, благодарочка
лень искать в кукбуке поэтому спрошу: можно ли скрестить объектник лиспа с объектниками например сишки и зашить в бинарь? вроде бы есть трансляторы лисп ту си, но этот путь мне не очень нравится

ну допустим на лиспе фибку хуйнуть (сам прото и тело функции), а на сихе мэйн и вызов с параметрами пользователя

такой вот простецкий пример чтобы вычислить фибку до миллионного числа допустим, но на традиционных декларативно императивных языках, чтобы не сильно бошку ломать об лисп
75 3250758
>>250602

>можно ли скрестить объектник лиспа с объектниками например сишки и зашить в бинарь?


ecl именно для этого и нужен, правда, код он генерирует менее быстрый, чем sbcl.
Впрочем, sbcl тоже научился делать библиотеки:
https://github.com/40ants/sbcl-shared-library-examples/tree/master
https://github.com/quil-lang/sbcl-librarian
76 3250768
>>250758
я же не про либы спрашивал, а про объектник
с фаслом чо можно наколдовать? есть в нем таблица символов?
77 3250773
>>250768

>с фаслом чо можно наколдовать?


Ничего. Только загрузить в образ. К тому же, формат фаслов не документирован и может меняться от версии к версии.
78 3251341
>>246301
Прямо сейчас, только на хехе: по эрлангу от 7 компаний, по эликсиру от 10. А по лиспу сейчас их сколько, господин обосрамс?
79 3251342
Общелисп с батарейками: https://ciel-lang.org

>- Is CIEL yet another language re-design?


>- Absolutely not. CIEL is plain Common Lisp. We don't redefine the semantics of the language. CIEL is a collection of useful libraries, shipped as one Quicklisp meta-library, a core image and an executable.

80 3251599
>>142890 (OP)

> гомоиконность


Ха-ха, гомики вы все!
image855 Кб, 2516x1190
81 3252140
итак
встала хуем задача написать очередную тулзу под лисп
а в частности лиспкомпилер
да да я вкурсе что sbcl итак компилит сырцы хуе мое речь как раз пойдет об этом
неудобство заключается в том что строчку (compile-file "filename") нужно держать в сырце, а я хочу оставить сырцы без этих лишних телодвижений

итак что мы имеем:
сырец <filename.lisp>
sbcl
zsh (bash cl)

что я хочу:
$ ls
filename.lisp

$ cl filename.lisp
$ ls
filename.lisp filename.fasl

$ cl -b filename.lisp
$ ls
filename.lisp filename.fasl filename.exe*

я вот думаю, что нужно снять копию с сырца, дописать в копию враппер defun main(), дописать в копию последней строкой функцию компила (соответственно если флаг был то компил в бинарь, если флага не было - в fasl) и затем в хидден режиме этот модифицированный сырец скормить серверу, чтобы он ничо не пукал в консоль, но высрал файлик, затем удалить промежуточный мусор

звучит как задача для мейка, но я не хочу плодить мейкфайлы для всяких хеловордов на лиспе, а потому мне нужен либо баш, либо bin/cl

затем надо просто прописать очередной алиас в zshrc:
alias cl='compile-lisp.sh'
сунуть эсаш в юзербин и сделать его экзекьютабл

так как тут тред лиспа - помогите с bin/cl скриптом для этой хуйни? я только начал изучать лисп (да и в баше не шарю), но тулзу для удобства пользования очинь хочица
image855 Кб, 2516x1190
81 3252140
итак
встала хуем задача написать очередную тулзу под лисп
а в частности лиспкомпилер
да да я вкурсе что sbcl итак компилит сырцы хуе мое речь как раз пойдет об этом
неудобство заключается в том что строчку (compile-file "filename") нужно держать в сырце, а я хочу оставить сырцы без этих лишних телодвижений

итак что мы имеем:
сырец <filename.lisp>
sbcl
zsh (bash cl)

что я хочу:
$ ls
filename.lisp

$ cl filename.lisp
$ ls
filename.lisp filename.fasl

$ cl -b filename.lisp
$ ls
filename.lisp filename.fasl filename.exe*

я вот думаю, что нужно снять копию с сырца, дописать в копию враппер defun main(), дописать в копию последней строкой функцию компила (соответственно если флаг был то компил в бинарь, если флага не было - в fasl) и затем в хидден режиме этот модифицированный сырец скормить серверу, чтобы он ничо не пукал в консоль, но высрал файлик, затем удалить промежуточный мусор

звучит как задача для мейка, но я не хочу плодить мейкфайлы для всяких хеловордов на лиспе, а потому мне нужен либо баш, либо bin/cl

затем надо просто прописать очередной алиас в zshrc:
alias cl='compile-lisp.sh'
сунуть эсаш в юзербин и сделать его экзекьютабл

так как тут тред лиспа - помогите с bin/cl скриптом для этой хуйни? я только начал изучать лисп (да и в баше не шарю), но тулзу для удобства пользования очинь хочица
82 3252166
>>252140
Ты roswell переизобретаешь что ли?
image5 Кб, 228x250
83 3252178
>>252166

>roswell


неа, не похоже, это какой то пакетник, а я переизобретаю хук
может на днях сам осилю, сейчас не особо есть время ковыряться
84 3252197
>>252178
Не только, это ещё и альтернатива почившему cl-launch -- пускалки скриптов. Твой пример как раз оттуда.
Показываю, как пользоваться:
1. ros init yopta # генерируешь скелет скрипта
Successfully generated: yopta.ros
2. Открываешь своим любимым редакторомемаксом и пишешь свой скрипт. Вот тебе пример с зависимостями: https://dpaste.org/bNDSv
3. Запускаешь ./yopta.ros
Первый запуск потребует какое-то время на компиляцию всех зависимостей
4. При необходимости создаешь бинарник: ros build ./yopta.ros
85 3252198
>>252197
Чутка обкакунькался в примере
https://dpaste.org/03R3q
86 3252240
>>252197
так мне не нужен генератор скрипта
мне нужен скрипт
так что снова нет, я не переизобретаю розвел, я переизобретаю хук
87 3252307
>>251341
Только тебя на эти 7 ваканский один хуй не возьмут потому что ты кроме смузиегвого джаваскриптопитона с 10000 ваканский ничего не осилил, ну и нахуй ты тут перед нами выебываешься?
88 3252411
>>252240
Ты какую проблему пытаешься решить? Из твоей шизофазии сложно что-то понять, можно только догадываться. Ясно только одно: ты явно делаешь что-то не так.
Тебе нужен инструмент для превращения скриптов в исполняемые бинарники или что?
89 3252603
>>252411
консоль первый раз увидел?
90 3252639
>>252603
Понятно. Ладно, набивай свои шишки сам.
91 3253119
>>252307
Опять обосрался... Прямо таки обосрамс-комбо. Ну соберись, что же ты...
Я последние 4 года только и работаю эликсир/эрланг разработчиком.
92 3253847
>>253119
Что разрабатываете, сколько плотют?
93 3253859
>>253847
Система мониторинга и управления, SCADA выходит.
Что-то я не вижу 2х зарплат как ОП пишет. Может немножко выше среднего, но гораздо больше вкусных вакансий по Python/Go/Rust. Наверно надо ждать западный хаир, там будет вкуснее надеюсь. Щас 250к, 13 лет.
94 3253860
>>253859
Ой, это в эликсир треде ОП писал про 2х, не тутошний.
95 3259392
Какой лисп имеет самую лаконичную спецификацю?
96 3259393
>>259392
picolisp
97 3260637
>>259392
Схема конечно
У пиколиспа вообще не спека >>259393
98 3260728
>>260637
Язык одной реализации, стандарта у него, конечно же, нет.
Но тем не менее схемы он лаконичнее.
99 3260868
>>260637
Там их целых 7 редакций
100 3261170
>>260868
R5rs самая маленькая, r7rs современнее. А так зависит от того, для чего спеку читаешь - мне как энтузиасту зашла r7rs своей лаконичностью и выверенностью. Только дин диспатча не хватало, но он прикручивается как и половина фич через макросы+cps
101 3266091
Вкачусь в тред с тупым вопросом: почему в CL принято устанавливать модули quicklisp'ом? В линуксах, например, не очень приветствуется метод установки тех же питонячьих модулей pip'ом и они разбиваются на пакеты конкретного дистрибутива. В CL же подобной тенденции нет. Во всех дистрибутивах (кроме мб guix'а) модули ставятся quicklisp'ом. Есть ли в этом сакральный смысл?

Вроде бы у Racket'а комунити меньше, но при этом они имеют свой оверлей в генте:

https://gitlab.com/gentoo-racket/gentoo-racket-overlay
sage 102 3266095
>>266091

>почему в CL принято устанавливать модули quicklisp'ом?


Потому что удобно.

>Есть ли в этом сакральный смысл?


Встречный вопрос: если ли сакральный смысл в дополнительном опакечивании для целого зоопарка дистрибутивов?
103 3266107
>>266095

> если ли сакральный смысл в дополнительном опакечивании для целого зоопарка дистрибутивов?



У тех же дистрибутивов линукса, например, не принято использовать сторонние пакетные менеджеры для system-wide вещей, т.к. это усложняет отслеживание версий модулей/пакетов и может превращать систему в свалку без централизации управления системными либами. У мейнстримовых дистрибутивов (арч, генту, дебиан) подобное прослеживается с тем же перлом, руби и питоном. Но вообще не прослеживается с общелиспом.

Да и опакечивание делается пользователями конкретного дистрибутива, не для зоопарка в целом. Но то, что вообще никто не захотел заморачиваться с этим языком — немного интересно стало.
sage 104 3266108
>>266107

>сторонние пакетные менеджеры для system-wide вещей


Пакеты для cl не являются общесистемными и нужны только во время разработки, ибо софт распространяется в виде цельных образов.
sage 105 3266117
>>266108

>и нужны только во время разработки


Ну и сборки, да.
Обновить тред
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее