()s

From Esolang
Jump to navigation Jump to search
The title of this article is not correct because of technical limitations. The correct title is actually {}s.

{}s (pronounced: Sets) is an esolang made by User:AmNow.

Commands

{}: Expression (can be nested) ie: {%+%}
%: the constant 2.
(ANY NUMBER): A variable.
<: Assignment. ie: 2<{%/%}
Note: The value before the < operator must be a number, not a billion %s, strung with math. (Don’t worry, it will not represent the value in it.)
[x, {...}]: Loop, While x isn’t 0, do the expression.
+,-,*,/ are math operators, referring to plus, minus, multiply, and divide respectively. {}s follows PEMDAS order.
=: Equal To
\: NOT Equal to
~: Less Than
$: Greater Than
&: Logical AND
@: Logical OR
|: Logical XOR
!: Logical NOT
#: switches from Unicode character output to Number output and vice versa. (starts on Unicode)

A write to 0 will print the value assigned to it (like 0 in `) and a reference to 1 will get from the input.

EOF is 0.

Programs

Truth Machine

# 2<1 0<2 [2, {0<2}]

Cat Program

This example implements a repeating cat program which terminates on a null character input:

2<1 [2, {0<2 2<1}]

Looping Counter

This program queries the user for an integer number, counts up from one (1) to the same, and displays during each cycle on a line of its own a catena of asterisks (“*”) tantamount to the current counter state:

#
2 < 1
3 < {% / %}
4 < {% - %}
5 < {{% * % * % * % * %} + {% * % * %} + %}
6 < {{% + %  + {% / %}} * %}
#
[2 $ {% - %},
  {4 < {% - %}
    [4 ~ 3, {0 < 5 4 < 4 + {% / %}}]
    0 < 6 
    2 < 2 - {% / %}
    3 < 3 + {% / %}}]

Computational Class

The computational class of {}s is unknown. It may be discovered in the future.

Interpreter

  • Common Lisp implementation of the {}s programming language.