Size: a a a

Clojure — русскоговорящее сообщество

2019 May 13

ST

Sergey Tkachenko in Clojure — русскоговорящее сообщество
только качество записи не очень получилось
источник

ST

Sergey Tkachenko in Clojure — русскоговорящее сообщество
Ilya Pomaskin
Minesweeper был?
источник

A

Alexander in Clojure — русскоговорящее сообщество
Sergey Tkachenko
не знаю, но это самое готовое из коробки решение
Ну так то ещё duct есть, но он так же под все условия не подходит
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
Взял и прицепил lacinia. В чем проблема-то?
источник

G

Gleb in Clojure — русскоговорящее сообщество
Спасибо!
источник

A

Alexander in Clojure — русскоговорящее сообщество
Art Semyonov (vi/vim)
Взял и прицепил lacinia. В чем проблема-то?
Это вопрос к автору вопроса, у меня никаких проблем нет
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Может быть есть какой-нибудь материал, видео, книга, объясняющая как работать с core.async.
Когда его использовать, когда нет.

Как это с ассинхронными ring обработчиками связать или подобным?
Как исключения обрабатывать, в каких случаях какие механизмы лучше подходят?
Как закрыть открытые каналы обрабатываемого запроса, если случилась ошибка?

Просто подавляющее большинство статей говорят
вот есть канал
вот есть го-блок и можно писать последовательный код

А дальше?
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
может у кого-то есть опыт работы с async клиентом datomic, его апи как раз каналы возвращает и туда же ошибки пишет
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
core.async довольно низкоуровневая библиотека. Как вариант, посмотри на manifold. По нему есть примеры на сайте aleph.io
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Ivan Grishaev
core.async довольно низкоуровневая библиотека. Как вариант, посмотри на manifold. По нему есть примеры на сайте aleph.io
А manifold чем лучше?
Просто как я понял, manifold это общий знаменатель для разных библиотек, который при этом имеет ограниченную функциональность. «разных библиотек» тут видимо только одна core.async ну и парочка библиотек с промисами.
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
Alexander
Это вопрос к автору вопроса, у меня никаких проблем нет
Это мое ворчание вслух, не было адресовано конкретному человеку.
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
IDE, фреймворки, стартер паки – вот это вот все.
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
Ivan Grishaev
core.async довольно низкоуровневая библиотека. Как вариант, посмотри на manifold. По нему есть примеры на сайте aleph.io
Ну не такая уж и низкоуровневая.
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
Манифолд более высокоуровневый и сразу идет с батарейками. Например, асинхронный веб-сервер и клиент, веб-сокеты, стримы. Некоторые библиотеки предлагают manifold-обвязки, например клиент к редис, Кассандре
источник

A

Alexander in Clojure — русскоговорящее сообщество
Ivan Grishaev
Манифолд более высокоуровневый и сразу идет с батарейками. Например, асинхронный веб-сервер и клиент, веб-сокеты, стримы. Некоторые библиотеки предлагают manifold-обвязки, например клиент к редис, Кассандре
по-моему ты в кучу манифолд и алеф свалил, или я заблуждаюсь?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
алеф это всякие ништяки поверх манифолда.
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
Может быть есть какой-нибудь материал, видео, книга, объясняющая как работать с core.async.
Когда его использовать, когда нет.

Как это с ассинхронными ring обработчиками связать или подобным?
Как исключения обрабатывать, в каких случаях какие механизмы лучше подходят?
Как закрыть открытые каналы обрабатываемого запроса, если случилась ошибка?

Просто подавляющее большинство статей говорят
вот есть канал
вот есть го-блок и можно писать последовательный код

А дальше?
В целом, любое чтиво про CSP (Communicating Sequential Processes) должно ответить на большинство вопросов. core.async просто реализация концепции. Причем, довольно простая.
источник

A

Alexander in Clojure — русскоговорящее сообщество
алеф это ништяки поверх нетти с помощью манифолда
источник

AS

Art Semyonov (vi/vim) in Clojure — русскоговорящее сообщество
Ivan Grishaev
Манифолд более высокоуровневый и сразу идет с батарейками. Например, асинхронный веб-сервер и клиент, веб-сокеты, стримы. Некоторые библиотеки предлагают manifold-обвязки, например клиент к редис, Кассандре
Во, так лучше. Не core.async низкоуровневый (он уже высокоуровневый над тред-пулом), а именно манифолд – высокоуровневый.
источник

A

Alexander in Clojure — русскоговорящее сообщество
> Например, асинхронный веб-сервер и клиент, веб-сокеты
в манифолде ничего этого нет, я проверил )
источник