Size: a a a

2020 April 01

AE

Alexey Egorov in Lisp Forever
Там рил сложно.
источник

AE

Alexey Egorov in Lisp Forever
Вот как Эрланг это решает, например: http://www.erlang.se/euc/08/euc_smp.pdf
источник

AP

Alex Peresmeshnik in Lisp Forever
Ну вот в сбцл однозначно есть многопоточность из коробки, как минимум это REPL демонстирует, зеленая не зеленая сказать не могу, это нужно копать как именно оно реализовано. Но без проблем даже не спрашивая о выведении в отдельные треды можно по нажатию C-c C-c забросить в slime экземпляры одной и той же функции (loop например) в несколько потоков с общими данными
источник

AP

Alex Peresmeshnik in Lisp Forever
источник

AP

Alex Peresmeshnik in Lisp Forever
и вот еще небольшое обсуждение. Упоминают некий Gambit-C
источник

AE

Alexey Egorov in Lisp Forever
Alex Peresmeshnik
Ну вот в сбцл однозначно есть многопоточность из коробки, как минимум это REPL демонстирует, зеленая не зеленая сказать не могу, это нужно копать как именно оно реализовано. Но без проблем даже не спрашивая о выведении в отдельные треды можно по нажатию C-c C-c забросить в slime экземпляры одной и той же функции (loop например) в несколько потоков с общими данными
А как репл это демонстрирует?
источник

AE

Alexey Egorov in Lisp Forever
Слай/м юзает бордо-тредс, если я всё правильно помню.
источник

AP

Alex Peresmeshnik in Lisp Forever
Alexey Egorov
А как репл это демонстрирует?
объявил глобальную племенную, сделал функцию, которая ее инкрементирует раз в две секунды, наклацал C-c C-c и раз две секунды переменная инкреиентировалась на количество одновременных потоков
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
Alex Peresmeshnik
Ну вот в сбцл однозначно есть многопоточность из коробки, как минимум это REPL демонстирует, зеленая не зеленая сказать не могу, это нужно копать как именно оно реализовано. Но без проблем даже не спрашивая о выведении в отдельные треды можно по нажатию C-c C-c забросить в slime экземпляры одной и той же функции (loop например) в несколько потоков с общими данными
она есть не для всех архитектур
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
на arm что-то хреновое с потоками даже у сбцл их нет
источник

LL

Lämppi Lütti in Lisp Forever
Alex Peresmeshnik
и вот еще небольшое обсуждение. Упоминают некий Gambit-C
Это схема
источник

AP

Alex Peresmeshnik in Lisp Forever
Vλadimir (Hawthorne the Toolmaker)
на arm что-то хреновое с потоками даже у сбцл их нет
Ну что хренова - то вполне. Но все-таки они есть, на арме же многопоточные веб-сервера запускают )
источник

AE

Alexey Egorov in Lisp Forever
Alex Peresmeshnik
объявил глобальную племенную, сделал функцию, которая ее инкрементирует раз в две секунды, наклацал C-c C-c и раз две секунды переменная инкреиентировалась на количество одновременных потоков
Так это не репл sbcl, это слинк/сванк.
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
Alex Peresmeshnik
Ну что хренова - то вполне. Но все-таки они есть, на арме же многопоточные веб-сервера запускают )
я говорю про arm+sbcl
источник

AP

Alex Peresmeshnik in Lisp Forever
Alexey Egorov
Так это не репл sbcl, это слинк/сванк.
Типа новый инстанс лисп-машины запускается, или как? Не дошел еще до таких тонкостей
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
там не собрать stumpwm например, а очень хотелось
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
на малину накатить
источник

AE

Alexey Egorov in Lisp Forever
Alex Peresmeshnik
Типа новый инстанс лисп-машины запускается, или как? Не дошел еще до таких тонкостей
Нет, слинк это либа такая, она использует потоки, и предоставляет RPC, которым как раз пользуется слай, чтобы посылать код из емакса в лисп.
источник

V(

Vλadimir (Hawthorne the Toolmaker) in Lisp Forever
Потому как емнип арм-релизы есть, но бордовые треды рапортуют, что тредов нет. И чо делать?
источник

AE

Alexey Egorov in Lisp Forever
Vλadimir (Hawthorne the Toolmaker)
Потому как емнип арм-релизы есть, но бордовые треды рапортуют, что тредов нет. И чо делать?
Контрибутить.
источник