Point*: An interpreted turing-complete programming language built using Java.
Users can either write code directly in the terminal or pass a text file address as an argument while running the main file.
The language supports basic functionalities like variable declaration, print, loops(for & while) and functions.
The code goes through the following steps:
- Lexical Analysis
- Parsing
- AST Generation
- Evaluation
Here's a basic Point* program code:
def fib(n) {
if (n <= 1) return n;
return fib(n - 2) + fib(n - 1);
}
var a = 1;
var b = a<2;
if(b){
print "Condition satisfied";
for (var i = 0; i < 20; i = i + 1) {
print fib(i);
}
}
Reference taken from: Crafting Interpreters