A practical functional library for lua programmers.
Ported from the JavaScript version https://github.com/ramda/ramda
Core features:
-
Immutable All method is immutable function without side effect. placeholder is supported ( R.__ )
-
Auto curried.
-
Functional support we got the R.piple/R.compose/R.o methods to make new functions.
Notice:
-
nil
is the very annoy params in lua because it not onlynone
value but alsoabsent
argument. we can not tell the difference, so if we curry the method, the nil args is rejected to send or the method will return acurried
function as a invalid result. -
string type is treated as the array table.(in most function , but maybe expcetions)
-
transducer / lens / transformer is not supported now.
-
all sort method is none-stable.( we use the default lua table.sort method)
-
this lib support awesome functional usage in lua programming but may also comes with a performance price. make sure the tick/update method don't use much more of this lib.