Wizja - patrykkurczyna/ClojureInterpreter GitHub Wiki

Teoria kompilacji 2
Temat projektu: Interpreter uproszczonego języka LISP
Autorzy: Radosław Dyrda, Łukasz Szymański

Wizja

Projekt zostanie wykonany z użyciem języka Python oraz jego bibliotek podstawowych. Wykorzystany zostanie także generator parserów PLY (Python-Lex-Yacc). Jest to odpowiednik narzędzi bison/flex dla języka Python.

Program końcowy będzie niezależny od systemu operacyjnego.

Zakres projektu

Interpreter będzie obsługiwał:

  • wartości typu logicznego, całkowitego, zmiennoprzecinkowego, ciągu znaków
  • listy
  • operacje arytmetyczne
  • operacje logiczne
  • instrukcje złożone
  • instrukcje warunkowe, pętle
  • deklaracje zmiennych
  • definiowanie i wywoływanie własnych funkcji
  • wybrane, podstawowe funkcje LISP, np. print, length

W implementacji naszego interpretera pomijamy obsługę makr.