Skip to content

Latest commit

 

History

History
35 lines (29 loc) · 1.19 KB

README.md

File metadata and controls

35 lines (29 loc) · 1.19 KB

LAUGH Interpreter

This is a LISP-based language that I'm making following the UoE TypeSig workshops.

The language itself is designed to be esoteric and comedic, while implementing helpful error messages and checks. For instance, the standard file extension is .lmao_why_are_you_using_this, and the interpretter will helpfully (albiet not so nicely) inform you of this if one makes a typo.

Goals

My main goals of the project are as follows:

  1. Successfully implement a Turing complete language with a sufficiently powerful structure to perform basic calculations and operations, as well as implement simple data structures.
  2. Learn about programming language theory and the inner workings of programming languages.
  3. Have fun developing an esoteric language!

Basic syntax and examples

Adding two integers:
add 1 2 ; produces 3
Working with strings:
concat "Hello " (concat "world" "!") ; produces "Hello world!"
Basic division:
div 3 4 ; produces .75 If statemetns:
(if (equals 1 1) "1 is 1" "1 is not 1")
Assertions:
assert (sum 1.5 1.5) (div 6.0 2.0) 3.0