Adeco

From Esolang
Jump to navigation Jump to search

Adeco is a two-dimensional stack-based esoteric programming language by User:Zinnia Glean, it is supposed to represent beaded house decoration, and is read from top to bottom.

Adeco
Designed by User:Zinnia Glean
Appeared in 2020
Dimensions Two-dimensional
Computational class Unkown
Reference implementation Unimplemented
File extension(s) .adeco

Semantics

Lines

“Lines” refer to the lines of the program where all the instructions are placed vertically delimited by a pipe | before and after an instruction.

They are delimited by spaces, for example:

| | | |

The Base

The base refers to the top-most part of the program, formed of a dot and underscore(s) on a newline, for example:

 .
___

The underscores are delimited by other underscores in the same placement as the line’s delimiters, for example:

   .
_______
| | | |

Also notice how the dot is always centered to the underscores, which is required syntax.

Instructions

Character Instruction
? Ask and push 1-byte user input
! Pop and output (numerical)
S Pop and output (ASCII)
# Pop, if the value is non-zero: jump to the next line, if not: continue on current line in the same horizontal placement as the instruction
1-F Push the corresponding HEX number
X Pop
I Pop, if the value is non-zero: move the IP back to the instruction, if value is zero: skip the other matching I and continue the program normally
= Concatenate last 2 values
| No-op

Example Programs

Truth-machine

 .
___
| |
? I
| |
# 1
| |
0 !
| |
! I

Cat program

.
_
|
?
|
!

Hello World

.
_
|
6
|
F
|
=
|
6
|
C
|
=
|
6
|
C
|
=
|
6
|
5
|
=
|
4
|
8
|
=
|
2
|
0
|
=
|
6
|
4
|
=
|
6
|
C
|
=
|
6
|
F
|
=
|
7
|
2
|
=
|
5
|
7
|
=
|
S
|
S
|
S
|
S
|
S
|
S
|
S
|
S
|
S
|
S
|
S