- Created the project structure
- Released v1.0.0:
- All Commands:
- Terminal:
- Clear: Clear the terminal
- Echo(): Echo a message
- Style(): Change the style of the terminal (colors)
- Data and Math:
- Math:
- Compare: Compare two numbers
- Eval: Evaluate a mathematical expression (orignally used Python's
eval()function)
- Data:
- Compare: Compare two strings if they are equal
- Math:
- Variables:
- Set: Set a variable
- : Get a variable / Set a variable value (=)
- Program:
- Main {...} : The main program block
- Loop(n) {...} : Loop n times
- ForeverLoop {...} : Loop forever
- BreakLoop : Break the current loop (useful with ForeverLoop)
- If(condition) {...} : If condition is true
- Terminal:
- All Commands:
- Used to exist in the project but was removed
- You may check the commit history to see the guide files
PyInstaller, the standard tool for packaging Python applications was replaced with Nuitka, as it provides better performance as Nuitka uses C.
Python code was optimized to improve performance. Also, experiments were conducted to replace Python's eval() function with a custom parser.
- Added new commands to the language:
- Time:
- Current() : Fetches the current time in the specified format, for example:
Time.Current("YYYY-MM-DD HH:MM:SS") - Wait() : Wait for the specified number of seconds
- Current() : Fetches the current time in the specified format, for example:
- Math:
- Random(, ) : Generates a random number between min and max.
- Time:
- Updated the README.md file to reflect the changes made to the project.
- Fixed errors in README
- Reorganized the files to improve the structure of the project.
- Clearly seprated the logos, source code, compiled executables, and other files.
- Got rid of unnecessary files.
- Removed Guide Files.
- Setup the ICTL Studio website at https://basic-ictl-web-studio.onrender.com/
- Coded the website using Flask, HTML, CSS, and JavaScript.
- Code is merged within the
codefolder, while the code used by Render is seprated into a seprate folder (ICTL-StudioOnline_Release).
- Created HISTORY.md to keep track of the changes made to the project.
- Created
/editor.htmlto allow users to edit ICTL code in their browser easily (iFrame points to the ICTL Studio website).