en
Feedback
dd if=/dev/stuff of=/dev/tg

dd if=/dev/stuff of=/dev/tg

Open in Telegram

Музыка: @randommusicilike 18+. По всем вопросам, кроме рекламы: @rsil_feedback_bot По вопросам рекламы (внимательно читайте приветственное сообщение): @rsil_ads_bot

Show more
2 932
Subscribers
No data24 hours
No data7 days
No data30 days
Posts Archive
Самое важное решение в моей жизни с @lene_love
Самое важное решение в моей жизни с @lene_love

Карл фон Госсеринг потратил 76 лет на написание трактата о часах. Об одник конкретных часах — часах-фонаре Николаса Валлина. В ходе написания этот трактата он предвосхитил специальную теорию относительности, поднял вопрос о проблеме останова, и даже построил исчисление для моделирования часовых механизмов. Насладиться прекрасным тредом: https://threadreaderapp.com/thread/1467417990744649728.html

Самое любопытное здесь — табличка с бенчмарками относительно JVM и ноды. Вопросы, конечно остаются — скажем, на код остальных
Самое любопытное здесь — табличка с бенчмарками относительно JVM и ноды. Вопросы, конечно остаются — скажем, на код остальных примеров хотелось бы тоже взглянуть, — но значения времени холодного старта и потребления памяти вызывают заинтересованность, как минимум.

Вот и пригодилась компиляция Scala → JavaScript. Только не для фронтенда. Daniel Spiewak в концепте serverless-фреймворка предлагает компилировать код на Scala в JS, чтобы запускать его на движке V8. Таким образом получится избежать проблемы холодного старта JVM для короткоживущих функций. V8 не надо прогревать, а код для него можно писать всё на той же Scala. Не зря ведь scala.js делали и библиотеки под него кроссбилдили! Понятно, что scala-native слишком далека от готовности к проду, но интересно, почему решили не использовать Native Image в GraalVM. Решение с js в любом случае оригинальное и может быть из него что-то вырастет. Сам концепт: https://gist.github.com/djspiewak/37a4ea0d7a5237144ec8b56a76ed080d Прототип библиотеки: https://github.com/typelevel/feral

Заметка об использовании ScalaJS для написания кода под AWS-ный V8 напомнила о проекте, который позволяет нативно запускать хаскельный код в AWS: https://theam.github.io/aws-lambda-haskell-runtime

Новая статья — о простом тайп-левел представлении UUID: https://ybogomolov.me/type-level-uuid

В продолжение недавней драмы, о которой хорошо написали в канале Lil Functor: Джон Де Гоуз написал статью о том, что ZIO organisation ставит перед собой две важные цели: pro-community и pro-professionalism. Это означает, что все проекты, находящиеся в организации ZIO, будут хостить у себя интеграцию с другими экосистемами, и поддерживать запросы конечных пользователей вне зависимости от того, кто кому в песочнице по голове совочком дал каких мировоззрений или политической ориентации придерживается человек. Мне близка эта позиция — ставить инженерные практики выше политики/гендеров/мировоззрений/etc. Да, всегда можно сказать, что Джон снова использует ситуацию для агрессивного маркетинга ZIO, но в конечном итоге, мне кажется, такое позиционирование экосистемы выигрышно для конечных пользователей.

В продолжение темы Tagless Final в личку прислали крутую статью об опыте использования этого стиля на чистом JS с типизацией через аннотации JSDoc: https://habr.com/ru/post/584502

Новое видео на канале: «Making Illegal States Unrepresentable in TypeScript»! В этом докладе я рассматриваю очень полезную тему из domain-driven design — как сделать некорректные состояния непредставимыми. Затрагиваются темы opaque-типов и смарт конструкторов, программирования на уровне типов, Tagless Final и индексированных монад.

Свежая статья — о кодировке данных высших родов (higher-kinded data, HKD) на TypeScript: https://ybogomolov.me/higher-kinded-data

https://github.com/earldouglas/linear-scala — линейные типы в скале, проверка которых осуществляется с помощью ScalaFix. на что только не идут люди, чтобы не пользоваться Z3

Я сдул пыль со своего блога, немного его причесал и выложил туда все публичные статьи, которые писал про функциональное программирование, в том числе переведенные на английский статьи из цикла «Введение в fp-ts» с Хабра. Встречайте: https://ybogomolov.me 🤘🏻 Серия "Intro to fp-ts": https://ybogomolov.me/01-higher-kinded-types https://ybogomolov.me/02-type-classes https://ybogomolov.me/03-nullables-exceptions https://ybogomolov.me/04-tasks Серия #MonadicMondays: https://ybogomolov.me/monadic-monday-compilation-april https://ybogomolov.me/monadic-monday-compilation-may https://ybogomolov.me/monadic-monday-compilation-june https://ybogomolov.me/monadic-monday-compilation-july Прочее: Статья про типобезопасный фронт: https://ybogomolov.me/typesafe-typescript Статья про пакет circuit-breaker-monad: https://ybogomolov.me/circuit-breaker-in-functional-world Недавняя заметка про комментарии к функциям как образовательный ресурс: https://ybogomolov.me/comments-as-education В дальнейшем все материалы, которые я буду создавать, будут в первую очередь публиковаться именно в блоге.

photo content

https://doi.org/10.1017/S0956796821000113 "How to design co-programs" by Jeremy Gibbons Статья призывает расширить подход How to Design Programs (aka HtDP, серия курсов, обучающих студентов программированию с нуля, плюс два издания одноимённой книги: https://htdp.org/ если кто не знает) за счёт введения понятия ко-рекурсивных функций и соответствующих паттернов для их построения. Говоря по-простому, ко-рекурсивные функции — это такие, которые строят свой результат "по кусочкам", используя конструкторы соответствующего (алгебраического) типа данных, вместо того (или вместе с тем) чтобы разбирать входные данные "на кусочки" при помощи сопоставления с образцом (aka [datatype] pattern matching). Я безусловно согласен с Гиббонсом в том, что ко-рекурсивные функции — очень полезный инструмент в арсенале разработчика, особенно, начинающего. Тем не менее, на мой взгляд, эта тема требует намного более тщательной методической проработки чтобы органично встроиться в общую канву HtDP. Более того, самая интересная часть этой статьи — ещё одна статья, которая не была написана, к сожалению. 😊 В середине повествования Гиббонс обсуждает "генеративную рекурсию" (generative recursion, термин из HtDP), и показывает как функции (изначально) в форме общей генеративной рекурсии могут быть представлены в виде композиции структурно-рекурсивной и ко-рекурсивной функции (так же известной как "иломорфизм" или "хиломорфизм" — hylomorphism). К сожалению, за кадром остаются самые важные и интересные вопросы: как понять, что данную конкретную функцию можно представить в виде такой композиции, или придётся использовать генеративную рекурсию общего вида? как выбрать подходящую промежуточную структуру для рекурсии и ко-рекурсии? Возможно, эти вопросы удастся прояснить тем, кто интегрирует тему ко-рекурсивных функций в свои учебные программы. 😊

Жизненно)))
Жизненно)))

Пишут, что https://people.cs.uchicago.edu/~shanlu/paper/hotos19_azure.pdf
found that 21% of the cloud outages resulted from inconsistent data format assumptions across different software components and versions
Good luck with dynamically typed languages. (Сам я, конечно, не читал что там пишут 😁)