README 1.7 KB

12345678910111213141516171819202122232425262728293031
  1. This is the VSL Lisp system. Its key attribute is that it is SMALL.
  2. The source file (vsl.c) is around 3000 lines long, but despite that
  3. the system can build and run much of Reduce. Since there is only
  4. an interpreter it will be slow, but for teaching purposes and for
  5. fun it may still be of interest.
  6. There are two versions here (apologies).
  7. vsl1.c can be compiled and is expected to run Reduce. Try "make reduce" here
  8. and then "./vsl1 -i reduce.img" possibly followed by a file-name to read.
  9. This is all interpreted and the bignum arithmetic is painfully slow, but all
  10. it needs is a simple C compiler so it may be of interest as at leaset a first
  11. test on a new and potentially tricky machine. But note that a Reduce built
  12. that was is not only slow but it has not been seriously tested and either
  13. bugs in vsl1 or missing features may cause problems to arise. Because vsl1.c
  14. is so compact you are mostly expected to track those down and fix them for
  15. yourself!
  16. The second version is called simply vsl.c. That was being used as part of a
  17. project to explore the bootstrapping phases of building PSL. It thus has
  18. options to mimic the parsing regime in a raw "bpsl" Lisp (with eg "-" and "&"
  19. treated as letters so that one can have a token &abc-def without needing
  20. to use escape characters to spell it). There are some somewhat fragmentary
  21. files and stages in the Makefile for starting to build a PSL kernel. The work
  22. there got as far as "proof of concept" and so is available if anybody wants
  23. to pick it up, but it is not complete or tidy! If you want to port PSL as a
  24. serious task you will be better off using an existing version and running
  25. initial bootstrap stages as cross-builds on a platform where everthing is
  26. known to be stable.
  27. Arthur Norman. 2012-2018, 2021