1.83K subscribers
3.29K photos
130 videos
15 files
3.57K links
Блог со звёздочкой.

Много репостов, немножко программирования.

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
Forwarded from мне не нравится реальность (вафель 🧇)
А узнал я это, потому что решил воспользоваться cargo-script — плагином для cargo, который позволяет запускать отдельные rust-файлы. Зависимости можно указать прямо в нём же.

Чтобы скрипты "сами запускались", чтобы можно было запустить сразу скрипт, а не cargo script -- smt, в линуксе предлагается использовать hashbang#!/usr/bin/env run-cargo-script. В винде такой возможности нет и поэтому предлагается ассоциировать экстеншен с запуском через cargo-script. Чтобы это не пересекалось с обычными растовыми .rs файлами, предлагается использовать .crs. И что? Ну и всё.

Хотелось в гит положить .crs файл, чтобы виндузятникам было удобно, но при этом чтобы в гитхабе работала подсветка синтаксиса.
#prog #go #article

Как в Go при помощи линтера решается проблема, которая в других языках решается проверкой типов.

blog.tomarrell.com/post/introducing_wrapcheck_linter_for_go
Не «пишу говнокод», а «провожу альтернативный рефакторинг»
Привет, я подсяду? Спасибо.

Почему у меня на рюкзаке шестерёнка? Ну, просто мне понравилась шестерёнка.

Поддерживаю ли я Rust? Да.

Да, я являюсь частью сообщества. А почему ты спрашиваешь?

В смысле навязываю тебе что-то? Так ты же сам спросил. Ладно.

Хочу ли я переписать всё на Rust? Боже, нет, конечно. Почему я должен это хотеть?

В смысле санитайзеры делают Rust ненужным? Нет, постой, это не так работает немножко. Тебе объяснить?

Не надо пропагандировать? Я не пропагандирую, ты просто сам спросил у меня… Ясно, я сумасшедший. Как и все. Ладно, извини, что потревожил. Я отсяду.
Forwarded from [email protected]
:smekalka:
Блог* pinned «#prog #rust #article #моё Как я и обещал, я... Так, погодите, я не писал об этом в блоге? Впрочем, ладно, напишу сейчас: я планировал написать перевод этой статьи и выложить его на Хабре. Собственно, сегодня я это и сделал.»
#prog

Я подозревал, что есть относительно общий метод для того, чтобы доказать, что имеющийся алгоритм решения задачи является оптимальным. Оказывается, такой метод действительно есть (до которого я бы сам не додумался): charging argument (нет, я не знаю, как это перевести)
Forwarded from rusta::mann
В 2019 из компилятора Rust выпилили синтаксические плагины, и с тех пор в области интроспекции типчиков в мета-коде царит нищета: процедурные макросы, которые сейчас есть, мапят потоки токенов и имеют доступ только к маленькой части AST.

С тех пор никаких подвижек в стабилизации доступа к полноценному AST и compiler queries не было, что в целом понятно — утилиты, которые используют внутренние API rustc, периодически ломаются.

Но тем не менее, в ночниках доступен rustc_interface, с помощью которого можно наворачивать кастомные утилиты, которые используют компилятор для анализа кода (как, например, clippy или rustfmt).

И если на время проигнорировать нестабильность и ад поддержки совместимости таких штук с ночником, то rustc_interface в частности, и доступ к приватным API компилятора в целом, дает возможность писать "гибридные" макросы в build.rs.

Когда-нибудь я может быть даже напишу прототип :))

#мысливслух #rustlang
#prog #haskell #article

Многие паттерны по факту не ограничены Haskell.
Прекрасная статья (с упражнениями!) от Вероники Ромашкиной и Дмитрия Кованикова:
https://kowainik.github.io/posts/haskell-mini-patterns