Commit Graph

211 Commits

Author SHA1 Message Date
Pekka Laiho
ce74a2ff82 add functions min and max 2021-06-01 17:21:53 +07:00
Pekka Laiho
1be4e17711 do not print out result by default, only with the -p option 2021-06-01 07:42:45 +07:00
Pekka Laiho
4475fc7cf4 Add tab completion to REPL 2020-12-25 09:22:47 +07:00
Pekka Laiho
7fd0005735 add standard I/O streams and few functions 2020-12-25 08:38:45 +07:00
Pekka Laiho
9e0550736a add eval.mad 2020-12-24 08:44:57 +07:00
Pekka Laiho
c4e0a991c6 remove first-or-null, not required because first returns null already 2020-12-24 08:18:43 +07:00
Pekka Laiho
45bc9ec2ef change calc.mad to use util.mad 2020-12-22 10:17:35 +07:00
Pekka Laiho
b1c1eb5cf1 add util.mad with some utility functions 2020-12-22 10:16:41 +07:00
Pekka Laiho
215c694bea 4th argument to re-split to if empty strings are removed (default to true) 2020-12-22 10:16:12 +07:00
Pekka Laiho
c38d29d805 add some i/o functions for working with files 2020-12-21 11:14:49 +07:00
Pekka Laiho
c9a095a857 add function: system 2020-12-21 09:36:49 +07:00
Pekka Laiho
c39064a682 add support for special characters in strings: vertical tab, null 2020-12-21 09:13:27 +07:00
Pekka Laiho
7049d54427 add functions for hashing and encoding 2020-12-21 08:49:05 +07:00
Pekka Laiho
b4d8715525 add funcs for string comparison, support strings in reverse 2020-12-21 07:51:31 +07:00
Pekka Laiho
3941f9c99e add more string functions 2020-12-20 19:56:03 +07:00
Pekka Laiho
a9a8558faa add getEnv method to Lisp 2020-12-20 16:36:48 +07:00
Pekka Laiho
9cf87a0c35 add pstr method to Lisp class 2020-12-20 13:54:27 +07:00
Pekka Laiho
c35134245c fix autoloading, add quickstart to readme 2020-12-20 10:01:42 +07:00
Pekka Laiho
bdb024df0b update README, move main documentation to project website 2020-12-20 09:22:14 +07:00
Pekka Laiho
3c447c499e update composer.json 2020-12-20 09:08:19 +07:00
Pekka Laiho
cd8e4c1005 find autoload.php from multiple locations, support --help flag 2020-12-20 08:56:32 +07:00
Pekka Laiho
c53eba8d23 add functions car and cdr because they are familiar for Lispers 2020-12-19 20:46:51 +07:00
Pekka Laiho
16808c7ff9 add support for variable arguments using & 2020-12-19 17:45:18 +07:00
Pekka Laiho
ed2738c91a more unit tests 2020-12-19 16:46:58 +07:00
Pekka Laiho
a10dff1307 unit tests for Func and UserFunc 2020-12-17 21:32:37 +07:00
Pekka Laiho
d1052b9b32 more unit tests 2020-12-17 09:45:37 +07:00
Pekka Laiho
d363700a39 add shortcut ~@ for unquote-splice 2020-12-16 22:01:50 +07:00
Pekka Laiho
5d6fbcc9cc add unit tests for Evaller class 2020-12-16 20:59:09 +07:00
Pekka Laiho
b18fc9cde2 unit tests for Printer class 2020-12-16 09:12:40 +07:00
Pekka Laiho
5ed0b0b531 add unit tests for Reader class 2020-12-16 08:22:51 +07:00
Pekka Laiho
bf726a1b5e macro for using λ instead of fn for lambdas 2020-12-15 22:07:12 +07:00
Pekka Laiho
170b8d424f add Unicode support to Tokenizer 2020-12-15 18:28:02 +07:00
Pekka Laiho
ed18cb2fd5 unit tests for Tokenizer 2020-12-15 09:03:54 +07:00
Pekka Laiho
ea7382caa3 rewrite Tokenizer to handle strings better 2020-12-15 09:03:21 +07:00
Pekka Laiho
2a20690b17 add phpunit 2020-12-14 16:19:42 +07:00
Pekka Laiho
6869c0392b fix error messages 2020-12-14 09:32:16 +07:00
Pekka Laiho
c87ce34f1e add comment blocks to source files 2020-12-14 08:49:07 +07:00
Pekka Laiho
56d9a1ff90 changes to print functions, other small changes 2020-12-14 08:22:22 +07:00
Pekka Laiho
7e146d8a9d remove #! from beginning of loaded files to support use in shell scripts 2020-12-13 15:34:03 +07:00
Pekka Laiho
2b8be79c0e rename run.php -> bin/madlisp 2020-12-13 15:08:24 +07:00
Pekka Laiho
5c4836d3ff rewrite run.php 2020-12-13 14:33:33 +07:00
Pekka Laiho
cf75c6eefd add while, remove loop 2020-12-12 14:53:48 +07:00
Pekka Laiho
a808ba8d4f cleaning and improving readme 2020-12-12 11:00:09 +07:00
Pekka Laiho
1415751843 update readme 2020-12-12 10:31:14 +07:00
Pekka Laiho
487a4fa345 remove ability to call env with argument 2020-12-12 09:08:37 +07:00
Pekka Laiho
dc6c206f4e add mtime, move timer from core to madlisp 2020-12-11 21:30:34 +07:00
Pekka Laiho
83c1e54463 allow multiple expressions in let body 2020-12-11 21:29:35 +07:00
Pekka Laiho
36cf1ad719 add case special form, improve readme 2020-12-11 08:57:31 +07:00
Pekka Laiho
435c9e6bd3 change case to cond 2020-12-10 21:46:03 +07:00
Pekka Laiho
9d2de20c1e remove coinflip, add randf, rand-seed 2020-12-10 20:55:14 +07:00