TGViewer
dd if=/dev/stuff of=/dev/tg dd if=/dev/stuff of=/dev/tg @randomstuffilike · 2.48K subscribers
Post #921 4.53K
Язык, который привлекает мое внимание в последнее время всё больше и больше — Unison.

Из интересного:
1. наличие как структурной, так и номинальной типизации из коробки благодаря ключевым словам structural и unique:
-- одинаковые типы:
structural type Maybe x = None | Just x
structural type Option x = Nothing | Some x
> Just 5 === Some 5
⧩
true


-- разные типы:
unique type Maybe x = None | Just x
unique type Option x = Nothing | Some x

> Just 5 === Some 5
The mismatch is because these types differ:
Option
Maybe


2. Наличие алгебраических эффектов в виде abilities:
f : '{Gen} Text
f = gen.Text.ascii

g : Text -> '{IO, Exception} ()
g txt = '(printLine txt)

-- abilities в композиции функций являются суммой abilities частей:
f_g : '{Gen, IO, Exception} ()
f_g = '(!(g !f))


3. Хранение кода в виде AST — что делает кэширование/мемоизацию/рефакторинг/поиск/etc гораздо более простым и мощным, нежели в случае хранения кода в виде текста. Это позволяет делать разные интересные штуки — вроде ускорения сборки кода благодаря закэшированным результатам сборки используемых частей библиотек.

Хороший обзор Unison сделал Рунар Бьярнасон в выступлении на Lambda Jam’21: https://www.youtube.com/watch?v=DF6zt0Q-pz4. Также могу смело порекомендовать отличную статью из их блога о том, как написать распределенную Spark-like структуру данных: https://www.unison-lang.org/articles/distributed-datasets.
www.unison-lang.org Unison | A friendly, statically-typed, functional programming language from the future · Unison programming language A friendly programming language from the future.
More from @randomstuffilike
  1. Mar 13, 2026Задолбался, что приходится быть chief software sloperator на работе, поэтому в терапевтиче…
  2. Feb 28, 2024Моделирование доменных типов на расте: https://mmapped.blog/posts/25-domain-types.html
  3. Dec 5, 2023Слайды доклада Томаса Микулы «Monads Are Not About Sequencing»: https://continuously.dev/p…
  4. Nov 9, 2023Design Guidelines for Domain-Specific Languages Очень хороший пейпер, предлагающий 26 гайд…
  5. Oct 19, 2023И чуть более развернутый пост от автора: https://zackoverflow.dev/writing/flappy-bird-in-t…
  6. Oct 19, 2023https://twitter.com/zack_overflow/status/1715042340514017559 — Flappy Bird на тайплевеле т…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →