Tessenbly

From Esolang
Jump to navigation Jump to search

Tessenbly, or TSNBULIE, is an esoteric programming language made by User:Somebody142857.

Instructions

Caption text
Symbol What it does
N(number) Creates number in D notation.
B(name, value) Creates a new variable with name name and value value.
L(name, start, end, input_name) Creates a new function with name name and which executes the section starting at line start and ending at line end, inclusive. In the section, when a variable named input_name is encountered, it will be interpreted as the function's input.
T(line, condition) Teleports the reader to line line if condition is True.
E(function, input) Execute function with input input and return what the function returns.
U(code) Prints unicode character corresponding to the code, unless at the end of a function code block, where it is interpreted as the output. Can also print strings from I.
I() - User input as a string. This is also the only way to get a string type.
S(function) - Sums the outputs of a function if you input the integers from 1 to 1000.
@ - Joke command, prints a lemon emoji.

D notation is as follows:

Caption text
Symbol What it is
. 2
- Decrement function.
*^ They do what they normally do.

Operations:

+-*/^=\>\< They do what they all normally do.
% Floor function.
$ Random from 0 to 1.

Simple programs

Hello World

U(N(.^((.^.)-))*((.^.)-)^.))
U(N(((.^((.*.)-))---)*.)^N(.))
U(N(((.*.)-)*(.*.)-)*(.*.)-)*.*.))
U(N(((.*.)-)*(.*.)-)*(.*.)-)*.*.))
U((N(((.*.)-)*(.*.)-)*.*.)+1)*N((.*.)-))
U(N(.^((.*.*.)---)))
U(N(.^(.*.-))*N((.^(.^.))-----)-N(.-))
U((N(((.*.)-)*(.*.)-)*.*.)+1)*N((.*.)-))
U((N(((.*.)-)*(.*.)-)*.*.)+1)*N((.*.)-)+N((.*.)-))
U(N(((.*.)-)*(.*.)-)*(.*.)-)*.*.))
U(N(((.^((.*.)-))---)*.)^N(.))
U(N(.^((.*.*.)---))+N(.-))

Quine

Can anyone help me on this? The hello world was already a pain

Cat program

U(I())

Factorial

L(factorial, N((.*.)-), N((.*.*.)-), number)
T(N((.*.*.)-), N(.)==N(.))
T(N((((.*.)-)*.)-), number = 0)
B(output, E(factorial, number - 1) * number)
B(output, 1)
U(output)

Truth Machine

B(number, I())
T(N(.*.), number = N(.--))
T(N((.*.*.)--), number = N(.-))
O(N(((.*.)-)*.^(.^.)))
T(N(.*.*.), N(.) = N(.))
O(N(((.*.)-)*.^(.^.))+N(.-))
T(N((.*.*.)--), N(.) = N(.))