uz
Feedback
Блог*

Блог*

Kanalga Telegram’da o‘tish

Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here

Ko'proq ko'rsatish
1 925
Obunachilar
Ma'lumot yo'q24 soatlar
+27 kunlar
+130 kunlar
Postlar arxiv
#prog #typescript #abnormalprogramming Assembly interpreter inside of TypeScript's type system Автору пришлось повысить лимиты внутри исходников компилятора Typescript, чтобы это заработало и не падало из-за слишком глубокого инстанцирования. (thanks @randomstuffilike)

#prog Немного о возможностях jq, программы для обработки JSON в командной строке. t.me/brain_dump_etc/440

Repost from N/a
Интересный факт: GitHub умеет парсить Cargo.toml для Rust и понимать, кто использует какие репозитории в качестве зависимостей. Так я узнал, что у моего owlchess появились пользователи, кроме меня :) Первому пользователю я вручил pull request с исправлениями, которые делают использование owlchess более простым и идиоматичным

Repost from N/a
Gitconf - оверлейная утилита для удобного управление конфигом git'a. Git сам по себе имеет достаточно богатые возможности конфигурации, которые можно применять, как для отдельных репозиториев так и для групп. Но изменение настроек все еще требует либо ручного ввода команд git config ..., либо правки .gitconfig или .git/config. Gitconf же позволяет создать т.н. профили конфигурации, между которыми в отдельно взятом репозитории можно переключаться в одну команду. #mycode #CC0 #rust #oldproject

P. S.: предложение не является публичной офертой

Или если вы репостите из Блог*а (что я и продемонстровал выше)

Repost from N/a

#prog Awesome FalsehoodA curated list of falsehoods programmers believe in.

photo content

photo content

— Ну и зачем ты в эти свои игры играешь? Как тебе это в жизни пригодится? —

Снег пошёл — к сессии. Снег сошёл — к сессии.

#prog #rust #article Rust at scale: packages, crates, and modules <...>The team learned that code organization that works just fine for relatively small projects might start dragging you down over time. In this article, we shall evaluate code organization options that Rust gives us and look at how to use them well. В статье также есть доводы в пользу того, чтобы передавать логгеры и сборщики метрик явно

#prog #haskell #article Why 'Functor' Doesn't Matter Names can’t transmit meaning. They can transmit a pointer, though, which might point to some meaning. If that meaning isn’t the right meaning, then the recipient will misunderstand. <...> Object Oriented Programming is littered with terrible names, precisely because they mislead and cause a false familiarity. Object, Class, Visitor, Factory, Command, Strategy, Interface, Adapter, Bridge, Composite. All of these are common English words with a relatively familiar understanding to them. And all of them are misleading.

#prog #rust #article С одной стороны, многие из изложенных принципов справедливы и вне Rust. С другой, с некоторыми соображениями я не согласен. Designing error types in Rust

#prog #go линтер, который вообще-то должен быть частью компилятора. github.com/GaijinEntertainment/go-exhaustruct

#prog #rust В стандартной библиотеке Rust есть модуль sync::mpsc, который содержит реализацию однонаправленного multiple producer single consumer канала. Если открыть документацию метода принимающей половины канала, Receiver::recv_timout, то можно увидеть раздел "Known issues" про возможность неожиданной при вызове метода, вкупе с кодом для надёжного воспроизведения этой проблемы. И сама документация, и сообщение при панике отсылают на соответствующее issue в репозитории Rust, которому, на минуточку, 5 лет. Так как тулинг Rust позволяет легко задействовать сторонние зависимости, те, для кого эта проблема была важна, использовали сторонние реализации каналов. Стандартом де-факто стала библиотека crossbeam-channel. После того, как она получила широкое распространение, пошли разговоры о том, чтобы включить реализацию в std — и прецедент для такого уже был с заменой доморощенной реализации HashMap на реализацию из hashbrown. В феврале этого года такой MR был открыт — правда, реализация в силу различных причин была несколько видоизменена — и вот совсем недавно был влит! Но это ещё не всё. Помимо фикса этого старого бага, crossbeam-channel также в некоторых аспектах превосходил реализацию в std. Главное — то, что, в отличие от варианта из std, это multiple producer multiple consumer канал. А это значит, что в ближайшем будущем mpmc-канал наверняка будет и в std!