compilers
رفتن به کانال در Telegram
Все про компиляторы и языки программирования Наши чаты: @procompilers - общий чат по разработке языков. @code_crafting_ru - чат, где можно вести блог своего языка программирвоания
نمایش بیشتر229
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+27 روز
+1730 روز
در حال بارگیری داده...
کانالهای مشابه
هیچ دادهای
مشکلی وجود دارد؟ لطفاً صفحه را تازه کنید یا با مدیر پشتیبانی ما تماس بگیرید.
ابر برچسبها
هیچ دادهای
مشکلی وجود دارد؟ لطفاً صفحه را تازه کنید یا با مدیر پشتیبانی ما تماس بگیرید.
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
سپتامبر '26
سپتامبر '260
در 0 کانالها
اوت '26
+26
در 0 کانالها
Get PRO
ژوئیه '26
+31
در 0 کانالها
Get PRO
ژوئن '260
در 0 کانالها
Get PRO
مه '26
+7
در 0 کانالها
Get PRO
آوریل '260
در 0 کانالها
Get PRO
مارس '260
در 0 کانالها
Get PRO
فوریه '260
در 0 کانالها
Get PRO
ژانویه '260
در 0 کانالها
Get PRO
دسامبر '25
+6
در 0 کانالها
Get PRO
نوامبر '250
در 0 کانالها
Get PRO
اکتبر '25
+1
در 0 کانالها
Get PRO
سپتامبر '25
+10
در 0 کانالها
Get PRO
اوت '250
در 0 کانالها
Get PRO
ژوئیه '250
در 0 کانالها
Get PRO
ژوئن '250
در 0 کانالها
Get PRO
مه '25
+74
در 0 کانالها
Get PRO
آوریل '250
در 0 کانالها
Get PRO
مارس '25
+47
در 1 کانالها
Get PRO
فوریه '250
در 1 کانالها
Get PRO
ژانویه '250
در 1 کانالها
Get PRO
دسامبر '240
در 0 کانالها
Get PRO
نوامبر '240
در 0 کانالها
Get PRO
اکتبر '240
در 0 کانالها
Get PRO
سپتامبر '240
در 0 کانالها
Get PRO
اوت '240
در 0 کانالها
Get PRO
ژوئیه '24
+45
در 0 کانالها
Get PRO
ژوئن '240
در 0 کانالها
Get PRO
مه '24
+9
در 1 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 01 سپتامبر | 0 |
پستهای کانال
Go 1.27
Самый громкий апдейт этого релиза - обобщённые методы. Теперь можно объявлять параметры типа прямо у методов структур, а не только у функций. Из приятного: json получил вторую мажорную версию. Новый пакет работает быстрее, особенно на распаковке, и стал строже: теперь он ругается на невалидный UTF-8 и дублирующиеся ключи в объектах. При этом старый код продолжит работать как раньше, а выигрыш в производительности мы получим бесплатно. Также в профилировщике появился тип goroutineleak, который находит горутины, намертво застрявшие на недостижимых каналах или мьютексах. Весь список изменений можете почитать тут
| 2 | 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) | 589 |
| 3 | Оказывается, обучение нейросети - это тоже компиляция, только случайная и без гарантий. В статье рассказывают, как специальный компилятор Tracr переводит программу на языке RASP в файл с весами трансформера, и зачем это нужно: https://habr.com/ru/companies/selectel/articles/1066052/ | 632 |
| 4 | Нашёл отличный доклад по теме JIT-компиляции в Cpython. В докладе затрагиваются подробности имплементации JIT такие как уникальный механизм copy and patch компиляции и micro codes interpreter.
Что же нам предвещает добавление JIT в коробочную версию cpython? Мы получим бесплатное ускорение всех наших программ и возрадуемся или всё не так просто? Давайте попробуем разобраться вместе.
https://youtu.be/BiVEhI7wYS4?si=1dQFOg1UseCg66Jk | 409 |
| 5 | 😭Сегодня в нашем дискорде смотрели язык V (vlang.io). Помимо того, что компилятор допускает утечку при обычном hello world, так еще и проблемы из review 2023 года не были решены. Забавно, что автор изначально задумывал минималистичный язык, а по итогу мы имеем borrow checker, arena allocator, autofree, manual memory management, а также built-in orm и параллельный сборщик мусора! Интересно, что нужно добавить в V, чтоб он перестал быть минималистичным? | 639 |
| 6 | 🔈Aya-Prover
Интерактивная система, предназначенная для формализации теорий и написания программ с зависимыми типами. Система имеет блог, который содержит не только документацию языка, но и публикации авторов, которые проливают свет на внутреннее устройство проекта: https://www.aya-prover.org/pubs/. Если вам интересны Coq, Agda и подобные, то рекомендую ознакомиться и с Aya. | 432 |
| 7 | 🗑 Сборка мусора в Python
Если вам было бы интересно узнать об устройстве сборки мусора в Python,
то этот цикл статей точно для вас! В статьях подробно описываются внутренние алгоритмы сборщика мусора Python понятным языком и с примерами. Рекомендуем к прочтению!
https://habr.com/ru/articles/940642/
https://habr.com/ru/articles/951250/
https://habr.com/ru/articles/986784/
https://habr.com/ru/articles/992026/
#Статья #Материал | 449 |
| 8 | 🤩ИТОГИ
Пришло время подводить итоги langjam (plic). Первое место забирает язык программирования Dola. Просьба победителя связаться с @k1ngmang, чтобы забрать свой приз.
Ну а вот какие языки попали в первую пятерку:
1) dola
2) graft
3) ftorlisp
4) ygvm
5) py++ | 862 |
| 9 | 👨💻🐨 До конца приёма работ на langjam осталось 3 часа. 10:00 — это последнее время, когда можно сделать пулл реквест. | 454 |
| 10 | 😀Напоминаю про дедлайн.
20 июля 10:00 - это последнее время, когда можно сделать пулл реквест. Рассматриваться будут только те языки, которые успели к этому времени | 414 |
| 11 | Когда-то мы планировали открыть дискорд сервер для нашего сообщества, так вот, наступило время это сделать!
Будем рады видеть вас здесь: https://discord.gg/ANUc56vnKd | 890 |
| 12 | Поздравляю вас с началом лангджема.
Тема, условия и инструкция по сдаче проекта находится в репозитории: https://github.com/langdev-jam/plic
Кратко напоминаю об условиях: вы пишите свой язык программирования (компилятор/интерпретатор) на тематику, которая определена в репозитории. Следуя инструкции выкладываете свой проект и забираете приз
Приз: 5000 RUB
Дата окончания: 20 июля | 1 046 |
| 13 | ДАТА НАЧАЛА ЛАНГДЖЕМА
12 июля будут опубликованы условия мероприятия.
Приз: 5000 рублей (~$65).
Кратко напомню о мероприятии: участникам даётся определенный период времени, в течении которого они должны будут сделать язык программирования, который соответствует условиям. На выбор может быть несколько идей, выбираете ту, которая нравится больше всего и делаете яп | 893 |
| 14 | 👨💻 LANGJAM
Некоторое время назад мы объявили о мероприятии, где участникам предлагается написать свой язык программирования, соответствующий выбранной теме, которая будет определена во время начала конкурса.
В прошлом посте мы обещали опубликовать ресурсы для тех, кто ни разу не писал свой язык программирования, но очень хотел бы поучаствовать. Так вот, мы возвращаемся со списком ресурсов!
🌟Ресурсы:
1. Книга: Crafting interpreters. Bob Nystrom. Книга отлично подходит для новичков, с понятным объяснением сложных тем. В книге представлена имплементация интерпретатор языка программирования Lox на Java, и виртуальный машины для Lox на C. Книга бесплатно на английском языке доступна онлайн на официальном сайте
2. Книга: Thorsten Ball. Writing interpreter in Go. Книга простым языком объясняет имплементацию интерпретатора для простого языка программирования Monkey на Go. Книга на английском бесплатно доступна тут
3. Книга: Thorsten Ball. Writing compiler in Go. Книга простым языком объясняет имплементацию компилятора для простого языка программирования на Go.
4. Книга: Бенджамин Пирс. Типы в языках программирования. Книга предоставляет информацию по множеству типовых систем и их имплементаций. Книга бесплатно доступна тут
5. Книга: Никлаус Вирт. Построение компиляторов. В этой маленькой книге изложен виртовский подход к разработке компиляторов, в котором отбрасываются любые усложнения вроде оптимизаций или сложностей кодогенерации, и читатель идет к работающему языку самым коротким путем. Теории тут нет, все пояснения делаются на пальцах, формируя интуитивное понимание проблем.
6. Видеокурс от ANNIMON по написанию интерпретируемого языка программирования на Java. В курсе подробно разобрано большинство тем, необходимых для имплементации языка программирования. https://www.youtube.com/playlist?list=PL81SFGIHr5IJFsoWX0qTeQ9_-MFBE552C
7. Видеокурс по написанию базы для языка программирования на TypeScript: https://www.youtube.com/playlist?list=PL_2VhOvlMk4UHGqYCLWc6GO8FaPl8fQTh
8. Видеокурс по написанию простого языка программирования на Python: https://www.youtube.com/playlist?list=PLZQftyCk7_SdoVexSmwy_tBgs7P0b97yD
9. Видеокурс по написанию языка программирования под llvm на Python: https://www.youtube.com/playlist?list=PLCJHRjnsxJFoK8e-RaNZUa7R4BaPqczHX
10. Видеокурс по книге Crafting Interpreters с имплементацией представленного языка на Rust: https://www.youtube.com/playlist?list=PLj_VrUwyDuXS4K3n7X4U4qmkjpuA8rJ76
11. Статья: Имплементация вывода типов на Rust:
часть 1) https://habr.com/ru/articles/748978/
часть 2) https://habr.com/ru/articles/753180/
Также, было бы плохо, не оставить ссылку на целую библиотеку ресурсов по теме разработки языков программирования: https://github.com/true-grue/Compiler-Development/tree/master | 543 |
| 15 | LANGJAM
Некоторое время назад мы проводили мероприятие, где пользователям предлагалось написать программу на выбранном нами интересном языке. Спустя год идея конкурса была переосмыслена и мы готовы представить langjam.
Каждый из вас может написать свой язык программирования, соответствующий теме, которая будет определена во время начала конкурса. Можно выиграть от 2000 до 5000 рублей. Места будут определятся судьями во время прямой трансляции. Это отличная возможность испытать себя в разработке компиляторов / интерпретаторов.
Чуть позже мы опубликуем в канале ресурсы для тех, кто ни разу не писал свой язык программирования, но очень хотел бы поучаствовать.
Кто хочет принять участие в качестве судьи конкурса, уже можете писать: @k1ngmang, @vyacheslavhere | 1 112 |
| 16 | Какой контент вы бы хотели тут видеть? | 495 |
| 17 | Недавно прошел 7-дневный хакатон по разработке языка программирования. За это время нужно было написать яп и игру на нем. На дискорд-сервеое хакатона можно найти вкладку с проектами, и посмотреть, что у людей получилось сделать за этот промежуток времени: https://langjamgamejam.com/
Чат: @procompilers | 699 |
| 18 | Суперкомпилятор Java. Я уже упоминал труды hirrolot'a с его довольно интересным проектом mazeppa, но в данной статье был выбран реальный язык, который используется в реальных проектах и нуждается в оптимизации.
В самой статье не так много теории, касающейся суперкомпиляторов, поэтому снова напомню вам про этот замечательный сборник ресурсов, где вы сможете найти материалы для изучения суперкомпиляции более подробно.
Чат: @procompilers | 761 |
| 19 | Месяц назад прочитал замечательную статью Хиллела Уейна (Hillel Wayne) про алгебраические типы данных. Принёс вам свой перевод)
https://habr.com/ru/articles/962522/ | 816 |
| 20 | Статья о том, как написать не самый красивый, но быстрый лексер: https://xnacly.me/posts/2025/fast-lexer-strategies
чат: @procompilers | 823 |
