Skip to content

Latest commit

 

History

History
28 lines (21 loc) · 1.58 KB

03-one-symbols.md

File metadata and controls

28 lines (21 loc) · 1.58 KB

Чекпоинт 3. Проработка базовых символов

Дедлайн - 18 марта, 16:59

Во втором чекпоинте мы научились обходить AST при помощи Visitor-ов. Цель этого чекпоинта - построить инфраструктуру для дальнейшего дерева вызова функций.

Продумайте для вашего языка программирования возможные блоки для участков кода:

  • Класс
    • название
    • список полей
    • список методов
  • Метод
    • список аргументов
    • возвращаемое значение
    • ссылка на scope
  • Переменная
    • название
    • тип
    • если переменная является экземпляром класса, то сделайте ссылку на элемент "Класса"
  • Scope-блок
    • список переменных, определяемых внутри scope-а

Подумайте, каким образом можно идентифицировать scope: зачастую будет полезно иметь доступ к нему по ключу.

Подумайте над иерархией выше перечисленных структур. Если что, не бойтесь задавать вопросы в чате - обсуждение крайне приветствуется!

Схему можно модифицировать на свое усмотрение.