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: about 2 months ago
JSON representation

Simple stack interpreter (forth-like)

Lists

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
* print
* rand