es
Feedback
compilers

compilers

Ir al canal en Telegram

Все про компиляторы и языки программирования Наши чаты: @procompilers - общий чат по разработке языков. @code_crafting_ru - чат, где можно вести блог своего языка программирвоания

Mostrar más
237
Suscriptores
-124 horas
+27 días
+830 días

Carga de datos en curso...

Canales Similares
Sin datos
¿Algún problema? Por favor, actualice la página o contacte a nuestro gerente de soporte.
Nube de Etiquetas
Sin datos
¿Algún problema? Por favor, actualice la página o contacte a nuestro gerente de soporte.
Menciones Entrantes y Salientes
---
---
---
---
---
---
Atraer Suscriptores
sep '26
septiembre '26
+13
en 0 canales
agosto '26
+26
en 0 canales
Get PRO
julio '26
+31
en 0 canales
Get PRO
junio '260
en 0 canales
Get PRO
mayo '26
+7
en 0 canales
Get PRO
abril '260
en 0 canales
Get PRO
marzo '260
en 0 canales
Get PRO
febrero '260
en 0 canales
Get PRO
enero '260
en 0 canales
Get PRO
diciembre '25
+6
en 0 canales
Get PRO
noviembre '250
en 0 canales
Get PRO
octubre '25
+1
en 0 canales
Get PRO
septiembre '25
+10
en 0 canales
Get PRO
agosto '250
en 0 canales
Get PRO
julio '250
en 0 canales
Get PRO
junio '250
en 0 canales
Get PRO
mayo '25
+74
en 0 canales
Get PRO
abril '250
en 0 canales
Get PRO
marzo '25
+47
en 1 canales
Get PRO
febrero '250
en 1 canales
Get PRO
enero '250
en 1 canales
Get PRO
diciembre '240
en 0 canales
Get PRO
noviembre '240
en 0 canales
Get PRO
octubre '240
en 0 canales
Get PRO
septiembre '240
en 0 canales
Get PRO
agosto '240
en 0 canales
Get PRO
julio '24
+45
en 0 canales
Get PRO
junio '240
en 0 canales
Get PRO
mayo '24
+9
en 1 canales
Fecha
Crecimiento de Suscriptores
Menciones
Canales
25 septiembre+1
24 septiembre0
23 septiembre+1
22 septiembre+1
21 septiembre0
20 septiembre0
19 septiembre0
18 septiembre+1
17 septiembre0
16 septiembre0
15 septiembre+2
14 septiembre+1
13 septiembre0
12 septiembre+1
11 septiembre+1
10 septiembre0
09 septiembre0
08 septiembre+2
07 septiembre0
06 septiembre0
05 septiembre+1
04 septiembre0
03 septiembre0
02 septiembre0
01 septiembre+1
Publicaciones del Canal
Neva - dataflow-язык, где программа это не список инструкций, а граф узлов, обменивающихся сообщениями через порты. impo
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

