Go to file
VaclavT 46b29fc229 string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
.vscode launch configurations update 2021-02-23 21:20:33 +01:00
clib REMOVED USER_STD macros, code formating, csv changes, few file functions 2021-02-15 23:20:20 +01:00
doc string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
stdlib string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
tests sort tests added 2021-02-26 09:49:54 +01:00
tmp readme entry 2021-02-22 01:25:07 +01:00
.gitignore small lisp updates 2021-02-21 21:53:45 +01:00
CMakeLists.txt file extension to .lsp 2021-02-23 21:30:02 +01:00
Readme.md string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
debug.lsp string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
ml.cpp string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
ml.h const & parameter 2021-02-22 01:25:49 +01:00
ml_date.cpp let it compile under XCode 2021-02-26 09:50:31 +01:00
ml_date.h changes here, changes there 2021-02-16 19:53:39 +01:00
ml_io.cpp changes here, changes there 2021-02-16 19:53:39 +01:00
ml_io.h include path changes 2021-02-26 09:49:01 +01:00
ml_string.cpp string pad/rpad/lpad 2021-02-28 12:53:06 +01:00
ml_string.h string pad/rpad/lpad 2021-02-28 12:53:06 +01:00

Readme.md

BUGS

  • see malformed_program - wrong parsing of comments - probably comment with "

TODO

  • test whether AIG,,,10 csv row is parsed
  • support for (), nil, t
  • print-table
  • download 10 years of data from api.nasdaq.com into test dir
  • documentation
  • rename data.csv and add more tickers
  • logical operators
  • add url of source/inspiration to clib/*.cpp
  • add stdtest - to test every functionality
  • rename ivaluize
  • add benchmark
  • add some debug support??
  • add instrumentation (time, nr of evals, debug info, debug environment etc)
  • in casting functions (as_string..) better exception description
  • add better print (syntax high-lighting)
  • add command line options -h -v
  • readline
  • execute system command should capture stderr
  • add builtin sleep
  • add built in for and, or
  • file functions
    • name it here
  • string functions
    • compare - needed for sorting
    • uppper/lower case
  • regexp functions
  • date support
    • decode-universal-time
  • env functions
    • get env
    • set env
  • add hash datatype
  • conversion functions like parse-integer
  • list function nth
  • in test.lisp some explaining prints
  • format (printf)
  • setq
  • mapcar (funcall, apply)
  • if then else, else part is optionw, allow then clause

Performance

  • push_back - repeatedly without reserving size

Install

cp build/ml /usr/local/bin/ml
cp stdlib/stdlib.lsp /usr/local/var/mlisp/stdlib.lsp

Example of use

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

https://hyperpolyglot.org/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

read stdout and stderr from popen

https://stackoverflow.com/questions/478898/how-do-i-execute-a-command-and-get-the-output-of-the-command-within-c-using-po

VPS providers

https://www.skysilk.com/cloud/pricing/#classId=Standard&section=2 https://contabo.com/en/ https://www.hetzner.com/de/