Понадобилось найти быстрый простой коноплятор сишки, шоб не жыр как 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 на максималках с выходом за границы ячеек
Apple внезапно создали группу для продвижения разработки на свифте под андройдом, 2 чела из нее основатели SKIP - фреймворка для написания под андройд на свифте(https://skip.tools/)
Announcing the Android Workgroup
https://forums.swift.org/t/announcing-the-android-workgroup/80666
А на WWDC25 был толк про интеграцию Java и Swift
https://youtu.be/QSHO-GUGidA
Announcing the Android Workgroup
https://forums.swift.org/t/announcing-the-android-workgroup/80666
А на WWDC25 был толк про интеграцию Java и Swift
https://youtu.be/QSHO-GUGidA
как насчет нового алгоритма тайп чекинга, вместо Algorithm W Хиндли Миндлера
я предлагаю Algorithm V — тайпчекинг by Vibes
я предлагаю Algorithm V — тайпчекинг by Vibes
очоч странно, походу у мя компиляция нивы упирается не в CPU
литералли самый быстрый cpu on earth m4 max S pro omega plus+ на одну секунду быстрее 6тилетнего x86 200нм нитлена на TPadе
уверен виноват чертов гредл, в след реализацие буду компилица в Go
литералли самый быстрый cpu on earth m4 max S pro omega plus+ на одну секунду быстрее 6тилетнего x86 200нм нитлена на TPadе
уверен виноват чертов гредл, в след реализацие буду компилица в Go