Melon is a simple, both high and low level, procedural programming language (PPL) with a interpreter
Melon extensions for vscode
use these to have a better environment while coding in Melon
Click to expand console commands
| Commands | Info | Syntax |
|---|---|---|
| > | move the cursor right by 1 | > |
| < | move the cursor left by 1 | < |
| + | add the Address that is selected in cursor | + |
| - | subtract the Address that is selected in cursor | - |
| ; | print the Array in the screen | ; |
| compile | compile the arrays/addresses into a executable file | compile |
| compile-script | compile the melon language file to melon language executable | compile-script |
| clear | clears the screen | clear |
| reset | resets all address | reset |
| run | runs the script | run |
| cta | prints the addresses in text format | cta |
| write | writes a custom value into address | write \n |
| copy | copy the address to the cursor position | copy \n |
| if | (UNFINISHED) check if the address is <your_value> or not | |
| calc | do math | calc \n |
| var | save a variable | var \n <var_name> |
| change-var | change variable value | change-var \n <var_name> |
| delete-var | Remove a variable | delete-var \n <val_name> |
| delete-all-vars | Remove All variables | delete-all-vars |
| lock-var | lock a variable | lock-var \n <name_> |
| importl | Import build in libraries | importl \n <library_name> |
| load-pkg | loads a package | load-pkg \n <name_> |
| gen-pkg | generates a package with main.mlf | gen-pkg |
| fetch-pkg | downloads a pkg from Citrullus Server | fetch-pkg \n <name_> |
| time | shows time it even has like time.month to show current month or time.day or time.week etc |
time |
| quit/exit | closes melon | quit (OR) exit |
| Commands | Info | Syntax |
|---|---|---|
| println | prints a text then goes to a new line | println \n "<text>" |
| printf | prints a text | printf \n "<text>" |
| colour | changes console colour | colour \n <fg>,<bg> |
| set-cursor-pos | sets cursor pos | set-cursor-pos \n <x>,<y> |
Click to expand scripting commands
| Commands | Info | Syntax |
|---|---|---|
| function | creates a new function | function \n end for calling: ~() |
| > | move the cursor right by 1 | > |
| < | move the cursor left by 1 | < |
| + | add the Address that is selected in cursor | + |
| - | subtract the Address that is selected in cursor | - |
| ; | print the Array in the screen | ; |
| clear | clears the screen | clear |
| reset | resets all address | reset |
| write | writes a custom value into address | |
| jump | jumps to a line number | |
| copy | copy the address to a specific place | |
| if | check if the address is <your_value> or not | |
| calc | do math | |
| write-var | write a saved variable to a address that is selected by cursor position | |
| convert | text to address array | |
| goto | goto start to loop infinitly or goto end to end the script much like return in C# | |
| sleep | A thread based timer (Milliseconds) | |
| importf | Import other .mlf to your main.mlf | |
| importl | imports any built-in library | |
| for | for loops | for i=1; i-10; i=+1 \n fo-end |
| quit | quit the console with a error code |
| Commands | Info |
|---|---|
| println | prints a text then goes to a new line |
| printf | prints a text |
Arguments:
| Arguments | Comments |
|---|---|
| --output-path | The output path of the compiled binary |
| --output-format | The format of the compiled binary, currently supported are bin, hex, mle |
| --output-name | The name of the compiled output |
| --program-path | the path for your main.mlf |
| --logging | Enable Logging |
| --splash-text | Enable splash text |
| --updates | Enable Update check |
| --clear-logs | Clears logs when typing quit or exit |
| --run | Runs a script without opening Melon |
| --compile | Compiles a script without opening Melon |
| --new-project | Created a new project for melon |
| --help | Display this help screen. |
| --version | Display version information. |
You can use #this# to get the current directory (only for output path, program path and new project) eg. --output-path #this#
| OS | Version | Hardware | x64 | x86 | ARM | ARM64 |
|---|---|---|---|---|---|---|
| πͺ Windows | Vista to 11 | Above 30 MB Memory | β | β | β | β |
| π§ Linux | Any Distribution | Above 30 MB Memory | β | β | β | β |
| π OSX | 10.12 or above | Above 30 MB Memory | β | β | β | β |
x64 and x86 requires C# Runtime, arm and arm64 doesn't need C# Runtime