Basic: smarter ALLOC. Keywords. Vector fixes.
authorJoel Martin <github@martintribe.org>
Sat, 15 Oct 2016 04:48:03 +0000 (23:48 -0500)
committerJoel Martin <github@martintribe.org>
Sat, 15 Oct 2016 04:48:03 +0000 (23:48 -0500)
commita742287e0e83294829293a4063adeb796e5100f3
treed69dfc25f28008dfd7ef583ee2fd4e3e3fd067ba
parentcc9dbd92e3bce0d51905df1f810adfc32db7769e
Basic: smarter ALLOC. Keywords. Vector fixes.

- Modify ALLOC to take a type (rather than size) and take default
  values to set for the 1-3 values/pointers. Let alloc do the
  ownership taking of the referred values when appropriate.
- Add FORCE_SEQ_TYPE function to coerce sequence to given type. Fixes
  apply and rest on vector. Simplifies concat.
- Use a double ON GOTO structure for calling the native functions in
  DO_FUNCTION.
- Add some stub core functions.
- Move CHECK_FREE_LIST to debug.in.bas
- All changes together save over 1K
16 files changed:
basic/core.in.bas
basic/debug.in.bas
basic/env.in.bas
basic/printer.in.bas
basic/reader.in.bas
basic/step2_eval.in.bas
basic/step3_env.in.bas
basic/step4_if_fn_do.in.bas
basic/step5_tco.in.bas
basic/step6_file.in.bas
basic/step7_quote.in.bas
basic/step8_macros.in.bas
basic/step9_try.in.bas
basic/stepA_mal.in.bas
basic/types.in.bas
basic/variables.txt