1) declare that 'and' and 'or' are reserved only for Boolean
arguments, that they have short circuit semantics and
leave transformations in place
I admit that 1) looks most attractive for me.
Same for me. and and or should be language defined and short circuit.
It's also in line with Aldor.
http://www.aldor.org/docs/HTML/chap5.html#12
Thinking about it... assume "and" and "or" where not language defined
then one could define them as
(x: Boolean) and (y: Boolean): Boolean == if x then y else false;
(x: Boolean) or (y: Boolean): Boolean == if not x then y else true;
on top of
false: Boolean
true: Boolean
not: Boolean -> Boolean
But I guess "and" and "or" are too natural to be removed from the
language definition.
The Aldorlib and also AxiomLib use the category Logical for functions /\
and \/ that always (as any other function) evaluate their arguments.
Ralf
--
You received this message because you are subscribed to the Google Groups "FriCAS -
computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/fricas-devel?hl=en.