RU

Как индексация строк изменила систему типов HydraScript

В HydraScript мне понадобились две привычные операции со строками: получить длину и обратиться по индексу. Массивы уже умели и то и другое. Чтобы на…

операторысистема типовтипизациятипоперациякомпиляторыстатический анализрефакторингооппроектирование
Habr
RU

ИИ должен был оставить программистов без работы. Но программистов стало только больше

Года три назад новостная лента про технологии читалась как бред сумасшедшего. Каждый второй заголовок сообщал, что еще полгода, максимум год, и код…

ИИ и программистыэффект ДжевонсаJevons paradoxавтоматизация программированиякомпиляторыCOBOLджунынайм в ITвайбкодингстоимость владения кодом
Habr
RU

Как мы научили JavaScript анализатор понимать поток управления

Недавно в статический анализатор PVS-Studio была добавлена поддержка JavaScript/TypeScript, и он на старте умеет искать ошибки, связанные с потоком…

CFGстатический анализАнализ потока управленияjavascripttypescriptopen sourceкомпиляторыstatic analysiscompilerкомпилятор
Habr
RU

C++ в 2026-м: память, прод, игры, Rust и ИИ — зачем учить язык, который невозможно знать целиком

C++ умеет ровно то, за что его одновременно любят и боятся: дает разработчику почти полный контроль над происходящим, позволяет выжимать из программ…

памятьпроизводительностьlegacy-кодuserverкомпиляторысанитайзерымногопоточностьасинхронностьHFTembedded
Habr
RU

Go сделали скучным — и после нейросетей это выстрелило

Go двадцать лет дразнили языком для дураков. Без дженериков, без перегрузок, без нормальных перечислений, без магии. Синтаксис учится за выходные, в…

golangязыки программированиягенерация кодаLLMобратная совместимостьдженерикимногопоточностькомпиляторыJavaPython
Habr
RU

Почему "+=" сложнее реализовать, чем "+": опыт HydraScript

Мой язык программирования HydraScript , написанный на C#, уже умел выполнять такой код: let x = 10 x = x + 1 >>> x Получаем 11 ; >>&g…

компиляторыastcloneoperatorcsharpdotnetcompilerabstract syntax treeабстрактное синтаксическое деревосинтаксис
Habr
RU

Ассемблер смыслов: от алгоритмов Маркова к кириллическому байткоду

Как естественный язык может стать мнемоническим интерфейсом для низкоуровневых вычислений.* Между человеческой мыслью и машинным кодом всегда лежала…

ассемблерархитектура процессораdslалгоритмы марковасемантический анализкомпиляторынейросимволический ии
Habr
RU

Переписал ядро языка целиком. Ни один из 444 эталонов не сдвинулся

Свой язык программирования пишут все. Обычно это калькулятор с переменными, пересказ главы про рекурсивный спуск и заброшенный репозиторий. Интересн…

компиляторыинтерпретаторязык программированияtypescriptnode.jsтестированиефаззингgolden-тестыоптимизация производительностирегрессионные тесты
Habr
RU

Mojo 1.0 вышел из бета-тестирования. Что это за язык программирования и зачем он нужен

Python давно стал почти стандартным инструментом для машинного обучения, анализа данных и научных задач. Однако в вычислительно сложных проектах его…

selectelязыки программированияmojomodularmlirкомпиляторымашинное обучениесистемное программированиеc++высокопроизводительные вычисления
Habr
RU

Компилятор, который галлюцинирует

Начнем с простого. Вы скачали нейросеть, и теперь у вас на диске лежит файл на несколько гигабайт, внутри которого миллиарды чисел. Этот файл можно…

интерпретируемость нейросетейRASPTracrтрансформерыкомпиляторымеханистическая интерпретируемостьвеса моделиselectel
Habr
RU

[Перевод] Сокращаем длительность компиляции проекта на Rust c 30 до 2 минут — пример с 1000 крейтов

Rust скор во время выполнения, а вот компилируется он не так шустро. Едва ли это удивит читателя, имевшего дело с серьёзными базами кода на Rust. В…

Rustsqlоптимизациякомпиляторывысокая производительность
Habr
RU

[Перевод] Перенос Swift на Apple II

Swift — это современный язык программирования, лежащий в основе многих приложений, работающих на платформах Apple наших дней. Мне показалось, что бы…

apple iiapple iieswiftкомпиляторыязыки программированиястарые пкретрокомпьютингистория it
Habr
RU

[Перевод] Что именно делал компилятор: как ассемблер помогает разобраться в производительности кода на C++

Расскажу вам одну историю о том, как смог прокачаться в качестве C++-программиста. Мне в этом помогло не чтение стандарта. Я тогда ещё не понимал до…

программированиекомпиляторыассемблервысокая производительностьоптимизацияc++
Habr
RU

[Перевод] В С неопределённое поведение повсюду

Если бы Кардинал Ришелье был программистом, он бы сказал: «Дайте мне шесть строк кода, написанных рукой самого профессионального C-программиста в ми…

ruvds_переводпрограммированиес++неопределённое поведениеundefined behaviorкомпиляторыоптимизация кодасилегаси-код
Habr
RU

Vercel выкатил язык программирования для агентов. Я пытаюсь понять, нужен ли он мне

15 мая Vercel Labs релизнули Zero. Экспериментальный системный язык, который сами авторы называют "the programming language for agents". Версия 0.1.…

vercel zeroязыки программированияai агентыагентный кодингclaude codecursorсистемное программированиеllmкомпиляторыразработка
Habr