2
Знаете, почему -O2 может молча выбросить вашу проверку на переполнение? Потому что переполнение знакового целого - это UB. А
Знаете, почему -O2 может молча выбросить вашу проверку на переполнение? Потому что переполнение знакового целого - это UB. А раз UB быть не может, то и условие, которое срабатывает только при нём, всегда ложно. Ветка мёртвая => можно удалять. Одна и та же программа: -O0 возвращает -1, -O2 возвращает -2147483648. Разбор реального бага GCC, проверок после разыменования и санитайзеров в статье.
368
3
Как скопировать дерево, но не точь-в-точь Инженеры PVS‑Studio рассказывают про трансляцию ast через protobuf, паттерны преобр
Как скопировать дерево, но не точь-в-точь Инженеры PVS‑Studio рассказывают про трансляцию ast через protobuf, паттерны преобразований и 263 типа узлов, которые пришлось обходить. В статье про выбор между итератором и посетителем, эмуляцию двойной диспетчеризации и почему нормализация - боль
755
4
Go 1.27 Самый громкий апдейт этого релиза - обобщённые методы. Теперь можно объявлять параметры типа прямо у методов структур, а не только у функций. Из приятного: json получил вторую мажорную версию. Новый пакет работает быстрее, особенно на распаковке, и стал строже: теперь он ругается на невалидный UTF-8 и дублирующиеся ключи в объектах. При этом старый код продолжит работать как раньше, а выигрыш в производительности мы получим бесплатно. Также в профилировщике появился тип goroutineleak, который находит горутины, намертво застрявшие на недостижимых каналах или мьютексах. Весь список изменений можете почитать тут
476
5
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)
918
6
Оказывается, обучение нейросети - это тоже компиляция, только случайная и без гарантий. В статье рассказывают, как специальны
Оказывается, обучение нейросети - это тоже компиляция, только случайная и без гарантий. В статье рассказывают, как специальный компилятор Tracr переводит программу на языке RASP в файл с весами трансформера, и зачем это нужно: https://habr.com/ru/companies/selectel/articles/1066052/
786
7
Нашёл отличный доклад по теме JIT-компиляции в Cpython. В докладе затрагиваются подробности имплементации JIT такие как уникальный механизм copy and patch компиляции и micro codes interpreter. Что же нам предвещает добавление JIT в коробочную версию cpython? Мы получим бесплатное ускорение всех наших программ и возрадуемся или всё не так просто? Давайте попробуем разобраться вместе. https://youtu.be/BiVEhI7wYS4?si=1dQFOg1UseCg66Jk
450
8
😭Сегодня в нашем дискорде смотрели язык V (vlang.io). Помимо того, что компилятор допускает утечку при обычном hello world,
😭Сегодня в нашем дискорде смотрели язык V (vlang.io). Помимо того, что компилятор допускает утечку при обычном hello world, так еще и проблемы из review 2023 года не были решены. Забавно, что автор изначально задумывал минималистичный язык, а по итогу мы имеем borrow checker, arena allocator, autofree, manual memory management, а также built-in orm и параллельный сборщик мусора! Интересно, что нужно добавить в V, чтоб он перестал быть минималистичным?
693
9
🔈Aya-Prover Интерактивная система, предназначенная для формализации теорий и написания программ с зависимыми типами. Система имеет блог, который содержит не только документацию языка, но и публикации авторов, которые проливают свет на внутреннее устройство проекта: https://www.aya-prover.org/pubs/. Если вам интересны Coq, Agda и подобные, то рекомендую ознакомиться и с Aya.
432
10
🗑 Сборка мусора в Python Если вам было бы интересно узнать об устройстве сборки мусора в Python, то этот цикл статей точно д
🗑 Сборка мусора в 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
11
🤩ИТОГИ Пришло время подводить итоги langjam (plic). Первое место забирает язык программирования Dola. Просьба победителя связаться с @k1ngmang, чтобы забрать свой приз. Ну а вот какие языки попали в первую пятерку: 1) dola 2) graft 3) ftorlisp 4) ygvm 5) py++
862
12
👨‍💻🐨 До конца приёма работ на langjam осталось 3 часа. 10:00 — это последнее время, когда можно сделать пулл реквест.
454
13
😀Напоминаю про дедлайн. 20 июля 10:00 - это последнее время, когда можно сделать пулл реквест. Рассматриваться будут только
😀Напоминаю про дедлайн. 20 июля 10:00 - это последнее время, когда можно сделать пулл реквест. Рассматриваться будут только те языки, которые успели к этому времени
414
14
Когда-то мы планировали открыть дискорд сервер для нашего сообщества, так вот, наступило время это сделать! Будем рады видеть вас здесь: https://discord.gg/ANUc56vnKd
890
15
Поздравляю вас с началом лангджема. Тема, условия и инструкция по сдаче проекта находится в репозитории: https://github.com/langdev-jam/plic Кратко напоминаю об условиях: вы пишите свой язык программирования (компилятор/интерпретатор) на тематику, которая определена в репозитории. Следуя инструкции выкладываете свой проект и забираете приз Приз: 5000 RUB Дата окончания: 20 июля
1 046
16
ДАТА НАЧАЛА ЛАНГДЖЕМА 12 июля будут опубликованы условия мероприятия. Приз: 5000 рублей (~$65). Кратко напомню о мероприятии:
ДАТА НАЧАЛА ЛАНГДЖЕМА 12 июля будут опубликованы условия мероприятия. Приз: 5000 рублей (~$65). Кратко напомню о мероприятии: участникам даётся определенный период времени, в течении которого они должны будут сделать язык программирования, который соответствует условиям. На выбор может быть несколько идей, выбираете ту, которая нравится больше всего и делаете яп
893
17
👨‍💻 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
18
LANGJAM Некоторое время назад мы проводили мероприятие, где пользователям предлагалось написать программу на выбранном нами и
LANGJAM Некоторое время назад мы проводили мероприятие, где пользователям предлагалось написать программу на выбранном нами интересном языке. Спустя год идея конкурса была переосмыслена и мы готовы представить langjam. Каждый из вас может написать свой язык программирования, соответствующий теме, которая будет определена во время начала конкурса. Можно выиграть от 2000 до 5000 рублей. Места будут определятся судьями во время прямой трансляции. Это отличная возможность испытать себя в разработке компиляторов / интерпретаторов. Чуть позже мы опубликуем в канале ресурсы для тех, кто ни разу не писал свой язык программирования, но очень хотел бы поучаствовать. Кто хочет принять участие в качестве судьи конкурса, уже можете писать: @k1ngmang, @vyacheslavhere
1 112
19
Какой контент вы бы хотели тут видеть?
495
20
Недавно прошел 7-дневный хакатон по разработке языка программирования. За это время нужно было написать яп и игру на нем. На дискорд-сервеое хакатона можно найти вкладку с проектами, и посмотреть, что у людей получилось сделать за этот промежуток времени: https://langjamgamejam.com/ Чат: @procompilers
699