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

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

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
▪️Стабилизирована пачка штук в std. Некоторые из них:
🔸num::NonZero<T>. Именно, теперь это один тип, а не 12! Старые имена вроде NonZeroU8 всё также доступны, но теперь являются просто алиасами на NonZero с соответствующим типовым параметром. Это изменение теперь позволяет с лёгкостью записывать ненулевые варианты чисел, которые сами определённы через алиасы — такие, как, например, множество типов из libc.
🔸<[T]>::split_at{, _mut}_unchecked — unsafe вариант split_at без проверки границ. Честно, я не понимаю, почему это добавили только сейчас.
🔸path::absolute возвращает каноничную версию пути без реального обращения к файловой системе. Как следствие, она не следует по символическим ссылкам и может вернуть несуществующий путь.
🔸<[u8]>::utf8_chunks — итератор, возвращающий валидные в UTF-8 куски набор байт. Конкретно этот итератор возвращает Utf8Chunk, позволяющий извлечь валидную и невалидную части (последняя — длиной не более трёх байт). Это позволяет, помимо всего прочего, сделать аналог String::from_utf8_lossy, который будет иначе обрабатывать невалидные UTF-8 последовательности.
🔸Методы len и is_empty на сырых указателях на слайсы (включая NonNull<[T]>)
🔸Метод is_aligned на сырых указателях (включая NonNull)
🔸Методы unchecked_{add, sub, mul} на примитивных числовых типах, которые дают UB при переполнении.

Также некоторые функции теперь можно вызывать в const-контексте, включая геттеры Location.
❤‍🔥42🔥1
Forwarded from Trap ~ езные мемы😇 (ᴀᴍᴋஇ)
🍌135👍2🥰2😁2💩2❤‍🔥1
Forwarded from ТГ Шевченка
🤡22😁131
Блог*
💅
💅
2🤮2💩2🤡1🥴1🤷1
Блог*
💅
❤‍🔥27🤮15🤡6👎3💩2🤣2🫡2👍1🔥1🥴1
Forwarded from Ой, ти!
🌚13😁72
d f
🤝
uck
🤨11🤔3🍌2
Forwarded from Generative Anton (Anton Repushko)
Очень смешно (а оригинальная цитата Дейкстры была про BASIC)
👍9😁6
Так как степень контроля государства над личной жизнью не может быть меньше нуля, а крайние левые и крайние правые мало отличаются друг от друга, я считаю, что политические координаты на самом деле не декартовы, а полярные.
👍183🤯3💯1
Forwarded from Horny Mementi (Greta)
Yes
💯7😐4👍1
#prog #c #article

Why Not Just Do Simple C++ RAII in C?

В последнее время есть предложения для того, чтобы добавить в C defer. Разумеется, эта конструкция избыточна, если в языке есть RAII. Статья показывает, почему "просто добавить RAII в C" не сработает.
👍1
Forwarded from Neural Machine
Рождение ребенка годится только для чудаков. Меня будет раздражать такая фигня.
Если вы вдруг наберёте достаточно голосов для Блог*а, то я добавлю в реакции эмодзи 🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
💩17❤‍🔥2👍2🤮2👎1
Блог*
Photo
Кстати, парни, мотайте на ус, женщинам это нравится
🤡12❤‍🔥5👏3💯31💩1
Forwarded from optorepost
Шикарное видео про обучение нейронки балансированию двойного маятника. Обучается через генетический алгоритм. Вроде бы простая задача, простое решение, но очень глубоко. А в какой-то момент автор придумал гениальное решение, когда его система перестала обучаться.

Я посмотрел очень много подобных видео, и вообще погружался в тему, и это видео одно из достойнейших. Так что реально рекомендую.

На самом деле это вторая часть, и там есть первая с контекстом и историей. Ради второй стоит посмотреть и первую (https://www.youtube.com/watch?v=EvV5Qtp_fYg).

https://youtu.be/9gQQAO4I1Ck (это вторая)
7
optorepost
Шикарное видео про обучение нейронки балансированию двойного маятника. Обучается через генетический алгоритм. Вроде бы простая задача, простое решение, но очень глубоко. А в какой-то момент автор придумал гениальное решение, когда его система перестала обучаться.…
#prog #math #video

Больше всего меня удивило следующее:

Первые решения автора использовали скорость перемещения каретки в качестве выходного параметра (ещё для первой части с уравновешиванием одинарного маятника). В качестве fitness function использовалась очень простая вещь: единица счёта начислялась за каждую секунду симулированного времени, во время которой конец маятника находился достаточно высоко. С таким подходом ему удалось сконструировать решение, но для получения эстетически удовлетворительных результатов — без лишней дёрганности — ему пришлось модифицировать fitness function, чтобы она штрафовала решения за ненулевую угловую скорость маятника и за отклонение от серединного положения.

В комментариях к первому видео автора справедливо заметили, что использование скорости в качестве выходного параметра фактически означает бесконечное ускорение и потому нефизично и нереалистично. В конце второго видео автор попробовал подход, при котором в качестве выходного параметра используется ускорение каретки вместо скорости — разумеется, скорость каретки пришлось добавить в качестве входного параметра для нейросети. В итоге получилось рабочее и при этом не дёрганное решение — и для его достижения было достаточно первой, самой простой формы fitness function.
❤‍🔥1👍1