Closed rkoeninger closed 7 years ago
cond
expression fixed in 14663bf26ace8702981138d77b147282c245c56c
if
, and
, or
can now be partially applied, but do not do short-circuit evaluation unless applied in full.
Demonstration can be seen here.
Fixed in c1529a23d3ed88b13fe6753110c65007812a6c3f
In the CLisp and Ruby (according to unit tests) implementations, the
or
andand
forms can be applied to one argument that is eagerly evaluated and return a lambda that evals the another conditional. Theif
form can also be applied to less than 3 args, which get eagerly evaluated and return a lambda. This does not appear to work in the Haskell implementation.The CLisp and Haskell implementations have a
cond
form that returns()
when no conditions eval to true.