nyuuzyou/wikis huggingface dataset:
ESOPUNK

ESOPUNK is a version of the EXA Programming language made by User:Blacksilver, which runs outside a network.
== I/O ==
ESOPUNK makes stdin, stdout, and stderr available as the hardware registers #STDI, #STDO, and #STDE.
Reading from #STDI retuns a single character read from stdin, cast to a byte. If no data is available, the EXA will block.
Writing to #STDO or #STDE outputs a single byte, cast to a char, to stdout or stderr, respectively.
== Examples ==
=== Truth-machine ===
 COPY #STDI X
 TEST X = 49 ; X == '1'
 MARK L
 COPY X #STDO
 TJMP L
 HALT
=== Cat ===
 MARK LOOP
 COPY #STDI X
 TEST X > 0
 FJMP DONE
 COPY X #STDO
 JUMP LOOP
 MARK DONE
 HALT
== Computational Class ==
If EXAs are Turing-complete, then ESOPUNK is too.
The current pyESOPUNK implementation is probably a Linear bounded automaton, since neither files nor REPL have been implemented yet (giving you a whopping two memory locations), but the code size is unlimited. However, it *might* be Turing-complete, as the registers are not clamped as in the original language.
== Interpreters ==
* pyESOPUNK, the original.
Category:Languages
Category:Implemented
Category:Turing complete
ESOPUNK/Commands

← ESOPUNK
== Commands ==
Against all rules and regulations, I'm using man-style formatting:
* Bold: Type exactly as shown
* Italic: Replace with appropriate argument.
Command 	Usage 	Equivalent (C)
Manipulation 	Manipulation 	Manipulation
COPY SRC DEST	Copy the value from SRC [RI] to DEST [R] 	DEST = SRC;
ADDI A B DEST	Take the sum of A [RI] and B [RI], and place it in DEST [R] 	DEST = A + B;
SUBI A B DEST	Take the difference of A [RI] and B [RI], and place it in DEST [R] 	DEST = A - B;
MULI A B DEST	Take the product of A [RI] and B [RI], and place it in DEST [R] 	DEST = A * B;
DIVI A B DEST	Take the ratio of A [RI] and B [RI], and place it in DEST [R] 	DEST = A / B;
MODI A B DEST	Take the mod of A [RI] and B [RI], and place it in DEST [R] 	DEST = A % B;
SWIZ A B DEST	Swizzle A [RI] and B [RI], and place it in DEST [R] 	
Branching 	Branching 	Branching
MARK LABEL 	Mark the line with LABEL [L]. 	LABEL:
JUMP LABEL 	Unconditionally jump to LABEL. 	goto LABEL;
TJMP LABEL 	If the T register is truthy, jump to LABEL. Otherwise, noop. 	if(T){goto LABEL;}
FJMP LABEL 	If the T register is falsy, jump to LABEL. Otherwise, noop. 	if(!T){goto LABEL;}
Testing 	Testing 	Testing
TEST A = B 	Test if A [RI] and B [RI] are equal. Set the T register to 1 or 0 based on the result. 	T=(A==B?1:0);
TEST A > B 	Test if A [RI] is greater than B [RI]. Set the T register to 1 or 0 based on the result.	T=(A>B?1:0);
TEST A < B 	Test if A [RI] is less than B [RI]. Set the T register to 1 or 0 based on the result. 	T=(A<B?1:0);
Lifecycle 	Lifecycle 	Lifecycle
REPL LABEL 	Create a copy of this EXA and jump to LABEL [L] in the copy. 	if(fork()==0){goto LABEL;}
HALT 	Terminate this EXA. 	exit(0);
KILL 	Kill a random EXA. 	
Communication	Communication 	Communication
MODE 	Toggle the M register between local and global mode. 	
VOID M 	Read and discard a value from the M register. 	
TEST MRD 	If the M register is readable without blocking, set the T register to 1, else 0.
ESOSC

