Очень приятная статья, в которой Иван Гришаев рассказывает, зачем нужен Clojure. Мне очень понравилось. Пойдите, почитайте. Она очень короткая, чесслово.
#fp #clojure
https://grishaev.me/why-clj
#fp #clojure
https://grishaev.me/why-clj
grishaev.me
Зачем нужна Кложа
Когда спрашивают, зачем изучать Кложу, мы слышим что-то неубедительное. Репл,функциональный подход, неизменяемость. Это слабые аргументы. Их нет в мире тех,к...
Вышел 4-й выпуск Run Loop. К нам пришёл Никита Прокопов - создатель шрифта Fira Code, нескольких проектов на Clojure и grumpy.website.
#runloop #podcast #font #clojure
iTunes: https://itunes.apple.com/ru/podcast/run-loop-podcast/id1409669962?mt=2
SoundCloud: https://soundcloud.com/runloop-podcast/run-loop-4-nikita-prokopov
#runloop #podcast #font #clojure
iTunes: https://itunes.apple.com/ru/podcast/run-loop-podcast/id1409669962?mt=2
SoundCloud: https://soundcloud.com/runloop-podcast/run-loop-4-nikita-prokopov
Кратко и ёмко такое мне описать сложно, но я попробую: доклад с размышлениями создателя Clojure на тему всех этих
#talk #clojure #optional
Optional<String> и String?. И, собственно, к чему он пришёл для кложи: в разных местах нам нужно требовать разного от данных (где-то нужен User с firstName и lastName, а где-то - с id и address, и это всё ещё тот же User c optional полями), но делать это хочется как-то удобно и элегантно чтоли. #talk #clojure #optional
YouTube
Maybe Not - Rich Hickey
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
Смотрите какой прикольный визуальный REPL для Clojure. Не представляю, зачем конкретно мне что-то такое могло бы сейчас понадобиться, но выглядит прямо внушительно.
#talk #tool #clojure
#talk #tool #clojure
YouTube
Data Rabbit - Alpha 1, Quick Intro / Overview (cljs-only version)
A flow-based Clojure(script) eval/REPL canvas for "composable" visual exploration, experimentation, and data observability.
https://datarabbit.com/
https://datarabbit.com/
Все мы знаем и любим Никиту tonsky. Есть у него такой проект: Humble UI.
Собственно, вот пост, в котором много мыслей по поводу сигналов (так он называет что-то похожее на observable) для управления состоянием UI.
#clojure #declarative #ui
Humble UI is a desktop UI framework for Clojure. No Electron. No JavaScript. Only JVM and native code.Собственно, вот пост, в котором много мыслей по поводу сигналов (так он называет что-то похожее на observable) для управления состоянием UI.
#clojure #declarative #ui
tonsky.me
Humble Chronicles: Managing State with Signals
An experiment of using incremental computations for managing state in Humble UI
🔥6🥴2
Tonsky с демо и докладом про Humble UI. Это такой десктопный UI фреймворк на Clojure. Очень прикольно!
#talk #clojure #ui
#talk #clojure #ui
Тонский рассказывает и показывает, как они делали clj-reload - библиотеку для более умного релоада кложа кода.
#clojure #repl
#clojure #repl
💯1
А тут они же описывают, как именно они хотят построить что-то лучше, чем Firebase, Supabase и т.п. Стараются выдать не маркетинговый буллшит, как часто бывает, а пояснить проблему и их способ эту проблему решить. Графовые БД, Datalog и т.п. К слову, астрологи подсказывают, что Никита наш Прокопов к ним пошёл всячески улучшать это дело. Бог у дапамогу, так бы мовіць.
#db #firebase #clojure
#db #firebase #clojure
Instantdb
A Graph-Based Firebase
Попал под руку доклад tonsky, где он показывает свой Clojure workflow в Sublime Text. Многое из этого он сам и пилил. Поэтому там есть и подсветка синтаксиса с хорошим пониманием языка, и всякие удобства вокруг репла, и разные библиотечки, улучшающие жизнь в целом и исправляющие некоторые косяки кложи.
#talk #clojure #editor
#talk #clojure #editor
tonsky.me
Talks
Доклад про историю асинхронности / мультипоточности в Clojure. От стандартных future и подобного, к core.async с каналами а-ля Go, к новой идее flow. Кажется, пытаются переизобрести микс Erlang и Redux, и это круто!
#talk #clojure #async
#talk #clojure #async
YouTube
Clojure core.async Evolution by Alex Miller #FnConf 2025
The Clojure core.async library has been a cornerstone for asynchronous and concurrent programming in Clojure for many years. core.async features ""go blocks"" which transform ordinary Clojure code into pausable state machines through compile-time analysis…
Разработка ждёт балета
Доклад про историю асинхронности / мультипоточности в Clojure. От стандартных future и подобного, к core.async с каналами а-ля Go, к новой идее flow. Кажется, пытаются переизобрести микс Erlang и Redux, и это круто! #talk #clojure #async
Тут выше всплывал Clojure core.async.flow. Они добили это дело до первой альфы. В докладе (достаточно короткий, ~20 мин) можно чуть подробнее посмотреть, что это, как работает, какой тулинг вокруг этого уже успели накрутить. Выглядит одновременно и интересно, и пугающе: как будто очень уж много уровней indirection привносит в систему, и чтобы лучше понимать, что там вообще происходит, пришлось строить тул с визуализацией.
#talk #clojure
#talk #clojure
YouTube
A quick demo of core.async.flow
core.async.flow is a new addition to core.async that lets you build long-running systems of processes, connected by channels. You provide (usually) pure functions of logic for each process and flow provides - topology, configuration, lifecycle, monitoring…
👏1😁1
Прикольный доклад про всю мощь полноценного REPL на примере Clojure. Показывают, чем это отличается от shell в python / js / java / … и какие возможности открывает. Я бы сказал, что хоть всё там и крутится вокруг Clojure, оно всё ещё достаточно общее, просто показывают, как может быть прикольно.
#talk #repl #clojure
#talk #repl #clojure
Vimeo
Chicago Clojure - 2017-06-21 - Stuart Halloway on Repl Driven Development
This is "Chicago Clojure - 2017-06-21 - Stuart Halloway on Repl Driven Development" by Spantree Technology Group, LLC on Vimeo, the home for high quality…
🔥2
Первая часть разбора устройства persistent Clojure vector. Как так получается, что любая манипуляция создаёт новый immutable вектор, но проблем с памятью / производительностью на деле это не создаёт. Разбирается устройство базовых операций: добавить, удалить, поменять элемент по индексу.
#clojure #cs #datastructure
#clojure #cs #datastructure
👍2🔥2
И сразу вдогонку вторая часть: как на таких векторах-деревьях достаточно эффективно делать лукапы.
#clojure #cs #datastructure
#clojure #cs #datastructure