Size: a a a

Compiler Development

2020 February 21

VK

Val Krylov in Compiler Development
Alexander Tchitchigin
Тогда уж лучше Stackless (Python) вспомнить - оно и ближе к тематике чата будет.
И не только. По мотивам были модули (тот же gevent), предоставляющие большинство асинхронных возможностей Stackless в обычном CPython. Вообще, трагичная история, когда в языке уже была нормальная асинхронщина через сторонние модули, но её заменили на "стандартное" говно и палки asyncio.
источник

AT

Alexander Tchitchigin in Compiler Development
Val Krylov
И не только. По мотивам были модули (тот же gevent), предоставляющие большинство асинхронных возможностей Stackless в обычном CPython. Вообще, трагичная история, когда в языке уже была нормальная асинхронщина через сторонние модули, но её заменили на "стандартное" говно и палки asyncio.
Stackless был отдельным интерпретатором как раз со спагетти-стеками.
источник

AT

Alexander Tchitchigin in Compiler Development
(Не знаю, он ещё живой или нет?)
источник

MM

Mikhail Maltsev in Compiler Development
Илья Чистяков
вот у меня получилось сокеты сбоку сделать, но без select/epoll, возможно через них сокеты уже будут в самом лупе задействованы
Если сокеты сбоку, то как это может быть асинхронно? Идея ведь в том, что пока один fiber ждёт ввод/вывод, он передает управление другим fiber-ам. А epoll как раз позволяет определить последнюю завершенную операцию ввода/вывода, чтобы можно было передать управление нужному fiber-у
источник

VK

Val Krylov in Compiler Development
Alexander Tchitchigin
Stackless был отдельным интерпретатором как раз со спагетти-стеками.
Да. Но основное - возможность написания асинхронного кода как синхронного, что снимает лишнюю когнитивную нагрузку с разработчика. Тем более, что для тредов это всегда было так.
источник

ИЧ

Илья Чистяков in Compiler Development
Mikhail Maltsev
Если сокеты сбоку, то как это может быть асинхронно? Идея ведь в том, что пока один fiber ждёт ввод/вывод, он передает управление другим fiber-ам. А epoll как раз позволяет определить последнюю завершенную операцию ввода/вывода, чтобы можно было передать управление нужному fiber-у
моя идея в том, что aio это не только про сокеты, главное чтоб был механизм реализовать любой неблокирующий io вызов и код поделять на кусочки
источник

MM

Mikhail Maltsev in Compiler Development
В любом случае фреймворк должен включать в себя планировщик, который должен знать обо всех io операциях и уметь быстро определить следующую завершившуюся
источник

ИЧ

Илья Чистяков in Compiler Development
Mikhail Maltsev
В любом случае фреймворк должен включать в себя планировщик, который должен знать обо всех io операциях и уметь быстро определить следующую завершившуюся
у меня проблема в том что луп жрёт проц, но кажется если всё сделать через select, то луп будет на селекте зависать и ждать новые корутинки
источник

MM

Mikhail Maltsev in Compiler Development
Да, все так. Только лучше epoll, он быстрее
источник

DP

Dmitry Ponyatov in Compiler Development
FORTRAN ONE LOVE
срач развести, на каком языке лучше это запилить :)
явно хотят специальный язык для программирования чисто асинхронки
источник

FO

FORTRAN ONE LOVE in Compiler Development
Dmitry Ponyatov
явно хотят специальный язык для программирования чисто асинхронки
go?(-:
источник

AT

Alexander Tchitchigin in Compiler Development
Dmitry Ponyatov
явно хотят специальный язык для программирования чисто асинхронки
Так они давно есть. 🤷‍♀️
источник

AT

Alexander Tchitchigin in Compiler Development
Пф-ффф!.. 😒
источник

DP

Dmitry Ponyatov in Compiler Development
акторы vs CSP — в чем отличия?
источник

AT

Alexander Tchitchigin in Compiler Development
Dmitry Ponyatov
акторы vs CSP — в чем отличия?
Практически - особо нет, но с точки зрения именно теории/формализации - детали различаются.
источник

ИЧ

Илья Чистяков in Compiler Development
где-то видел мнение создалея Эрланга, что вся эта ваш асинхронщина полное Г, только усложняет всё, вот в Эрланге всё максимально круто
источник

EM

Evgenii Moiseenko in Compiler Development
источник

EM

Evgenii Moiseenko in Compiler Development
простите, не удержался
источник

RE

Roman Elizarov in Compiler Development
RIP. Последний раз видел его на GOTO Copenhagen 2019. Он делал доклад. Пришло несколько сот человек. Он спросил "кто использует Erlang". Никто не поднял руку.
источник

AT

Alexander Tchitchigin in Compiler Development
Roman Elizarov
RIP. Последний раз видел его на GOTO Copenhagen 2019. Он делал доклад. Пришло несколько сот человек. Он спросил "кто использует Erlang". Никто не поднял руку.
Не признались просто... 😂
источник