llec
Jump to navigation
Jump to search
- This article is not detailed enough and needs to be expanded. Please help us by adding some more information.
llec is an esolang by User:ChuckEsoteric08.
Specification
llec operates on a tape of unbounded integers. *x would reference cell x. Cells are 0-indexed. There are 8 commands:
Command | Description |
---|---|
+x
|
Increment the cell x
|
-x
|
Decrement the cell x
|
"x+y
|
Increment the cell x by the value of the cell y , and store the result in cell x
|
/x
|
Declare the label x
|
\x
|
Goto label x
|
?x=y
|
If the cell x equals y , skip the next command
|
'x
|
Set the cell x to the next byte of the user input
|
:x
|
Output the cell x as an ASCII character
|
Examples
Cat
/loop '0 :0 \loop
Truth-machine
This program implements a truth-machine:
'0 "1+0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 /print_1 :0 ?1=0 \print_1
brainfuck interpreter
Program is seperated from input like that: program!input, similar to dbfi
+0 +0 /input +0 '*0 ?*0=33 \input /iptofirst -0 ?0=2 \iptofirst "1+0 +1 +1 /interpret +0 ?*0=0 \notend \end ?*0=43 \not+ \+ /not+ ?*0=44 \not, \, /not, ?*0=45 \not- \- /not- ?*0=46 \not. \. /not. ?*0=60 \not< \< /not< ?*0=63 \not> \> /not> ?*0=91 \not[ \[ /not[ ?*0=93 \interpret \] /+ +*1 \interpret /- -*1 \interpret /, '*1 \interpret /. :1 \interpret /> +1 \interpret /< -1 \interpret /[ ?*1=0 \interpret /find] +0 ?*0=91 \find]not[ \find][ /find]not[ ?*0=93 \find] ?2=0 \find]dec \interpret /find]dec -2 \find] /find][ +2 \find] /] ?*1=0 \interpret /find[ -0 ?*0=93 \find[not] \find[] /find[not] ?*0=91 \find[ ?2=0 \find[dec \interpret /find[dec -2 \find[ /find[] +2 \find[
Interpreter
- Common Lisp implementation of the llec programming language.