- Notifications
You must be signed in to change notification settings - Fork0
A C# interpreter for the Lox programming language
mhmd-azeez/LoxSharp
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Lox is a little programming language created byBob Nystrom in his bookCrafting Interpreters. This is my attempt at recreating it in C#. I've published a web based version of the interpreterhere.
The interprer is still a work in progress as I've not finished the book yet.
Name | Operators | Associates |
---|---|---|
Unary | ! - | Right |
Multiplication | / * % | Left |
Addition | - + | Left |
Comparison | > >= < <= | Left |
Equality | == != | Left |
Lox is a dynamically typed language, variables can have values of four types:nil
,number
(64-bit floating point numbers),boolean
andstring
.
var x=5.8;var y;y=10;var z= x* y;var i=true;print(i);print(z);
var x=250;if (x%2==0){print("Even");}else{print("Odd");}
var x=0;while(x<10){if (x>5)break;print(x); x= x+1;}
for (var i=0; i<10; i= i+1){print("i is:"+ i);}
Functions can return something:
funcoolify(thing){return"cool"+ thing;}print(coolify("app"));
Or return nothing:
fundoSomething() {print("Doing something...");}doSomething();
There are only two functions in the standard library:
pPrints the value to stdout:
print("Hello World!");print(42);print(true);
Returns the number of seconds since 0001-01-01:
print(clock());
About
A C# interpreter for the Lox programming language
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.