Go to file
VaclavT e1465ae786 fixes 2021-02-14 09:09:42 +01:00
.vscode basic json parsing added 2021-02-11 00:30:36 +01:00
clib move constructing MlValues to clib from interpreter 2021-02-14 08:56:14 +01:00
doc initial project setup 2021-02-09 13:53:35 +01:00
stdlib quicksort 2021-02-14 08:56:32 +01:00
tmp stdlib dir created 2021-02-11 23:37:57 +01:00
.gitignore ignore .idea 2021-02-11 23:41:12 +01:00
CMakeLists.txt basic json parsing added 2021-02-11 00:30:36 +01:00
Readme.md fixes 2021-02-14 09:09:42 +01:00
debug.lisp basic json parsing added 2021-02-11 00:30:36 +01:00
ml.cpp fixes 2021-02-14 09:09:42 +01:00
ml.h const & 2021-02-14 09:08:03 +01:00

Readme.md

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