Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/genrnd/fifth
Simple stack interpreter (forth-like)
https://github.com/genrnd/fifth
Last synced: 2 months ago
JSON representation
Simple stack interpreter (forth-like)
- Host: GitHub
- URL: https://github.com/genrnd/fifth
- Owner: genrnd
- Created: 2015-08-30T06:51:31.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-08-30T15:39:16.000Z (over 9 years ago)
- Last Synced: 2024-04-24T16:14:47.683Z (9 months ago)
- Language: C
- Size: 128 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: ChangeLog
Awesome Lists containing this project
- AwesomeInterpreter - fifth
README
fifth
=====Fifth - это fun'овый стековый интерпретатор, который помимо программной логики
Forth был создан из-за того, что не хватило буквы U в слове Fourth.
Есть такая байка. А это - fifth, но у нас хватает места для всех символов :)Проект был создан при подготовке к Chaos Construction 2015 как
основа для конкурса по определению архитектуры проекта (Hardware Hack).Как запустить
-------------fifth ждёт на stdin программу в виде байт-кода.
Байт-код можно получить скриптом, который конвертирует мнемонику в байт-код (см. ниже).Как собрать
-----------make -f Makefile.unix
Язык (мнемоника)
----------------Набор команд здесь пока отсутствует, но его можно посмотреть в файле cmd.c --
там записан массив с кодами команд и callback'ами, которые реализуют команды.Доступны следующие команды:
* push
* drop
* dup
* swap
* over
* rot
* add
* mul
* sub
* inc
* dec
* lt
* gt
* eq
* ne
* cjump
* goto
* lrect
* mrect
* brect
* fill
* char
* delay
* led
* sound
* nop
* rand