dd if=/dev/stuff of=/dev/tg – Telegram
dd if=/dev/stuff of=/dev/tg
2.59K subscribers
348 photos
5 videos
7 files
563 links
Музыка: @randommusicilike

18+. По всем вопросам, кроме рекламы: @rsil_feedback_bot

По вопросам рекламы (внимательно читайте приветственное сообщение): @rsil_ads_bot
Download Telegram
Чё нашел, чё нашел… Доказательство того, что система типов в TypeScript полна по Тьюрингу: https://gist.github.com/hediet/63f4844acf5ac330804801084f87a6d4 🤓
#полезности
Сниппет для typelevel assertion для TypeScript:
const assertType = <T>(expect: [T] extends [never] ? never : T): T => expect;


Использование:
assertType<string>('ok'); // => 'ok'
assertType<boolean>(true); // => true
assertType<true>(false); // => Argument of type 'false' is not assignable to parameter of type 'true'
assertType<never>(); // => Expected 1 arguments, but got 0
assertType<never>(undefined); // => Argument of type 'undefined' is not assignable to parameter of type 'never'


Пример typelevel-теста:
  it('IfDef<T, TrueT, FalseT>', () => {
type A = IfDef<string, string, never>;
expect(assertType<A>('ok')).toEqual('ok');

type B = IfDef<string | never, string, never>;
expect(assertType<B>('ok')).toEqual('ok');

type C = IfDef<string & never, never, string>;
expect(assertType<C>('ok')).toEqual('ok');
});
Forwarded from oleg_log (Oleg Kovalov)
всем +5 минут к работе SBT за мой счет
Age hasn't slowed you down one bit
Idris, завёрнутый в JS, завёрнутый в очередной hybrid app framework.
https://medium.com/the-web-tub/idris-state-machines-in-javanoscript-apps-b969e2cb6ed2
P.S. Выдержка из официальной доки идриса:
«Idris can produce very big chunks of JavaScript code (hello world weighs in at 1500 lines).»
А что, не такая уж и большая плата за наличие зависимых типов… 🙄
https://www.youtube.com/watch?v=uvDDyLSAZyQ — очень ламповое общение о теории типов, компиляторах, высшей алгебре, теорем-пруверах и будущем функциональных языков. Kudos to @tonpa & @bravit111 :3
Forwarded from Lil Functor
Жирное обсуждение на реддите о том, что в Haskell удобнее, чем в Scala.

В тред ворвались мастодонты обоих сообществ: Edward Kmett и Sam Halliday со стороны Haskell и Alexandru Nedelcu с Wojtek Pituła на защите скалы 🍿
Forwarded from oleg_log (Oleg Kovalov)
после этого я сегодня работать не смогу
https://jira.atlassian.com/browse/JRASERVER-65811
До меня тут внезапно дошло, что тот самый circuit breaker можно реализовать как специальный случай профункторной оптики, в частности, ко-призмы! Нужно провести исследование на эту тему.
dd if=/dev/stuff of=/dev/tg
До меня тут внезапно дошло, что тот самый circuit breaker можно реализовать как специальный случай профункторной оптики, в частности, ко-призмы! Нужно провести исследование на эту тему.
Внезапный вопрос: а что если я организую лайв-стриминг того, как я работаю над этой фичей? Было бы интересно посмотреть - со всеми объяснениями и рассуждениями на тему разработки ПО?
Устроить стрим работы над профункторным circuit breaker?
Anonymous Poll
76%
Да
24%
Нет
Forwarded from Вебня
Интересная статья о портировании игры Doom 3 на #WebAssembly и #WebGL
http://www.continuation-labs.com/projects/d3wasm/
Немного пригорает.

Выложил во внутренний чат компании статью о запуске Doom на WASM, попутно набросив, что пора бы уже начать Rust изучать — судя по тому, как двигаются дела в мире WebAssembly, он очень скоро станет флагманским языком для этой технологии. В ответ столкнулся со снобизмом вида «зачем раст, если есть плюсы» (aka «дедываевали») и «позовите, когда работа будет» (aka «моя хата з краю»).

То ли я слишком идеалистичен, то ли с этой отдельно взятой компанией что-то не так, но когда я слышу подобную точку зрения от сеньорных инженеров-программистов (!) — у меня возникает только одна реакция: «нахуй вон из профессии».

Теперь уже обвинять в снобизме можно меня, но я считаю, что ведущий программист должен быть в первую очередь инженером, и только потом — всем остальным: ментором, лидером, менеджером. Это означает, что человек должен постоянно держать нос по ветру в своей отрасли, он должен одним из первых пробовать новые технологии в свободное время, чтобы в дальнейшем обучать этому других. Именно он, ведущий программист, ответственен за выработку и насаждение best practices в коммьюнити. И именно от него зависит, взлетит или не взлетит та или иная технология — ведь если у технологии нет людей, готовых продираться через баги и глюки, писать статьи, контрибьютить в альфа-бета-версии, то такая технология на голом энтузиазме авторов далеко не уедет. Без полусумасшедших нёрдов с нездоровым блеском воодушевления в глазах попросту нет прогресса.

Ну а я для себя сделал вывод, с кем я буду работать на следующем проекте в компании, а кого буду обходить стороной.