The Esoteric Standard Committee (ESOSC) aims to standardize esolangs and related works. The ESOSC assures high-quality esolang standards much more detailed than esolang 
wiki pages. It also shall serve as an archive for language specifications (but only if they are covered in a standard which requires that a fairly detailed specification
is worked out). 
== History ==
The ESOSC was founded on #esoteric (freenode) and currently consists of three members. 
== Members ==
* nortti
* Taneb
* mroman
== More Information ==
	 	
More information can be found on the webpage of the ESOSC.
Please also have a look at the repository.
ETA

ETA is an esoteric programming language designed by Mike Taylor in 1999. The name comes from its instruction set, based on the eight most common letters in the English language: E, T, A, O, I, N, S, H. "Eta" is also the seventh letter in the Greek alphabet, and ETA uses base-7 numbering. The language is stack-based and all characters that are not instructions are treated as comments.
Eta has 7 instructions:
 Instruuctions
Command	What it does
E 	Pop two numbers of the stack, first b, then a.Then push floor(b/a) first and b%a second.
T 	Pop 2 numbers off the stack, first addr, then cond. If cond!=0 then jump to the addrth instruction. The first instruction is instruction 1. Jumping to instruction 0 terminates the program.
A 	Push the current instruction number.
O 	Print and pop top of stack as an ASCII character
I 	Push the input as an ASCII character
N 	Push a base-7 number. The digits are:H=0 T=1 A=2 O=3 I=4 N=5 S=6. E terminates the number. Example: NTONE=(1x7^2+3x7^1+5x7^0)
S 	Pop 2 numbers off the stack: first b, then a. Push b-a on the stack.
H 	Pops a number n from the stack.If n>0 then remove the nth value and push it on top of stack. If n<=0 then push the nth item onto top of stack and keep the original one intact unlike the top case. If n=0, this is effectively a DUP.
"Hello, World!" Program
 NINEONAHAEONATOEONAAAEONATSEONTNOEONIIEONSAEONATSEONATOEONATEONAHOEONTOAEO
Cat Program
 IO
==See also==
* Beatnik
* Shakespeare
* ThETA
==External resources==
* The ETA Project
* ETA interpreter implemented in Haskell
* EAS (ETA assembler) implemented in Haskell
Category:Languages 
Category:Implemented 
Category:Stack-based
Category:1999
EXAMPL

EXAMPL stands for EXAMination Programming Language. This is made by User:A, and it is inspired by the mispelled word of User:Helen's 12th edit of bitch.
This programming language is for passing programming exams with all the test data given.
==Syntax==
This programming language automatically uses a file as input data.
===If statement===
The if statement can only check if the input pointed by the input counter contains a string, with \" recognized as ". If the input matches the string, output the following string.
\n is recognized as newline, \t is recognized as tab, \0 is recognized as null, \* recognized as asterisk, \: recognized as colon.
This is the if statement checking if the input in the input counter contains "aa". If so, then output "bb".
"aa":"bb"
Without quotes:
aa:bb
If there are no colons in a line, it will automatically be printed without checking the input.
===Processing===
The lines with colons act as a scanning loop; it breaks out of the loop when the input does not contain these shown inputs. The lines before them will be printed first, and the lines after them will be printed after the scanning.
There is an asterisk operator to match the rest of the inputs not mentioned.
Category:2019
Category:Languages
Category:Unimplemented
EXCON

EXCON is a lame abbreviation for EXclamation mark COloN and was designed by Emil Svensson (:User: fr34k) in 2008.
==Overview==
Initially EXCON has one pool with 8 binary digits, all set to 0 and a pointer set to the right-most digit in the pool.
===Commands===
Command	Function
: 	Reset all digits in the pool to 0
^ 	Flip the digit at the pointer
! 	Output the pool
< 	Move the pointer to the left
==Examples==
Initially, we start out with an empty pool, with the pointer pointing at the right-most digit
 00000000
 ^
(the above code is just for clarification, and is not actual source code)
If we want to write the letter A, which in binary is 01000001, we must flip the first and the seventh bit. Like this
 : Reset the pool (this is optional at the beginning of a program)
 ^ Flip the first bit (making it 1)
 <<<<<< Move 6 steps to the left
 ^ Flip the 7th bit
 ! Output the pool (A or in binary 01000001)
