cbfcf24ca27df81f51c0f17f6de0730d03e74655
Main reason to have this at all is to make char-by-char reading feasible. This occurs at `stream_chunk`, and previously if we passed in STDIN for `stream_init_file`, STDIN will only terminate once STREAM_DEFAULT_CHUNK number of characters have been fed into the pipe. This isn't desirable for STDIN (we really want to read char-by-char for expressions), nor would it necessarily be desirable in network applications. So any stream marked STREAM_TYPE_PIPE will only chunk character-by-character rather than genuine chunks.
┌───────────────────────────────┐ │ _ _ │ │ /\ | | (_) │ │ / \ | | _ ___ _ __ │ │ / /\ \ | | | / __| '_ \ │ │ / ____ \| |____| \__ \ |_) | │ │ /_/ \_\______|_|___/ .__/ │ │ | | │ │ |_| │ └───────────────────────────────┘ Arya's Lisp! Or... Another Lisp. However full you see the glass. Goals: - Working Lisp interpreter (designed as I go, not sticking to Common Lisp or Scheme). - Bespoke compilation method by transpiling to C, with ability to compile expressions and functions at runtime. - Self Hosted interpreter + compiler, with a small bootstrap runtime in C.
Languages
C
98.3%
Makefile
1.7%