- EasiScript v1.0
- EasiScript v1.1
- EasiScriptX.
EasiScript is a beginner-friendly, simplified programming language designed to make coding more accessible. EasiScript offers a flexible syntax that allows developers to choose from multiple commands to perform the same operation. This flexibility increases ease of use and makes the language approachable for beginners and versatile for experienced developers.
EasiScript 1.0 , the first version of EasiScript, Written in Python provided the foundation for a simplified coding experience with features including:
- Multiple syntax options for common operations
- Simplified arithmetic, conditional, and loop operations
- Easy-to-understand function definitions
- Support for lists and dictionaries
- Basic file handling and error management
While these features made EasiScript 1.0 a great starting point, There were many, many problems with it, so it has to be solved. leading to the development of EasiScript 1.1.
If you want to know more about EasiScript v1.0, refer documentation. Since it is no longer supported, Detailed functions won't be displayed here.
EasiScript 1.1 marks a major update, bringing the language to a new level of functionality and performance. Written entirely in C++, this version is built to offer a robust and efficient programming environment. Only Lexer and Parser have been completed. While Interpreter is still in development, EasiScript 1.1 is set to introduce powerful features and enhancements, including:
- Language Core: Built from the ground up in C++, EasiScript 1.1 offers a high-performance execution environment.
- Lexer and Parser: The lexer supports 127 commands, offering a rich set of operations while the parser efficiently processes the syntax into meaningful code.
- Interpreter: Although under development, the interpreter is designed to accurately execute EasiScript commands, bridging the gap between EasiScript's flexible syntax and C++'s powerful execution capabilities.
- Expanded Command Set: EasiScript 1.1 expands on its predecessor by supporting 127 distinct commands, offering even greater flexibility and power.
- Modular Design: The language architecture is modular, allowing for future extensions and easy updates.
- Cross-Platform Compatibility: Thanks to the C++ foundation, EasiScript 1.1 will be compatible with a wide range of systems, ensuring that developers can code in their preferred environment.
- Error Handling and Debugging: Enhanced error handling features and better debugging support, thanks to integration with tools like GitHub Copilot and ChatGPT.
- Automatic Memory Management and Garbage Collection In Interpreter : You don't have to worry about memory mangement, The Interpreter automaticly collects unwanted stuff (Garbage).
print "Hello, World!"
display "Hello, World!"
say "Hello, World!"
show "Hello, World!"
All these will output:
Hello, World!
set x = 10;
set name = "EasiScript 1.1";
sum 5 + 3;
subtract 10 - 4;
times 2 * 6;
divide 8 / 2;
if x > 10:
print "x is greater than 10";
else:
print "x is 10 or less";
while x < 10:
print x;
set x = x + 1;
print "Hello, World!"
display "Hello, World!"
say "Hello, World!"
show "Hello, World!"
all these commands will output: Hello, World!
set x = 10;
set name = "EasiScript";
sum add 5 + 3; # Addition
subtract 10 - 4; # Subtraction
times 2 * 6; # Multiplication
divide 8 / 2; # Division
Or Use "print"
print 5 + 3; # Outputs: 8
print 10 - 4; # Outputs: 6
print 2 * 6; # Outputs: 12
print 8 / 2; # Outputs: 4
set x = 15;
if x > 10:
print "x is greater than 10";
else:
print "x is 10 or less";
This would output:
x is greater than 10
set x = 0;
while x < 5:
print x;
set x = x + 1;
This would output:
0
1
2
3
4
set fruits = ["apple", "banana", "cherry"];
print fruits[0];
Output:
Apple
set person = {"name": "John", "age": 30};
print person["name"];
Output:
John
# This is a single-line comment
print "This will print"; # This is an inline comment
file open "example.txt" as f;
print f.read();
file close f;
try:
divide 5 / 0;
except:
print "Error: Division by zero!";
This would output:
Error: Division by zero!
These examples demonstrate the flexibility and simplicity of EasiScript, allowing users to perform various operations with intuitive commands.
printdisplaysayshow
setassign
sumaddsubtracttimesmultiplydividemodincrementdecrement
andornotequalgreaterlessgreater_or_equalless_or_equal
ifelseelif(else if)endifswitchcasedefaultendcase
whileforloopdountilbreakcontinue
functionendfunctionreturncalldef
listappendinsertremovepopslicelengthindexsortreverse
dictset_keyget_keyremove_keyhas_keykeysvaluesitems
openreadwriteclosedeleterenameexists
inputoutputreadlinewritelineclear
tryexceptfinallyraiseassert
sqrtpowabsminmaxroundceilfloorrandom
concatsplitreplacesubstringupperlowerstripstartswithendswith
nowtodaytimestampformat_dateparse_datesleep
executerunshellexitclearpause
debuglogtraceinspectprofile
connectdisconnectsendreceiveping
threadlockunlocksignalwaitnotify
drawrenderupdateclear_screenset_colorset_fontshow_messagehide_message
noopaliasdefineincluderequireimportexportnamespace
This list includes all the 127 commands that are currently supported by EasiScript 1.1.
The development of EasiScript 1.1 is supported by a suite of powerful tools:
- C++ Compiler: MinGW is used as the compiler, ensuring efficient and fast code compilation.
- IDE: Visual Studio Code 2019 serves as the primary IDE, providing a feature-rich environment for coding.
- GitHub Copilot: Assisting in code writing by providing intelligent code suggestions.
- ChatGPT: Used for debugging support and helps troubleshoot issues during development.
EasiScript 1.1 is poised to be a game-changer in the world of beginner-friendly programming languages. With a robust C++ core, expanded command set, and enhanced features, it promises to be both powerful and accessible. Stay tuned for more updates as we finalize the interpreter and polish the language for release!
This project is licensed under the MIT License.