Сейчас вернулся к проекту интерпретатора схемы с виртуальной машиной. Собираюсь добавить замыкания. Хочу уточнить правильно ли я понимаю, что мне вообще нужно делать. Раньше м...
Какую структуру данных лучше всего использовать для symtable? Находил разные варианты и с хэш таблицами и с деревьями и со стеком. Symtable если что для scheme. И ещё вопрос, ...
Кстати, такой вопрос, в каких современных языках используется динамическое окружение? Ну или есть возможность его использовать?
Кто-то использует let _ ? Сейчас запустил clippy и он ругается на неиспользуемое значение, но я уверен, что оно никогда не вернётся (is_some_and с вызовом паники). Лучше остав...
Кстати, я же правильно понимаю, что макросы(fexpr) можно и нужно "разворачивать" на этапе генерации байткода. Тоесть основные (lambda if define ...) будут иметь свои инструкци...
И ещё пара вопросов(возможно глупых, но до этого я только парсер жсона писал), нормально же для каждого правила в bnf создавать отдельный узел ast, тоесть структуру/enum и соо...
Пытаюсь написать метод для вычисления Follow множества для произвольной грамматики, у меня есть структура с полями first и follow(HashMap<&'a str, HashSet<&'a Term>>). Одним и...
Мне нужна структура похожая на односвязные список, но у одного узла может быть несколько хозяев. Это же кейс для использования Rc<RefCell>> ? Если что данные в узле нужно имет...
Сейчас заканчиваю Scheme r1rs(решил взять маленький стандарт пока что). Из конструкций осталось только CATCH доделать. И вот встаёт вопрос как. Эта конструкция принимает идент...
Я вот задумался над тем, чтобы переписать свой интерпрететор (сейчас это простой tree-walking интерпрететор в CPS стиле) с использованием байткода и виртуальной машины. Свой и...
https://github.com/rrupy/scheme/tree/dev Я пишу интерпретатор схемы(снова, но в этот раз с компиляцией в байткод), вот возникла пара вопросов: 1) Нормально ли будет сделать а...
А зачем нам то как ты решил очень сложную проблему?
Вопрос про пул констант. Что в нем хранить, а что прям в инструкциях байткода? Вот например достаточно маленькие числа(i32 в моем случае). Идентификаторы хранятся также в нем?...
Я пытаюсь совместить logos и chumsky(скорее запустить, т.к. сам лексер и функция возвращающая impl Parser<Token<'a>, SExpression<'b>, Error = Simple<Token<'a>>> + 'a уже есть ...
Где посмотреть грамматику для EBNF?
А вот такой вопрос, парсер генераторы LL(1) вообще делают?
Пишу реализацию интерпретатора схемы(р7рс) на расте, в р7рс есть формальное определение семантики. Какие семантические правила нужно проверять на этапе семантического анализа,...
Я не до конца понимаю где могут встречаться эти директивы и где они будут считаться приемлемыми. These directives can appear anywhere comments are permitted (see section 2.2) ...
Я хотел разделить модуль с парсерами на подмодули поменьше, чтобы не было файла ~2000 строк. Изначально думал делить их как разделы в r7rs(lexical structure, expression, quasi...
Какие в расте есть либы с парсер комбинаторами?