Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/auscompgeek/chickenpie
:baby_chick: Chicken implementation and debugger in Python
https://github.com/auscompgeek/chickenpie
chicken esolang esoteric-language interpreter programming-language python
Last synced: 2 months ago
JSON representation
:baby_chick: Chicken implementation and debugger in Python
- Host: GitHub
- URL: https://github.com/auscompgeek/chickenpie
- Owner: auscompgeek
- License: mit
- Created: 2015-11-21T10:44:05.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2016-03-21T06:27:41.000Z (almost 9 years ago)
- Last Synced: 2024-10-15T21:23:20.422Z (3 months ago)
- Topics: chicken, esolang, esoteric-language, interpreter, programming-language, python
- Language: Python
- Homepage:
- Size: 14.6 KB
- Stars: 6
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# chickenpie
A Python implementation of the [Chicken][] esoteric programming language.
This works for all the provided example problems, however, this may not be
entirely compatible with all Chicken programs out in the wild.## Usage
In the project root:
```console
$ python -m chickenpie examples/helloworld.ch
Hello world
$ python -m chickenpie.debugger examples/helloworld.ch
> b 38
> r
breakpoint at line 38, last instruction: BBQ
> s
38. push 1
> stack
[[...], 'd', 20, 20, 4, 9, 11, 7, 10, 16, 16, 4, 3, 10, 17, 3, 10, 10, 13, 11, 12, 6, 0, 3, 14, 4, 21, 13, 16, 10, 15, 13, 6, 0, 4, 18, 2, 2, 9, 11, 6, 0, 2, 11, 7, 12, 6, 0, 12, 3, 12, 7, 12, 6, 0, 10, 39, 3, 8, 11, 6, 0, None, -36, -7, 0, 0, 3, -76, 11, 3, 6, 'l', 1, 8]
> py 1 + 1
2
> quit
$ python -m chickenpie examples/99chickens.ch 9
9 chickens
8 chickens
7 chickens
6 chickens
5 chickens
4 chickens
3 chickens
2 chickens
1 chicken
no chickens$ python -m chickenpie examples/deadfish.ch iissiso
289
```For all commands the debugger accepts, see its source code (and a list of the VM methods).
## Prior art
* [pychicken][] is an unrelated, incomplete, and probably dysfunctional implementation.
* [chicken-php][] is a full implementation in PHP, with a command line wrapper.
* ... and of course, the original chicken.js itself.## License
[MIT](LICENSE).[Chicken]: http://torso.me/chicken
[pychicken]: https://github.com/zjs/pychicken
[chicken-php]: https://github.com/igorw/chicken-php