4RL
Jump to navigation
Jump to search
4RL (pronounced "for real") is an esoteric programming language created by User:Frogstair in April 2020, and is a breed of brainfuck.
The language can be compiled to brainfuck in a 1:1 relationship if the A command is not used.
Language overview
4RL, like brainfuck, operates on a tape, each cell in the tape is initialized to zero. The tape is 2^16 bytes long, each cell being one byte.
The commands are equivalent to brainfuck:
Command | BF equivalent | Result |
---|---|---|
4 | + | Increment tape cell at pointer |
r | - | Decrement cell pointer |
e | > | Advance pointer to next cell |
a | < | Retreat pointer to previous cell |
l | [ | If value under pointer is zero, jump to matching L |
R | , | Take user input, store it in the cell under pointer |
E | . | Output value under pointer as ASCII character |
A | None | Terminate program |
L | ] | If value at pointer is not zero, jump to matching l |
Examples
Hello, World!
Here is a hello world program
44444444le4444le44e444e444e4aaaarLe4e4eree4laLarLeeEerrrE4444444EE444EeeEarEaE444ErrrrrrErrrrrrrrEee4Ee44E
Cat Program
This cat program is repeated until the user inputs the null character:
RlERL
Truth-Machine
The following serves in the definition of a truth-machine:
RElrre4leeLalELaaL
Program Termination
This example demonstrates the program termination instruction A
by printing the letter “B” once, but obviating its iterum output via an intermediate halt command:
444444444444444444444444444444444444444444444444444444444444444444 EAE
Interpreter
- Common Lisp implementation of the 4RL programming language.