update readme
parent
f88ad6651b
commit
a2f70952e1
@ -1,3 +1,24 @@
|
||||
# foci
|
||||
|
||||
When will I stop creating Forths
|
||||
`foci` is a small Forth implementation that prioritizes performance and portability. This threaded Forth implementation uses CPU registers and native execution to maximize efficiency.
|
||||
|
||||
Register usage is the only platform-specific requirement; otherwise, `foci` is written in 100% portable C. There is active support for x86\_64, ARM Cortex-M, and MSP430 architectures.
|
||||
|
||||
`foci` compiles to a binary object that can easily be linked into another application. Code size is generally a few kilobytes, while RAM usage is primarily set by the size of `foci`'s two stacks and dictionary.
|
||||
|
||||
## Available words
|
||||
|
||||
```
|
||||
dup drop swap rot -rot over tuck @ ! c@ c! + +! - * / mod and or xor _c [ ]
|
||||
, cell cell+ cells _d base here allot latest negate invert 1- 1+ aligned align
|
||||
: ; literal _b _bz if then else \' [\'] execute decimal hex . emit
|
||||
```
|
||||
|
||||
## Build instructions
|
||||
|
||||
Run `make` with a supported architecture target:
|
||||
|
||||
* `make x86-64`: x86\_64 processors (i386 is *not* supported)
|
||||
* `make arm-cm4`: ARM Cortex-M4 microcontrollers
|
||||
* `make msp430`: TI MSP430 microcontrollers
|
||||
|
||||
|
Loading…
Reference in New Issue