gavr_sas
210 subscribers
2.65K photos
181 videos
25 files
780 links
JB пропаганда
Download Telegram
mn - march=native
Сегодняшнее свободное время я потратил на бенчи
Открыл свою старую репу спустя 3 года

Транслятор BrainFuck по моему мнению один из лучших бенчмарков потому что в нем есть и математика, и работа со строками и спавн объектами(операторы на касете тут отдельные объекты)

Конечно все бенчмарки юзлесс, но все равно смотреть на них мне очень интересно

Выводы!
1) JVM очччень крута, даже в микробенче где ей не дают нормально разогнатся в JITе
2) GraalVM native-image не крут, по этому поводу я нашел issue в которой автор заодно объясняет почему JVM такая быстрая, ну это я и так знал, но тут прямо хорошее саммари, наверное зарепощу сюда https://github.com/oracle/graal/issues/979
3) спустя 3 года, и на другом проце(10400 vs 12900) положение нативных языков никак не изменилось, go все еще последний(Kotlin я тогда не тестил)
4) GCC-Go юзлесс

Реализации всего кроме Vala взяты из репы Кости, ее туда я и пиарил
Добавил начальную реализацию стактрейсов, наконец то можно сделать все по своему чтобы было максимально читаемо, ничего лишнего
Глав ошибка отдельно красным

Думаю стоит ли включать стек трейс JVM до их внутрянки(как на втором слайде), обычно они меня токо бесят, вот думаю бывают ли ситуации когда это надо, вроде нет, фиксить ты туда ниче не полезешь
Вкусно и полезна
топ1 гра кста
пора бы посмотреть на mojo
https://opennet.ru/60509/
gavr_sas
Внезапно понял шо хочу изучить nelua https://nelua.io/ це такая AOC луа с типами(которые все еще опциональны) Надеюсь компилируется она быстро чтоб не особо отличатся от ориг луы
кстати забыл про впечатления от neluы рассказать
никакого особово отношения кроме синтакса к обычной луа нет
транспилируестся в си, система типов простая как палка, юнионов нет(есть сишные которые просто делять память) неплохое взаимодействие с сишкой, опциональный GC

Есть максросы с манипуляцией над AST, прям ним
Есть CTFE

Самое интересное из всего этого это система шаблонов, шото между С препроцессором и CTFE, на них можно сделать женерики и даже концепты, да прямо как концепты из нима которые все никак не вынут из экспериментала, выглядит потрясно

Минус никто не юзает, хотя потенциал кажется не сильно меньше чем у нима, из сторонних либ не от автора я нашел токо бинды к райлибу, и написанный автором на них тетрис
добавил синт сахар
тк кк все методы в ниве являются методами расширения типа, может быть запарно каждый раз его указывать при декларации, так шо добавил синт сахар extend

ключевое слово украл из скриптового языка Lil языка для Decker(HyperCard клон)
youtube UX, не могу нажать ... на своем коменте потому шо его закрывают неубираемые смайлики