mlisp/Readme.md

1.2 KiB

TODO

  • construct list for parse-csv in csvparse.cpp instead of ml.cpp
  • support for strings with " included
  • documentation
  • add url of source/inspiration to clib/*.cpp
  • load std lib when starting
  • add more command line args
  • split into more files
  • prejmenovat ivaluize
  • add some debug support??
  • add instrumentation (time, nr of evals, debug info, debug environment etc)

Functionality

  • readline
  • execute system command
  • printf
  • env
  • support for including lib
  • date support
  • file functions
    • name it here
  • string funtions
    • name it here
  • add hash datatype

Performance

  • push_back - repeately without reserving size

Example of use

time ./build/ml -c '(include "../example.lisp") (print (fact 1000))'
./build/ml -f debug.lisp

https://www.tutorialspoint.com/lisp/index.htm https://github.com/adam-mcdaniel/wisp

https://github.com/dropbox/json11

std::vector

https://stackoverflow.com/questions/12271017/initial-capacity-of-vector-in-c https://baptiste-wicht.com/posts/2012/12/cpp-benchmark-vector-list-deque.html

parse http headers in c++

^(?:((?:https?|s?ftp):)\/\/)([^:\/\s]+)(?::(\d*))?(?:\/([^\s?#]+)?([?][^?#]*)?(#.*)?)?

https://stackoverflow.com/questions/25896916/parse-http-headers-in-c