gavr_sas
Читал про киевлян фаундеров Grammarly и случайно для себя обнаружил, что Grammarly использует Common Lisp для грамматического движка. Ого! https://www.grammarly.com/blog/engineering/running-lisp-in-production/
В коммон лиспе оказываестя макросы не гигиенические, пиздец
я думал это база, основа всех лиспов
мойте руки
я думал это база, основа всех лиспов
мойте руки
Forwarded from Transhumanism_in_our_hearts
Там распространяются новости о вакцине о ВИЧ, lenacapavir, которая полностью защищает от ВИЧ. Но, об этом ещё год назад был пост, и на удивление весьма похож на то что я собирался писать уже. Я ещё тогда писал о профилактике, но сейчас читаю что раньше типа использовали для лечения, но только потом поняли что работает и на профилактику отлично, причём для профилактики не нужно комбинировать с другими лекарствами. Из нового видно что на женщинах 100% эффективность, а на мужчинах занимающихся половыми связями с другими мужчинами - 96%. Также упоминается потенциал для создания единоразовых вакцин против ВИЧ и дальнейшего уменьшения цены на этот препарат:
https://time.com/7295343/fda-hiv-shot-lenacapavir-yeztugo/
Главная новость в том, что FDA одобрил данный препарат и его уже готовят к выпуску коммерческому. В остальном нового мало, но тоже неплохо.
https://time.com/7295343/fda-hiv-shot-lenacapavir-yeztugo/
Главная новость в том, что FDA одобрил данный препарат и его уже готовят к выпуску коммерческому. В остальном нового мало, но тоже неплохо.
TIME
FDA Approves a Twice-Yearly Shot to Prevent HIV
The approval could slow new infections and move the world closer to eliminating HIV. But huge obstacles remain.
я переделал мутабилити чучуть, теперь мутабл поле можно хранить внутри типа
методы делятся на 2 вида, методы для мутабильных и иммутабильных типов
ранее у меня было 2 типа каждой коллекции, унаследованные от котлина MutableList и List, MutableSet и Set итд, ужасно некрасиво
теперь когда мутабильные типы можно передавать как аргументы внуть функций или держать внутри полей типов, ничего не мешает мне избавится от этих двойных коллекций, и просто объявить типы мутирующие коллекции для мутабл версий типов коллекций
то есть
теперь если вызвать этот add на обычной коллекции будет ошибка
вся это начисто спизжено у nim, с некотороыми отличиями, нельзя переприсваивать поля из любого места,
- только из методов того же типа чье поле, это сузит радиус атаки багов на конкретные методы внутри которых можно поставить принт и увидеть мутации этого поля со всей программы
- создавать мутабл типы из иммутбл можно только клонированием
ну и мутабл типы можно отправлять в иммутабл без потерь
методы делятся на 2 вида, методы для мутабильных и иммутабильных типов
ранее у меня было 2 типа каждой коллекции, унаследованные от котлина MutableList и List, MutableSet и Set итд, ужасно некрасиво
теперь когда мутабильные типы можно передавать как аргументы внуть функций или держать внутри полей типов, ничего не мешает мне избавится от этих двойных коллекций, и просто объявить типы мутирующие коллекции для мутабл версий типов коллекций
то есть
mut List add::T = ...
теперь если вызвать этот add на обычной коллекции будет ошибка
вся это начисто спизжено у nim, с некотороыми отличиями, нельзя переприсваивать поля из любого места,
- только из методов того же типа чье поле, это сузит радиус атаки багов на конкретные методы внутри которых можно поставить принт и увидеть мутации этого поля со всей программы
- создавать мутабл типы из иммутбл можно только клонированием
ну и мутабл типы можно отправлять в иммутабл без потерь
абсолютно сумашедшая фича смоллтолка
сообщение
"It is a feature of enormous power - and danger."
https://gbracha.blogspot.com/2009/07/miracle-of-become.html
сообщение
a become: b
, которое подменяет все инстансы объекта а на б"It is a feature of enormous power - and danger."
https://gbracha.blogspot.com/2009/07/miracle-of-become.html
Blogspot
The Miracle of become:
One of Smalltalk’s most unique and powerful features is also one of the least known outside the Smalltalk community. It’s a little method ca...
Понадобилось найти быстрый простой коноплятор сишки, шоб не жыр как LLVM GCC
под m1 оказалось нет ничего(и из сурсов не собирается(собирается но тесты не проходит))
Первая интересная весщь из этого списка это QBE, как я понимаю от автора яп Hare
QBE - бекенд компиля с 70% производительности за 10% кода, имеет замечательный ir семантически похожий на васм, стековые инструкции внутри обычных функций с аргументами, но тут в отличии от васма где всего 2 типа данных дробные и целые, есть аж строки, и аби совместимость с сишкой.
есть все базовые оптимизации DCE CE, какие то сплит сплит еры, даже не знаю шо це
https://c9x.me/compile/
реализация C11 на QBE!
https://github.com/michaelforney/cproc
всем известный tiny C Compiler, все еще жив и обновляется
https://github.com/TinyCC/tinycc
Компилятор из Амстердама, от уника, главная оссобенность - поддержка доисторических архитектур времен палеозоя
https://github.com/davidgiven/ack
Simple C compiler, по началу кажется что новый tcc, но тут чето инфы совсем мало, древние люди живут в мэйлинг листе и не на гихабе, вроде это опять QBE, но оно недопилено
может компилится без либс зависимости, со своей bare metal реализацией
https://www.simple-cc.org/
под m1 оказалось нет ничего(и из сурсов не собирается(собирается но тесты не проходит))
Первая интересная весщь из этого списка это QBE, как я понимаю от автора яп Hare
QBE - бекенд компиля с 70% производительности за 10% кода, имеет замечательный ir семантически похожий на васм, стековые инструкции внутри обычных функций с аргументами, но тут в отличии от васма где всего 2 типа данных дробные и целые, есть аж строки, и аби совместимость с сишкой.
есть все базовые оптимизации DCE CE, какие то сплит сплит еры, даже не знаю шо це
https://c9x.me/compile/
реализация C11 на QBE!
https://github.com/michaelforney/cproc
всем известный tiny C Compiler, все еще жив и обновляется
https://github.com/TinyCC/tinycc
Компилятор из Амстердама, от уника, главная оссобенность - поддержка доисторических архитектур времен палеозоя
https://github.com/davidgiven/ack
Simple C compiler, по началу кажется что новый tcc, но тут чето инфы совсем мало, древние люди живут в мэйлинг листе и не на гихабе, вроде это опять QBE, но оно недопилено
может компилится без либс зависимости, со своей bare metal реализацией
https://www.simple-cc.org/
GitHub
GitHub - michaelforney/cproc: C11 compiler (mirror)
C11 compiler (mirror). Contribute to michaelforney/cproc development by creating an account on GitHub.
https://openjdk.org/jeps/254
оказывается в JVM есть фича compact Strings, она автоматом представляет строку в кодировке Latin-1 вместо UTF-16 если это возможно
В UTF-16 каждая буква по байту,
в Latin-1 всего 256 — то бишь англ алфавит(ASCII) + 128 европейских символов вроде é, ñ, ø, ß, à, ç по 1 байту
красота, а я сидел с устаревшей инфой в что в жабе жутко жырные строки
(кирилицы нетъ >_<)
оказывается в JVM есть фича compact Strings, она автоматом представляет строку в кодировке Latin-1 вместо UTF-16 если это возможно
В UTF-16 каждая буква по байту,
в Latin-1 всего 256 — то бишь англ алфавит(ASCII) + 128 европейских символов вроде é, ñ, ø, ß, à, ç по 1 байту
красота, а я сидел с устаревшей инфой в что в жабе жутко жырные строки
(кирилицы нетъ >_<)
чисто давняя забавная история, которая сейчас всплыла
совершенно не хотел это добавлять, но
пока имплементил сравнение задекларированного и реального возвращаемого типа, было настоко изи это сделать, что добавил общий вывод возвращаемых типов, в любом случае это необходимо чтобы просто понять что чел возвращает тоже самое что задекларировал
поэтому теперь есть вот такая красота
совершенно не хотел это добавлять, но
пока имплементил сравнение задекларированного и реального возвращаемого типа, было настоко изи это сделать, что добавил общий вывод возвращаемых типов, в любом случае это необходимо чтобы просто понять что чел возвращает тоже самое что задекларировал
поэтому теперь есть вот такая красота
токо шо узнал о риал кейс сценарио у MPS:
"JetBrains' MPS is also used for a long time in Netherlands for computable tax-related laws (https://resources.jetbrains.com/storage/products/mps/docs/MPS_DTO_Case_Study.pdf)"
MPS это такой Excel на максималках с выходом за границы ячеек
"JetBrains' MPS is also used for a long time in Netherlands for computable tax-related laws (https://resources.jetbrains.com/storage/products/mps/docs/MPS_DTO_Case_Study.pdf)"
MPS это такой Excel на максималках с выходом за границы ячеек