🚀 Welcome to jZed, My first adventure into the world of creating my own programming language interpreter! 🚀
JZed is a high-level programming language designed with the following features:
- Dynamic Typing: You won't need to declare variable types explicitly.
- Automatic Memory Management: Forget about manual memory management; JZed handles it for you.
- Standard Library: Comes with a standard library to make your coding life easier.
📚 Here are the key steps in designing and developing a programming language:
-
Scanning (Lexical Analysis): Transforming characters into tokens. Whitespace and other non-essential characters are ignored in this phase.
-
Parsing: Transforming tokens into a parse tree (syntax tree) according to the language's grammar.
-
Syntax Analysis: Ensuring your code adheres to the language's syntax rules and checking for syntax errors.
-
Optimizations: Improving code efficiency with techniques like constant folding.
-
Intermediate Code Representations: Translating code into an intermediate format for further processing.
-
Code Generation: Generating executable code from the intermediate representation.