README.txt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. environment variable TAROTPATH should be set to the folder that contains this text file.
  2. $TAROTPATH/vm/vm
  3. cd $TAROTPATH/vm ; make # to build it
  4. $TAROTPATH/compiler
  5. is the source code of the compiler and standard library
  6. $TAROTPATH/qcode-1
  7. all of the standard library .q files.
  8. $TAROTPATH/qcode-2
  9. loaded next, contains parser.q and compiler.q
  10. $TAROTPATH/qcode
  11. build scripts
  12. $TAROTPATH/build
  13. temporary build products
  14. ## Building and testing
  15. add scripts to PATH
  16. scripts/build.sh
  17. will (self host) build the qcode
  18. scripts/test.sh
  19. will run the tests
  20. both of the commands can run off chez instead of tarot if you use TAROT_BOOTSTRAP=1
  21. ## Test Directory Structure
  22. test/
  23. src/ contains Scheme source code to tests
  24. run/ contains compiled qcode files
  25. out/ contains the actual output of running the .q file
  26. exp/ contains the expected output of running the .q file
  27. ## PITFALLS
  28. the load order of .q files is important
  29. if a global is used before it is defined (as opposed to just referred to in a lambda) the value will be #f
  30. aliases like (define foo bar) may have to be eta-expanded if load order is unlucky