Releases: LIPS-scheme/lips
Releases · LIPS-scheme/lips
0.10.4
0.10.3
0.10.2
0.10.1
0.10.0
0.10.0
Breaking
- change order of
split
,replace
,match
,search
andinstanceof
so you can use them withcurry
append
andappend!
no require list or nil second argument- apply is no longer Macro it's now a function (so it can be used in curry)
Features
- change
append!
from macro to function (it will work with any value as fist list argument not only with names help
function and help system inside functions. First expression after function arguments is docs.- add
pipe
,compose
,fold
andsome
functions - new function
unbind
to help write function that work with functions as objects (LIPS wrap them) - add alias for
.
asget
so you can pass it to curry, with.
LIPS will try to create pair - lambda function introspection
- hypeapp example
- better loading of code
- make
map
,filter
,find
,for-each
andreduce
sync when possible - basic type checking
- documented
unquote-splicing
andunquote
functions that throw error when used outside ofquasiquote
- allow to extend the parser (kind of reader macros)
Bug fixes
- fix
if
it should not return false if false value is undefined - fix even and odd functions with BigInt
- fix curry
- fix when inside quasiquote there is empty list
- make
load
uselips.exec
, so it execute code sequentially - fix
append
- fix
timer
to use with expression - fix macros without arguments
- fix calling
setTimeout
#5
0.9.1
0.9.0
Breaking
for-each
andmap
works as in Scheme spec (use multiple arguments and don't use index)
Features
- better binary (options -f -c + read stdin + REPL + indent + catch exception)
- indent API function
- allow to use dots and variable names
.
function now work with multiple arguments and gets nested object value- add
undefined
to default Environment so you can use it in Lips code - add function
nop
- tokenizer with meta data now include newlines and comments (nothing is removed)
Bugs
- fix offset in tokenizer
- fix assign variables from variables (e.g. function or variable aliases)
- fix return value of Math operation that should return float #1
- fix tokenizer meta data with strings outside of S-Expressions or in lonely lines
- fix print of lips Symbols (update string function)
- fix missing recursive calls to unquote in quasiquote macro
- fix major issues with quasiquote that make macros don't work quite right
- fix parser when using multiple specials (unquote, quote etc.) in a row
- fix scope when evaluating macros
- fix async issues with list values inside let, lambda and begin macros
- don't evaluate next expressions in
and
andor
macros
0.8.1
0.8.0
Features
- new nth and reverse functions
- new type checking functions null? regex? pair? string? number? symbol? array? object? boolean?
- add lips source code that throwed exception in JavaScript error message
Bugfix
- fix lambda with rest parameter
Breaking
if
now check if argument is boolean