EXCON treats all other characters than ':', '^', '<' and '!' as comments. The above program can be written like this as well 
 :^<<<<<<^!
Notice that we don't have to move to the eight bit, since this remains 0, we don't have to do anything with it.
Note: If you move the pointer more than 8 steps, the program will take this as a fault operation, since all ASCII characters converted to binary consists only of 8 digits.
===Hello, World!===
 hello-world.excon
 
 :<<<^<<<^! 		1001000 H
 :^<<^<<<^<^! 		1100101 e
 :<<^<^<<^<^! 		1101100 l
 !			1101100 l
 :^<^<^<^<<^<^! 		1101111 o
 :<<<<<^! 		0100000 SPACE
 :^<^<^<<^<<^! 		1010111 W
 :^<^<^<^<<^<^! 		1101111 o
 :<^<<<^<^<^! 		1110010 r
 :<<^<^<<^<^! 		1101100 l
 :<<^<<<^<^! 		1100100 d
 :^<<<<<^! 		0100001 BANG
Above code would output in ASCII
 Hello World!
===99 bottles of beer===
Here is the program (it takes a long time to load, and the output gets truncated).
== Interpreter ==
Here's an EXCON interpreter written in Ruby:
 # interpreter.rb
 
 def interpret_EXCON source
 
 	pool = %w[0 0 0 0 0 0 0 0]
 	pointer = 7
 	
 	for i in 0..source.length
 	
 		case source[i..i]
 		
 			when ":" then pool = %w[0 0 0 0 0 0 0 0]; pointer = 7
 			when "^" then pool[pointer] = if pool[pointer]==1 then 0 else 1 end
 			when "<" then pointer -= 1
 			when "!" then print pool.join.to_i(2).chr
 		
 		end
 	
 	end
 
 end
 
 interpret_EXCON File.open(ARGV[0], "r").read
And here is an interpreter in Io:
<nowiki>
#!/usr/local/bin/io
exconI := Object clone
exconI pool := List clone setSize(8) map(0)
exconI pointer := 7
exconI interpret := method(source,
 source foreach (c,
 if(c == 58, pool = pool map(0); pointer = 7)
 if(c == 94, pool atPut(pointer, if(pool at(pointer) == 1, 0, 1)))
 if(c == 60, pointer = pointer - 1)
 if(c == 33, pool map(print) "\n" print)
 )
)
if(System args at(1), exconI interpret(System args at(1)) println, "No input" println)
</nowiki>
A Python interpreter by User:Bangyen can also be found here.
Category: Finite_state_automata
Category: Unusable for programming
Category: Languages
Category: Output_only
Category: 2008
Category: Total
Category: Implemented
EZ

EZ is an esoteric programming language made by Areallycoolusername. It's the EZsiest language in the world (See what I did there?). It's also made for code golf. So, popular problems will be slowly added.
== Specifics ==
There is one command, and that's EZ. When put into the interpreter, the output will be some popular problems. (Hello world, quine, cat, 99 bottles). Some other problems will be added.
== Implementations ==
The interpreter was made in C++. It includes hello world, quine, cat, 99 bottles, Fibonacci, and truth-machine. Here it is:
#include <iostream>
using namespace std;
int main()
{
 string yeet;
 getline(cin,yeet);
 if(yeet!=yeet){
 cout << "Nope.";
 return 69;
 }
 cout << "Hello, world!\n";
 cout << yeet << " \n";
 int yote = 99;
 while(yote>1){
 cout <<yote<<" bottles of beer on the wall, "<<yote<<" bottles of beer.\n";
 yote -= 1; 
 cout<<"Take one down and pass it around, "<<yote<<" bottles of beer on the wall.\n";
 }
 cout << "1 bottle of beer on the wall, 1 bottle of beer. Take one down and pass it around, no more bottles of beer on the wall.\n";
 cout << "No more bottles of beer on the wall, no more bottles of beer.\n";
 cout << "Go to the store and buy some more, 99 bottles of beer on the wall.\n";
 
 int n = 1000, t1 = 0, t2 = 1, nextTerm = 0;
 for (int i = 1; i <= n; ++i)
 {
 if(i == 1)
 {
 cout << " \n" << t1;
 continue;
 }
 if(i == 2)
 {
 cout << t2 << " \n";
 continue;
 }
 nextTerm = t1 + t2;
 t1 = t2;
 t2 = nextTerm;
 cout << nextTerm << " \n";
 }
 if(yeet!=yeet){
 return 0;
 }
 if(yeet==yeet){
 while(yeet==yeet){
 cout << yeet<<"\n";
 }
 }
}
Category:Golfing language
Category:Languages
Category:2019
Category:Implemented
Eafh

