| Computer scientist | Freelance |
| λ | ![]() |
Lambdada is a french community
of software developers
#FP #Haskell #Idris and more
Strong Typed Object-Oriented and
Functional programming language
Expr ::= SExp [('+' | '*') Expr]
SExpr ::= NUMBER | ('(' Expr ')')
fun Expr() = SExp() then opt(charIn('+','*') then Expr())
fun SExpr() = NUMBER or (char('(') then Expr() char(')')
Function accepting characters as input
and returning a structure as output
CharReader → Response<A>
Accept parsers as input and
returning a new parser as output
map : Parser<A> → (A → B) → Parser<B>
join : Parser<Parser<A>> → Parser<A>
flatMap : Parser<A> → (A → Parser<B>) → Parser<B>
The Object-Oriented Menace
Attack of the Closure
Revenge of the Type
then , or , opt , optrep , rep
Allows some algorithms using recursive function
without the risk of stack overflow.
char , charIn , not