Concrete Basic


Concrete Basic is a small dynamically typed procedural programming language I wrote during my time at Charles University. It’s implemented in C# and demonstrates the architecture of a basic interpreter using OO principles.

The language was designed to look reminiscent of old-school BASIC, by utilizing an entirely keyword-based syntax and case-insensitivity (which enables one to write control structure keywords and function names in ALL CAPS). Explicit line-numbering, GOTOs, and other more archaic BASIC-isms weren’t included in the design for the sake of implementation ease and my sanity (semantically the language is most similar to Lua).

Check out the documentation

The interpreter source code

Example programs