k1ngmang
352 subscribers
100 photos
4 videos
140 links
Владелец: @k1ngmang

Другие каналы:

@langdev: инструменты для создания компиляторов, новые языки программирования

Чат: https://t.me/+V5Ji4kATZ1BlYTUy

Буст: https://t.me/kingmangapps?boost
Download Telegram
Forwarded from compilers (Artyom)
ДАТА НАЧАЛА ЛАНГДЖЕМА
12 июля будут опубликованы условия мероприятия.
Приз: 5000 рублей (~$65).

Кратко напомню о мероприятии: участникам даётся определенный период времени, в течении которого они должны будут сделать язык программирования, который соответствует условиям. На выбор может быть несколько идей, выбираете ту, которая нравится больше всего и делаете яп
❤6❤‍🔥2🔥1👾1
нейронка смогла меня заменить
❤8🔥5❤‍🔥2😱2👏1
k1ngmang
нейронка смогла меня заменить
я все-таки заставил это работать. Теперь у меня есть игрушка с зависимыми типами, у которой парсер навайбкожен до такой степени, что читать его сложнее, чем все остальное в проекте. Зато все кроме парсера и красивого вывода писалось руками!
🔥9❤2👍2
Forwarded from compilers (Artyom)
Поздравляю вас с началом лангджема.
Тема, условия и инструкция по сдаче проекта находится в репозитории: https://github.com/langdev-jam/plic

Кратко напоминаю об условиях: вы пишите свой язык программирования (компилятор/интерпретатор) на тематику, которая определена в репозитории. Следуя инструкции выкладываете свой проект и забираете приз
Приз: 5000 RUB
Дата окончания: 20 июля
❤4❤‍🔥2🔥2
Forwarded from compilers (Вячеслав)
Когда-то мы планировали открыть дискорд сервер для нашего сообщества, так вот, наступило время это сделать!

Будем рады видеть вас здесь: https://discord.gg/ANUc56vnKd
❤7🔥4❤‍🔥1
Мимокод перестал работать
❤6😱2🤨2❤‍🔥1
Мимокод не хотят чинить. Какую вайбкоделку можете посоветовать (хочу клод, но по цене дипсика)?
❤‍🔥5🔥3❤2
Forwarded from compilers (Artyom)
🤩ИТОГИ
Пришло время подводить итоги langjam (plic). Первое место забирает язык программирования Dola. Просьба победителя связаться с @k1ngmang, чтобы забрать свой приз.
Ну а вот какие языки попали в первую пятерку:
1) dola
2) graft
3) ftorlisp
4) ygvm
5) py++
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥3🎉2🤝1🦄1
Forwarded from compilers (Artyom)
😭Сегодня в нашем дискорде смотрели язык V (vlang.io). Помимо того, что компилятор допускает утечку при обычном hello world, так еще и проблемы из review 2023 года не были решены. Забавно, что автор изначально задумывал минималистичный язык, а по итогу мы имеем borrow checker, arena allocator, autofree, manual memory management, а также built-in orm и параллельный сборщик мусора! Интересно, что нужно добавить в V, чтоб он перестал быть минималистичным?
Please open Telegram to view this post
VIEW IN TELEGRAM
20❤8❤‍🔥1💋1
Думаю завтра будет стрим по вайбкоду ос
❤‍🔥11❤3💋1
This media is not supported in your browser
VIEW IN TELEGRAM
❤7❤‍🔥2🔥2
Forwarded from compilers (Artyom)
Оказывается, обучение нейросети - это тоже компиляция, только случайная и без гарантий. В статье рассказывают, как специальный компилятор Tracr переводит программу на языке RASP в файл с весами трансформера, и зачем это нужно: https://habr.com/ru/companies/selectel/articles/1066052/
❤4🔥2❤‍🔥1
Forwarded from compilers (Artyom)
Haskell для мира FPGA
Clash - функциональный язык описания аппаратуры. Он берёт синтаксис и семантику из Haskell, а его главная идея - создание цифровых схем привычными для программиста методами, а затем компилировать их в синтезируемые VHDL, Verilog или SystemVerilog. Clash унаследовал от Haskell строгую типизацию. Это позволяет на этапе компиляции отлавливать ошибки, которые в классических HDL вылезут только на симуляции или в железе. Вот как на языке выглядит функция КИХ-фильтра:
fir coeffs x = dotp coeffs (window x)
where
dotp as bs = sum (zipWith (*) as bs)
❤7❤‍🔥1🔥1
18🎉
12❤27🎉9❤‍🔥2👍1👏1🫡1
This media is not supported in your browser
VIEW IN TELEGRAM
❤5❤‍🔥1🔥1
Forwarded from compilers (Artyom)
Как скопировать дерево, но не точь-в-точь
Инженеры PVS‑Studio рассказывают про трансляцию ast через protobuf, паттерны преобразований и 263 типа узлов, которые пришлось обходить. В статье про выбор между итератором и посетителем, эмуляцию двойной диспетчеризации и почему нормализация - боль
❤4❤‍🔥1🔥1
С днём программиста
❤14🎉5❤‍🔥1
Forwarded from compilers (Artyom)
Знаете, почему -O2 может молча выбросить вашу проверку на переполнение?
Потому что переполнение знакового целого - это UB. А раз UB быть не может, то и условие, которое срабатывает только при нём, всегда ложно. Ветка мёртвая => можно удалять. Одна и та же программа: -O0 возвращает -1, -O2 возвращает -2147483648.

Разбор реального бага GCC, проверок после разыменования и санитайзеров в статье.
❤7❤‍🔥1🔥1
Forwarded from compilers (Artyom)
Neva - dataflow-язык, где программа это не список инструкций, а граф узлов, обменивающихся сообщениями через порты.
import { fmt }

def Main(start any) (stop any) {
    println fmt.Println<string>
    ---
    :start -> 'Hello, World!' -> println -> :stop
}

Всё выполняется параллельно, если не сказано иное (да, тут параллелизм по умолчанию). На мой взгляд довольно свежая идея, которую интересно пощупать. Сам язык компилируется в go, позиционируется как LLM-friendly, и имеет ряд фичей как для рядового пользователя (например визуальный редактор), так и для человека, решившего углубится в исходный код компилятора.

Пишите, что думаете и присылайте другие необычные языки с интересными концептами в комментарии

репозиторий neva: github.com/nevalang/neva
❤4🔥3❤‍🔥1