Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/evuez/esolangs

:snake: Some esoteric programming languages interpreters written in Python
https://github.com/evuez/esolangs

Last synced: 1 day ago
JSON representation

:snake: Some esoteric programming languages interpreters written in Python

Awesome Lists containing this project

README

        

# Esolangs
## Some [esoteric programming languages](https://esolangs.org/) interpreters written in Python

Basic languages rules are written in interpreters files.

### Brainfuck (non-wrapping)

```brainfuck.py``` includes a ```CyclingInt``` class that can be used to get a wrapping implementation.

```python
from brainfuck import Brainfuck

# prints "Hello World!"
Brainfuck().execute("""
++++++++++[>+++++++>++++++++++>+++>+<
<<<-]>++.>+.+++++++..+++.>++.<<++++++
+++++++++.>.+++.------.--------.>+.>.
""")
```

### Ook! (non-wrapping)
Brainfuck. With "Ook"s.

```python
from ook import Ook

# prints "Hello World!"
Ook().execute("""
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.
""")
```

### Smallfuck
Reduced Brainfuck operating on bits. Since there is no print operator, the execution won't print anything.

```python
from smallfuck import Smallfuck

sfi = Smallfuck()
sfi.execute("""
*>*>*[>*<*]*>*>
""")
print(sfi.cells)
```

### Kipple (based on the [3rd version of the spec](http://web.archive.org/web/20070224040559/http://rune.krokodille.com/lang/kipple/kipple.html))

Not fully implemented yet, input is missing. You can fill ```Kipple().stacks['i']``` before execution to use it later in the program.

```python
from kipple import Kipple

# prints "Hello World!"
Kipple().execute("""
33>o 100>o 108>o 114>o 111>o 87>o 32>o 111>o 108>o 108>o 101>o 72>o
""")

# prints the first 25 numbers of the Fibonacci sequence
Kipple().execute("""
24>n 0>t 1>a
(n-1
a+0
tb+a
ca@
(@>o)
32>o
)
""")
```

### [DOGO](https://esolangs.org/wiki/DOGO)

Nothing done yet.

### [Byte Syze](https://esolangs.org/wiki/Byte_Syze)

Even less done.

### [Meq](https://esolangs.org/wiki/Meq)

See Byte Syze.