Skip to content

Latest commit

 

History

History
34 lines (28 loc) · 910 Bytes

File metadata and controls

34 lines (28 loc) · 910 Bytes

Pascal

A very simple interpreter for a pascal-derived language, written simply to learn the RPython compiler and toolchain. The interpreter is still lacking a lot of core features, and contains a lot of bugs.

To execute just run: pascal.exe <path/to/myfile.pas> Compile-instructions are found in main.py, you will need the RPython-source.

Features

  • Functions (needs more work)
  • Variables
  • If, Else, For, While, Repeat
  • Continue, Break, Exit, Pass
  • Named constants
  • Try, Except, Finally
  • Case
  • Directives

Basetypes [1]

  • Int/Integer (native integer)
  • Int32
  • Int64
  • Float (64bit)
  • Char
  • String
  • Dynamic Arrays (iffy implementation)
  • Record (still needs some work)
  • Enums
  • "Variants"/dynamic datatype(?)

[1]: Implementation of these types are objects, but they store the specified datatype.