Go to file
Valk Richard Li 9a761793dd
backup for multi assignment
2019-10-21 23:56:35 +08:00
misc backup for multi assignment 2019-10-21 23:56:35 +08:00
testing_files Add test file 2019-10-19 10:46:57 +08:00
version0.7 Add PDA demo for LR 2019-08-30 08:37:49 -05:00
version0.9 LL(1) demo & LR demo & nasal LR parser demo !!! 2019-08-30 11:43:46 -05:00
version0.17 Finished a calculator! 2019-09-15 05:53:04 -05:00
version0.18 Delete main.exe 2019-09-17 18:49:57 +08:00
version0.19 Ready for the real parser 2019-09-18 10:39:09 -05:00
version1.0 Bug fixed 2019-10-14 22:53:30 +08:00
version1.1 Add lambda 2019-10-20 13:06:57 +08:00
.gitignore Initial commit 2019-07-25 02:11:59 +08:00
NASAL语言教程-完整版.pdf Add files via upload 2019-07-25 02:18:20 +08:00
README.md Update README.md 2019-10-13 11:01:31 +08:00

README.md

Nasal Interpreter

Nasal

Nasal is a script language that used in FlightGear.

There is a Nasal console in FlightGear but sometimes it is not so easy for every developer to use.

So this is an interpreter for Nasal written by C++.

The interpreter is still in development.Anyone who interested in this could also join us!

Now complete add and sub in abstract syntax tree

And add a command 'ast' to see the AST

and command 'run' can give you the result

Now complete Lexical Analysis!

What do it's outputs look like?

( Identifier | engineTimer )

( Operator | . )

( Identifier | start )

( Operator | ( )

( Operator | ) )

( Operator | ; )

( ReserveWord | print )

( Operator | ( )

( String | "Engine started" )

( Operator | ) )

( Operator | ; )

This is what it outputs.

Push down automata

After many times of failure,i finally try to use PDA to do the parse work.

But something occurred,so i finally didn't make it.However you can still see this LL(1) and LR(0) parser in version 0.7 & 0.9

Now complete Parser

The parser can recognize some basic elements in resource program.

And in future i will make it to support more flexible grammar.

Calculator

You can try a calculator in version 0.17~0.19 !

Abstract syntax tree

In version 1.0 the ast will be completed.