==Commands==
 outputs the accumulator, which obviously just prints 0.
==Examples==
===0 interpreter===
 o
==Interpreter==
===Python===
 print('0'*input().count('o'))
=== ><> ===
 i:1+?!;"o"=:?0$?n
=== ecliptica ===
 >>1[?0(x)<'0'O<)>>l]
Category:Languages
Category:2024
Category:Joke languages
Category:Implemented
Category:Output only
Category:Unusable for programming
Category:Total
Category:Esoteric subset
Eafish

eafish is Deadfish without the d command. It also doesn't follow the tradition of 256=0, so theres no going back if you accidentally square or increment the counter.
== UI ==
There is 3 buttons. Increment, square, and output. Output prints the current value to screen, and the rest do what they say.
== Interpeter in HTML/Javascript ==
Eafish/HTML_Interpreter
Please edit the page and copy and paste it into an html file to use it.
Category:Languages Category:Implemented Category:Unusable for programming Category:Output only Category:Total
Eafish/HTML Interpreter

:
eafish interpeter
<button onclick="incr()">increment</button>
<button onclick="squa()">square</button>
<button onclick="outp()">output</button>
<script>
 whar=0
 function incr(){
 whar+=1
 }
 function squa(){
 whar=whar*whar
 }
 function outp(){
 document.getElementById("o").innerHTML = whar
 }
</script>
Category:Implementations
Earfuck

Earfuck is a brainfuck variation made by User:Quadril-Is. It uses the pentatonic scale, which is known to sound pleasant.
==Instructions==
brainfuck	Earfuck
+ 	C and G
- 	C and A
< 	D and G
> 	D and A
[ 	E and G
] 	E and A
, 	G
. 	A
Also, if you play a tritone, the file deletes itself, cause why not?
== See also ==
* Velato, an esoteric programming language which also uses sound for his programs.
* Look!, another sound-based esoteric programming language based-on brainfuck.
Category:Languages
Category:Brainfuck derivatives
Category:Turing complete
Category:Turing tarpits
Category:Low-level
Category:Cell-based
Category:Unimplemented
Category:Non-textual
EasyFlakes

EasyFlakes is a derivative of Branflakes that is easyish.
==Commands==
Command 	Description
right 	Moves the cell pointer to the right.
left 	Moves the cell poiner to the left.
up 	Increments the memory cell at the pointer.
down 	Decrements the memory cell at the pointer.
output 	Outputs the character signified by the cell at the pointer.
input 	Inputs a character and stores it in the cell at the pointer.
bracket(...)	Works like BranFlakes's bracket system, with the commands embraced by the jumelle parentheses.
==Examples==
===Hello World===
 up bracket(down down right down bracket(right right up right down down down down down left left) left down down left down down down) right down output right right right up output right right output output up up up bracket(output right) left left left left output up up up output down down down down down down output left left down output right right right right up output
As you can see, it takes this much even to write a simple hello world.
===Cat program===
An infinitely repeating cat program which terminates on a null input is presented below:
 up bracket(input output)
===Truth-machine===
A truth-machine is implemented below:
 input output bracket(down down right up bracket(right right) left bracket(output) left left)
==Interpreter==
* Common Lisp implementation of the EasyFlakes programming language.
Category:2023Category:LanguagesCategory:Brainfuck equivalentsCategory:Turing completeCategory:Implemented
EasyScript

EasyScript is an esolang by User:A
variable:value 	sets variable as value(string or integer)
$var 	prints the variable's value.
%var 	set the variable as input(Strings must be inputted with quotation marks)
+- 	do math. For example:
 x:4,Jerome:x-2,
