Welcome to EEWA (Expression Evaluation in WebAssembly)! This project is a learning endeavor aimed at building an interpreter to understand the intricacies of developing a Domain Specific Language (DSL). It is inspired by the books "Writing An Interpreter In Go" and "Writing A Compiler In Go" by Thorsten Ball. Project is still a work in progress. I wish to complete it someday soon.
EEWA is an interpreter designed to evaluate mathematical expressions, implemented using Go and compiled to WebAssembly. This project serves as an educational tool to explore the process of creating a DSL, from parsing and interpreting expressions to executing them efficiently in a WebAssembly environment.
Expression Parsing: Parses mathematical expressions into an abstract syntax tree (AST). Evaluation: Evaluates parsed expressions and returns the result. Custom Syntax: Implements a simple DSL for expression evaluation, allowing for custom syntax rules and operations. Technologies Used Go: For developing the core interpreter and compiling to WebAssembly.
This project is inspired by the following books, which provide an excellent foundation for understanding interpreters and compilers:
"Writing An Interpreter In Go" by Thorsten Ball "Writing An Compiler In Go" by Thorsten Ball
Known Issues As this project is primarily for learning, there may be unresolved bugs and limitations. Feel free to fork the repository and make improvements as you see fit.
Contributing This project is a personal learning endeavor and is not actively maintained. However, if you wish to contribute, feel free to fork the repository and submit a pull request.
Acknowledgments Thorsten Ball for his excellent books on interpreters and compilers.