Публикации по теме 'compilers'


Vyaakaran — Визуализируйте мир автоматов и парсеров!
Vyaakaran — это браузерный инструмент для визуализации грамматик в виде автоматов, таблиц синтаксического анализа и других понятий, встречающихся в теории формального языка. Я начал работать над Vyaakaran, чтобы лучше изучить компиляторы и написание языков, а также создать полезный проект, чтобы другие могли изучить то же самое. В этой статье я расскажу, как работает ядро ​​Вьяакарана. Я считаю это одной из лучших областей информатики, и к концу этой статьи я надеюсь, что вы..

Четыре этапа компиляции (программирование на C и компилятор gcc)
Вы когда-нибудь задумывались, как работает компилятор gcc? Для перевода исходного кода, написанного в машинном коде высокого уровня, в машинный код низкого уровня требуется всего четыре шага. Сегодня я покажу вам четыре этапа компиляции программы на C с помощью gcc! Начнем с первого этапа: Предварительная обработка . Удаляет комментарии из исходного кода. Макро-расширение. Также расширение файлов заголовков. Когда вы предварительно обрабатываете исходный файл c, он генерирует..

Параллелизм Rust для разработчиков, не использующих C / C ++
Самый минимум. Большинство людей, приходящих в Rust, имеют опыт работы с C / C ++, что позволяет им легко переходить на параллелизм Rust, поскольку он очень похож. Однако для многих людей, пришедших с других языков, это проблема. В этом посте мы рассмотрим стандартные инструменты параллелизма Rust, а также их мотивацию. Это потребует вначале глубокого погружения в аппаратную часть, за которым последует объяснение низкоуровневых инструментов, таких как атомикс, и в конце объяснение..

Новые функции в Angular 7
A ngular — одна из самых популярных платформ для создания веб-приложений, и с выпуском Angular 7 он предоставил несколько более мощных функций, которые улучшат наше приложение. Итак, давайте углубимся в это и рассмотрим некоторые новые функции, представленные в Angular 7. Новый компилятор ng В Angular 7 добавлен новый компилятор, который называется Компилятор совместимости с Angular (ngcc) . Новый компилятор способен к превосходной 8-фазной ротационной компиляции с..

Перегрузка параметров JavaScript
Фреймворки/библиотеки Angular – полная платформа с лучшими практиками, разработанными на ее основе. Это чем-то похоже на Ruby on Rails с базой MVC. Проблемы с Angular включают кривую обучения , и он вносит изменения в фактический DOM (а не в виртуальный DOM), что значительно замедляет его работу. Это по-прежнему второй по популярности после React. React — небольшая библиотека представлений, в отличие от Angular framework . Это самый популярный из списка и, как известно,..

Простая интерполяция строк с помощью ANTLR
В последнее время я работаю над Fray , любимым проектом, целью которого является создание продуктивного языка с несколькими целями компиляции и встряхиванием деревьев. Компилятор и интерпретатор Fray используют конвейер преобразователей , которые изменяют исходный код перед выполнением или компиляцией. Несколько функций языка реализованы как преобразователи, в первую очередь интерполяция строк. После использования утомительного решения на основе регулярных выражений я в конечном итоге..

Это одна из тех вещей, над которыми я давно хотел работать.
Это одна из тех вещей, над которыми я давно хотел работать. Я пытаюсь упростить вычисления на GPU и многопоточность в JavaScript, и я тоже провел исследование по этой теме. Я хочу сразу же присоединиться к этому проекту. да. Я также позабочусь о том, чтобы этот компилятор поддерживал простой OpenCL / CUDA / OpenMP из коробки, чтобы разработчики могли использовать эти инструменты для повышения эффективности программ. Во времена многоядерных машин всегда нежизнеспособно зависеть от..