4ME
Jump to navigation
Jump to search

4ME is possibly a programming language created by User:Ractangle that has two (three if you count the scraped rewriten version) versions
Normal 4ME
This is basically the 4ME before the planned rewrite of the language
Commands
| Command | It's action |
|---|---|
| P; | Starts the program |
| out{...} | Prints a string |
| is | Gets string input and pushes it to the stack |
| ns | Same thing as is but uses number input
|
| add{...} | Pushes a value to the stack |
| pop | Pop's element from stack |
| get | Prints a element on the stack and pop's the element |
| +,-,*,/ | Operators |
| duplicate | duplicate the top value on the stack |
| store | Moves element from the stack to the other stack |
| unstore | the opposite of store
|
Errors
| The action to error | Stop Code |
|---|---|
| Not having any code in the line at all | S1456 |
| Outputing variable v without seting it to a value | S3452 |
| No P: at the start of the file | S1245 |
Examples
Hello, world!
P;
out{Hello, world!}
Cat program
P; is get
A+B Problem
P; ns ns + get
Rewritten 4ME
This version of 4ME is in progress and will take some time on actually completing it
Arguments
| Argument name | Action |
|---|---|
| s | Alowes a .4 program to be used in a server
|
| d | Debug infotmation |
Commands
| Command | Action |
|---|---|
| echo{...} | Prints a string in the brackets. Prints the top value in the stack if the contents is s
|
| var{...=...} | Creates a variable |
| echo.var{...} | Prints a variable |
| #... | Comment |
| user | Gets user input. Cannot be used as a seprate command |
| push{...} | Pushes a string in the brackets to stack |
Examples
Hello world
echo{Hello, world!}
Cat program
var{_=user}
echo.var{_}
Scraped 4ME
By "scraped", i mean that this was a scrpaed rewrite of 4ME
Commands
| Commands | Action |
|---|---|
| [ ... ] | Comment |
| out[ ... ] | Print's the contents |