SEPL

From Esolang
Jump to navigation Jump to search

SEPL(Satan's Esoteric Programming Language) is an esolang by User:ChuckEsoteric08.

Specification

Instead of ASCII characters it uses "Table". It looks like this:

ABCDEFGHIJKLMNOPQRSTUVWXYZ !@#$%^&*(){}[],.:;"'?/\=-_+|0123456789<>~`

Last two characters are newline and nothing (only used for I/O). Note that SEPL is case-insensitive, so a is A . This language stores data in a tape but also has four registers:
A and B - Accumulators
C - Code Pointer
D - Data Pointer
To have opcode it takes current character's value in Table, multiplies it by C+65 and divides it by (A+B)*32+6, taking the remainder. Note that if result of any operation is negative it would return 0.

Opcode Instruction
2 D=[D]+B
6 C=A*B
8 B=A+6
12 A=[B]+[D]
5 [D]=A-10
3 B+=[D]
11 C=[C+[D]]
10 B=Input
4 [D]*=[C]; Output [D]. If value of [D] is larger than 70 don't output anything
7 [A]=[D]
9 NOP
1 Stop
Anything else A+=10-[D]

Examples

Set A to 20

I don't know how it works

122

External resourses

Scratch interpreter