Skip to content

Front-end Рефала-5 #6

@Mazdaywik

Description

@Mazdaywik

У нас есть препроцессор, который может конвертировать подмножество Простого Рефала в исходный код на Модульном Рефале. При этом он написан на Модульном Рефале. Его можно аккуратно встроить в компилятор, получив при этом второй front-end. Следует заметить, что поддержка множественных front-end’ов в компиляторе уже имеется.

Частности:

  1. Самый простой вариант встраивания: для каждого входного файла на Простом Рефале вызывать препроцессор, который будет порождать временный файл. Последний скармливать парсеру Модульного Рефала. Препроцессор гарантирует, что номера строк сохранятся и будут правильно указывать на синтаксические ошибки. Разумеется, есть много более сложных, но более качественных вариантов.
  2. Текущая версия препроцессора сильно отстала, она не поддерживает идентификаторы и вложенные функции. Версию нужно актуализировать.
  3. Front-end будет принимать только подмножество Простого Рефала, возможно, расширенное подмножество.
  4. Уже есть back-end Простого Рефала. Поскольку front-end принимает подмножество, он не обязан обрабатывать выхлоп back-end’а.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions