summaryrefslogtreecommitdiffstats
path: root/src/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/__init__.py')
-rw-r--r--src/__init__.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/__init__.py b/src/__init__.py
new file mode 100644
index 0000000..747efde
--- /dev/null
+++ b/src/__init__.py
@@ -0,0 +1,38 @@
+from front.lexer import Lexer
+from front.parser import Parser
+#from front.symbols import SymbolTable
+
+def main():
+ source = '''fun fib[a]
+ if a < 2
+ @1
+ end
+ @( fib[a-1] + fib[a-2] )
+end
+
+# main function
+fun main[]
+ sum = 0
+ i = 0
+ while (i < 10)
+ sum = sum + fib[i]
+ i = i + 1
+ end
+ @sum
+end'''
+
+ #symbols = SymbolTable()
+ #lex = Lexer(source)
+
+ # testing
+ #while True:
+ # token = lex.scan()
+ # print token.__repr__()
+ # if not token:
+ # break
+
+ parse = Parser(Lexer(source))
+ print parse.parse()
+
+if __name__ == "__main__":
+ main()