{"id":15502962,"url":"https://github.com/evuez/esolangs","last_synced_at":"2025-06-26T08:03:09.696Z","repository":{"id":33548273,"uuid":"37194456","full_name":"evuez/esolangs","owner":"evuez","description":":snake: Some esoteric programming languages interpreters written in Python","archived":false,"fork":false,"pushed_at":"2015-06-12T13:04:33.000Z","size":344,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-19T17:30:18.386Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evuez.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-10T11:59:27.000Z","updated_at":"2021-01-15T09:55:45.000Z","dependencies_parsed_at":"2022-07-13T13:20:28.805Z","dependency_job_id":null,"html_url":"https://github.com/evuez/esolangs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/evuez/esolangs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fesolangs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fesolangs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fesolangs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fesolangs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evuez","download_url":"https://codeload.github.com/evuez/esolangs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fesolangs/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262026906,"owners_count":23246951,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-02T09:11:42.047Z","updated_at":"2025-06-26T08:03:09.671Z","avatar_url":"https://github.com/evuez.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Esolangs\n## Some [esoteric programming languages](https://esolangs.org/) interpreters written in Python\n\nBasic languages rules are written in interpreters files.\n\n### Brainfuck (non-wrapping)\n\n```brainfuck.py``` includes a ```CyclingInt``` class that can be used to get a wrapping implementation.\n\n```python\nfrom brainfuck import Brainfuck\n\n\n# prints \"Hello World!\"\nBrainfuck().execute(\"\"\"\n    ++++++++++[\u003e+++++++\u003e++++++++++\u003e+++\u003e+\u003c\n    \u003c\u003c\u003c-]\u003e++.\u003e+.+++++++..+++.\u003e++.\u003c\u003c++++++\n    +++++++++.\u003e.+++.------.--------.\u003e+.\u003e.\n\"\"\")\n```\n\n### Ook! (non-wrapping)\nBrainfuck. With \"Ook\"s.\n\n```python\nfrom ook import Ook\n\n\n# prints \"Hello World!\"\nOok().execute(\"\"\"\n    Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.\n    Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?\n    Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook.\n    Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.\n    Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.\n    Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook.\n    Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.\n    Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!\n    Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook.\n\"\"\")\n```\n\n### Smallfuck\nReduced Brainfuck operating on bits. Since there is no print operator, the execution won't print anything.\n\n```python\nfrom smallfuck import Smallfuck\n\n\nsfi = Smallfuck()\nsfi.execute(\"\"\"\n    *\u003e*\u003e*[\u003e*\u003c*]*\u003e*\u003e\n\"\"\")\nprint(sfi.cells)\n```\n\n\n### Kipple (based on the [3rd version of the spec](http://web.archive.org/web/20070224040559/http://rune.krokodille.com/lang/kipple/kipple.html))\n\nNot fully implemented yet, input is missing. You can fill ```Kipple().stacks['i']``` before execution to use it later in the program.\n\n```python\nfrom kipple import Kipple\n\n\n# prints \"Hello World!\"\nKipple().execute(\"\"\"\n    33\u003eo 100\u003eo 108\u003eo 114\u003eo 111\u003eo 87\u003eo 32\u003eo 111\u003eo 108\u003eo 108\u003eo 101\u003eo 72\u003eo\n\"\"\")\n\n# prints the first 25 numbers of the Fibonacci sequence\nKipple().execute(\"\"\"\n    24\u003en 0\u003et 1\u003ea\n    (n-1\n      a+0\n      t\u003ca\u003eb+a\n      c\u003cb\u003ea\u003cc\n      n?\n    )\n    (t\u003e@\n      (@\u003eo)\n      32\u003eo\n    )\n\"\"\")\n```\n\n### [DOGO](https://esolangs.org/wiki/DOGO)\n\nNothing done yet.\n\n### [Byte Syze](https://esolangs.org/wiki/Byte_Syze)\n\nEven less done.\n\n### [Meq](https://esolangs.org/wiki/Meq)\n\nSee Byte Syze.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevuez%2Fesolangs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevuez%2Fesolangs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevuez%2Fesolangs/lists"}