sets x as value 4 and Jerome as value 2 (4-2). Also:
 fruit:"fly",printer:"paper",sticky:fruit+printer,
sets fruit as value "fly", printer as value "paper", and sticky as value "flypaper"(word math only works with +. Strings are enclosed by "s).
condition?do something,	If the condition is true, do something
condition:do something,	Repeat while the condition is true.
Conditions have three parts, two compared values referenced by their names and a comparison which can be:
<	is less than
=	is equal to
Category:Languages
Easyfish

Unlike its name, it it hard to use, just like Hardfish.
==Commands==
 i - Increment
 r - Stuff between this r and the next r are repeated twice, then jump to the command after the next r
 d - If accumulator is even, divide it by 2, otherwise decrement it
 m - If the accumulator is odd, multiply by 2, otherwise increment it
 p - Unless the accumulator is more than 7, let the accumulator be 2accumulator
Note that Easyfish has no I/O commands, but the accumulator is printed after the program terminates.
==Examples==
======
 iip
==Constants (shortest)==
If you have a shorter one, you can replace it.
 0 - 
 1 - i
 2 - ii
 3 - iii
 4 - iip
 5 - iipi
 6 - iiim
 7 - iiimi
 8 - iiip
 9 - iiipi
 10 - iipim
 16 - iipp
 32 - iipip
 64 - iiimp
 128 - iiimip
Category:Languages
Category:Unimplemented
Category:Output only
Category:Total
Category:2023
Eb-maj7

Eb-maj7 is a new esoteric programing language with a weird syntax which generates a midi file. Further documentation and an interpreter can be found here. The name is pronounced like the chord it describes: "E flat major seven".
==Hello, World==
Fuer Elise in A Minor
Ludwig van Beethoven
Composed in 1802
Composed in a Saloon
Time: 138
opening in Hello World
# Comment style 1
Bar: Hello World
 play Write in ens Muda
 play print
Chord: Write in ens Muda
 # init index 0
 LeftHand := C
 RightHand := C
 # Write H to index
 Saloon/LeftHand := AF#, D # 72
 # Increment index by 1
 LeftHand := LeftHand, C#
 # Write e
 # etc...
 Saloon/LeftHand := AA, C# # 101
 LeftHand := LeftHand, C#
 # l
 Saloon/LeftHand := AA#, d # 108 (10x11 - 2)
 LeftHand := LeftHand, C#
 # l
 Saloon/LeftHand := AA, G # 108 (10x10 + 8)
 LeftHand := LeftHand, C#
 # o
 Saloon/LeftHand := AA, A# # 111
 LeftHand := LeftHand, C#
 # " "
 Saloon/LeftHand := EED # 32
 LeftHand := LeftHand, C#
 # W
 Saloon/LeftHand := EDA, F#
 LeftHand := LeftHand, C#
 # o
 Saloon/LeftHand := AA, A# # 111
 LeftHand := LeftHand, C#
 # r
 Saloon/LeftHand := AA#, E
 LeftHand := LeftHand, C#
 # l
 Saloon/LeftHand := AA, G # 108
 LeftHand := LeftHand, C#
 # d
 Saloon/LeftHand := AA # 100
 LeftHand := LeftHand, C#
 # !
 Saloon/LeftHand := EED, C# # 33
 LeftHand := LeftHand, C#
Chord: print
 # One could also print the chars directly in the Chord above.
 # This Chord only exists to demonstrate for loops
 LeftHand := C
 12|:
 press Saloon/LeftHand
 LeftHand := LeftHand, C#
 :|
Category:2022 Category:Implemented Category:Unknown computational class
Echidna

Echidna is an Assembly-like Esoteric Programming Language.
==History==
Echidna was originally designed to be run on an Arduino, but memory requirements eventually made this unfeasable, with the Arduino version being shelved.
I then modified the PC version to use far more memory, eventually loading the file into ram and running the program from there.
==Notes==
There are 20 Ops, from G - Z.
As of this writing, it is still being developed.
For up-to-date information about Echidna, including language documentation and an interpreter, look 
here.
The interpreter there is written in C, and, at the moment, is still a little buggy and lacking it's own documentation.
Category:Languages
Category:2019
Category:Implemented
Category:Low-level
EchoLang

EchoLang is an esolang created by I rember in February 2023. It's kind of a mix between ><> and BASIC. It is stack-based, tape-based, AND variable-based, but mostly stack-based. 
Here are the commands:
Command 	Description
{any number}	Push a number onto the stack.
"{string}" 	Push a letter's ASCII value onto the stack. If the string is more than one letter long, each value will be pushed individually.
pop 	Pop a value off the stack and discard it.
shout 	Pop and print as a number.
say 	Pop and print as text.
add 	Pop a and b, push a+b.
subtract 	Pop a and b, push b-a.
multiply 	Pop a and b, push b*a.
divide 	Pop a and b, push b/a.
modulo 	Pop a and b, push b%a.
and 	Pop a and b, and if both are 1, push 1; if not, push 0.
or 	Pop a and b, and if either or both are 1, push 1; if not, push 0.
not 	Pop, if the value is 0, push 1; if not, push 0.
equal 	Pop a and b, and if a=b, push 1; if not, push 0.
greater 	Pop a and b, and if b>a, push 1; if not, push 0.
less 	Pop a and b, and if b<a, push 1; if not, push 0.
listen 	Push user's input.
reverse 	Reverse the stack.
swap 	Swap the top two items on the stack.
label() 	Define a label.
goto() 	Go to a label.
goif() 	Pop, and go to a label if the value is 1.
gosub() 	Go to a label as a subroutine.
subif() 	Pop, and go to a label as a subroutine if the value is 1.
return 	Return from a subroutine.
returnif 	Pop, and return from a subroutine if the value is 1.
locate 	Pop, and set the position on the tape to popped value.
location 	Push position on the tape.
read 	Push value at position on the tape.
write 	Pop, and set the value at position on the tape to popped value.
var() 	Define a variable.
get() 	Push a variable's value.
set() 	Pop, and set a variable's value to popped value.
If you attempt to read a value that doesn't exist (e.g. popping when the stack is empty; getting the value of a variable that doesn't exist) or divide by zero, the interpreter will read it as -1.
==Programs==
===Truth Machine===
listen
goif()
shout
label()
shout
goto()
Made by ZachChecksOutEsolangs (talk)
Category:Languages Category:Works-in-Progress Category:Stack-based Category:Cell-based
EchoLang (None1)

