llec

From Esolang
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.