diff --git a/anselme.lua b/anselme.lua index fc5b845..bbb9dc8 100644 --- a/anselme.lua +++ b/anselme.lua @@ -1,18 +1,12 @@ -- anselme module local anselme = { -- version - version = "0.12.0", + version = "0.13.0", --- currently running interpreter running = nil } package.loaded[...] = anselme --- TODO: improve type checking. --- Right now, there is some basic type checking done at parsing - but since Lua and Anselme functions may not always define the type of --- their parameters and return value, a lot of checks are skipped ("undefined argument" type). --- Probably won't be able to remove them completely (since lists can have mixed types, etc.), but would be good to limit them. --- Ideally, we'd avoid runtime type checking. - -- load libs local preparse = require((...):gsub("anselme$", "parser.preparser")) local postparse = require((...):gsub("anselme$", "parser.postparser")) diff --git a/ideas.txt b/ideas.txt new file mode 100644 index 0000000..a931fd8 --- /dev/null +++ b/ideas.txt @@ -0,0 +1,16 @@ +TODO: improve type checking. +Right now, there is some basic type checking done at parsing - but since Lua and Anselme functions may not always define the type of +their parameters and return value, a lot of checks are skipped ("undefined argument" type). +Probably won't be able to remove them completely (since lists can have mixed types, etc.), but would be good to limit them. +Ideally, we'd avoid runtime type checking. + +TODO: test reacheability of script paths +TODO: functions with default value for arguments / named parameters. Use = as name-value delimiter. +TODO: allow passing varargs as is to another function call + +Symbols still available: + ` + ' + _ + ¤ £ € + ?