EchoLang is an esolang prompted by User:None1 and invented by Cursor AI:
==Commands==
+ : Increment the current memory cell.
- : Decrement the current memory cell.
> : Move the memory pointer to the right.
< : Move the memory pointer to the left.
. : Output the ASCII character corresponding to the value in the current memory cell.
, : Input a character and store its ASCII value in the current memory cell.
==Interpreter in Python==
def interpret_echolang(code, input_stream=None):
 # Initialize memory and pointer
 memory = [0] * 30000
 pointer = 0
 output = []
 input_index = 0
 # Convert input stream to a list of ASCII values if provided
 if input_stream:
 input_stream = list(map(ord, input_stream))
 # Iterate over each command in the code
 for command in code:
 if command == '+':
 memory[pointer] = (memory[pointer] + 1) % 256
 elif command == '-':
 memory[pointer] = (memory[pointer] - 1) % 256
 elif command == '>':
 pointer = (pointer + 1) % len(memory)
 elif command == '<':
 pointer = (pointer - 1) % len(memory)
 elif command == '.':
 output.append(chr(memory[pointer]))
 elif command == ',':
 if input_stream and input_index < len(input_stream):
 memory[pointer] = input_stream[input_index]
 input_index += 1
 else:
 memory[pointer] = 0 # Default to 0 if no input is available
 # Return the output as a string
 return .join(output)
==Examples==
===Output the control character with ASCII value 6===
+++++>++++[<+>-]<.
Category:Languages
Category:Joke languages
Category:2024
Category:Implemented
Category:Total
Category:Brainfuck derivatives
Category:Generated by AI