Share your repls and programming experiences

← Back to all posts
Recursive Descent Calculator
h
Coder100 (6236)

Recursive Descent Calculator

This is a recursive descent calculator. It uses recursion to both interpret and parse the input. The lexer is just a for loop.

Languages used

bash for the running and node for the logic

Learn

The code should be pretty self-explanatory, but it comes from here and here.

Screenshots

Bad tutorial

  1. Lexer: Loop through each character of the code and look for things accordingly
  2. Parser: Given a grammar, convert it to javascript. Then, use the definition of lowest precedence to use recursion to go down/up.
  3. Interpreter: Recursively evaluate the tree.

I think the code will help more.

Closing

I hope this helps you with your language! It certainly taught me a lot!

Have a great day

Enjoy

Commentshotnewtop
JosephSanthosh (1062)

This is so accurate -- I got to mention I hate calculators but this is cool!

9751 (25)

WOW EVEN INFINITY

SixBeeps (2804)

Wow, it even follows Order of Operations. Nice job!

ayush2007 (41)

I tried big numbers and it worked

DynamicSquid (3218)

How do you do a carriage return on the console?

Coder100 (6236)

wdym, I don't think calculators like carriage returns... @DynamicSquid

DynamicSquid (3218)

@Coder100 oh, I meant what is a carriage return? is it the ENTER key? and isn't that just \n?

Coder100 (6236)

oh, not exactly, on older systems, \r had to be along with \n. @DynamicSquid