Skip to content

This is the repository for my very own programming language that I am making with the knowledge from one of my classes for spring semester of 2025.

Notifications You must be signed in to change notification settings

JacobTheCoder19/Personal-Programming-Language

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 

Repository files navigation

💎 Key Features 💎

🟩 Simple Syntax
 🔸 Designed for ease of use, allowing users to write clear and concise code with minimal complexity.

🟩 Basic Arithmetic Operations
 🔸 Allows users to perform basic arithmetic operations such as addition, subtraction, multiplication, and division.

🟩 Print Output
 🔸 Users can display output to the console using the `display` command, making it easy to see results.

🟩 Recursive Descent Parsing
 🔸 Utilizes recursive descent parsing to analyze the structure of the code, allowing for clear and efficient interpretation of expressions.

🟩 Error Handling
 🔸 Provides clear feedback for syntax errors and runtime issues, helping users debug their code effectively.

✨ Purpose / Inspiration ✨

 The inspiration for this project came from a goal I had when I first became really passionate about programming. I always thought that it would be awesome to develop my own programming language and be able to understand programming at that advanced of a level. So, I took a class about the structure of programming languages where I am learning more and more about how they work and how to make my own. This language is a cool project of mine where I take what I am learning in that class and then use it to build this language of mine. This language was named after one of my favorite movie series of all time, The Matrix. I choose to make the file type in which the language is stored in a .jg since those are my initials for my name. This project may not be completely done yet but I am working on it every week to hopefully be just as good as python or other popular languages!

⚙️ How it works ⚙️

 The Matrix programming language is designed to be simple and user-friendly. Users can write code in a text file with a .jg extension, using a straightforward syntax that includes arithmetic operations and output commands.

 To execute a program, users run the Matrix script from the command line, passing the filename as an argument (e.g., ./Matrix test.jg). The interpreter reads the code, tokenizes it, parses it into an Abstract Syntax Tree (AST) using recursive descent parsing, and evaluates the expressions to produce output.

 To run the language so your terminal accepts it, first make it an executable by doing "chmod +x Matrix". Then you should be able to do "./Matrix FILENAME.jg" to run your program

 Also, The ";" is a statement separator and not a statement terminator. That way the user doesn't need one on the last line of code. Think of it like when using numbers or variables in an array [1,2,3,4] You don't have a "," at the end because it is a statement seperator and not a statement terminator. My language follows the same principle but with the ";" because it makes more sense to me and makes it easier to not forget a semicolon when I think of them as just seperating statements.

 Error handling is built into the interpreter, providing users with feedback on syntax errors or runtime issues, which helps them learn and debug their code effectively. Overall, Matrix is a simple yet powerful tool for anyone looking to explore the world of programming.

About

This is the repository for my very own programming language that I am making with the knowledge from one of my classes for spring semester of 2025.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published