Kaynağa Gözat

Updated the documentation a little

main
Ludovic 'Archivist' Lagouardette 3 hafta önce
ebeveyn
işleme
07a43ec54e
1 değiştirilmiş dosya ile 26 ekleme ve 2 silme
  1. +26
    -2
      README.md

+ 26
- 2
README.md Dosyayı Görüntüle

@ -1,8 +1,12 @@
# `ink`
> *Any information here is subject to change and may already not be inaccurate anymore*
> *Here be dragons, you may have dug too deep*
`ink` is a minimalistic interpreted programming language, tentatively implemented exclusively in C89. It features
coroutines and can currently only manipulate integers. Part of the code may not be compliant with C89 and I will try to
fix that in time.
coroutines and can currently manipulate integers and arrays of integers, which can be interpreted as strings of Unicode
codepoints. Part of the code may not be compliant with C89 and I will try to fix that in time.
It is fully self-contained and doesn't rely on a working standard library beyond the following:
@ -31,6 +35,26 @@ It is possible to segregate unsafe allocations (allocations that should be hidde
- Functions have a count limit 128 labels (see `ink_parse`)
- Only non-main functions can use labels
## Roadmap
- Greater homoiconicity
- Can get a list of the words
- Can get words as arrays
- Can execute arrays as words
- Can manually create or modify
- Can read a routine program stack
- Can read a routine instruction counter stack
- Can read a routine stack
- Can set a routine status
- Word redefinition (with a flag)
- 9front port
- 9front shell
- Shell able to run external program and parse IO from other programs
- Shell can import files (requires waiting for a routine in a routine)
- Waiting for another routine
- Executing other routines
- Move shell words to base implementation *iff* they do not have any external dependency (e.g.: `version`)
## Examples
### Hello World

Yükleniyor…
İptal
Kaydet