We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

Pyfun

From Esolang
Jump to navigation Jump to search

Pyfun is a programming language in which only the following five characters are allowed

a [ ] + <

Pyfun is designed such that it can be easily converted into python 3. To convert pyfun code to python code, you have to replace the word code in the following python code with your pyfun code.

import sys
a=[0]
while True:
    a=code
    if a[0]==1:
        a[1]=ord(sys.stdin.read(1))
    if a[0]==2:
        sys.stdout.write(chr(a[1]))
        sys.stdout.flush()
    if a[0]==3:
        break

For example, if the pyfun code is

[+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]

Then, the python code would be

import sys
a=[0]
while True:
    a=[+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]
    if a[0]==1:
        a[1]=ord(sys.stdin.read(1))
    if a[0]==2:
        sys.stdout.write(chr(a[1]))
        sys.stdout.flush()
    if a[0]==3:
        break

Examples

Hello World program

[[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]+[[]<[]]+[[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]+[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]+[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[]<[[]]][[]<[]]<<[[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[[[[]<[[]]][[]<[]]<<[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]<<[[]<[[]]][[]<[]]]+[[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]<<[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]][[]<[]]+[[]<[[]]][[]<[]]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]]][[]<[]][a[[[[]<[]]+[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]][[]<[]][[[]<[]][[]<[]]<a[[]<[]]]]]]][[]<[]][[[]<[]][[]<[]]<a[[]<[]]]

Cat program

[[[[]<[[]]]+[[]]]+[[[[]<[[]]][[]<[]]+[[]<[[]]][[]<[]]]+[a[[[[]<[]]+[[]<[[]]]][[]<[]][[[]<[]][[]<[]]<a[[]<[]]]]]]+[[[]<[[]]]+[[]]]][[]<[]][a[[]<[]]]

Computational class

Pyfun is turing complete as someone was able to write a program that converts brainfuck into Pyfun.

link to the program that converts brainfuck into Pyfun