[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*To*: rrrs-authors@mc*Subject*: Wired numeric predicates?*From*: "Michael R. Blair" <ziggy@vx.lcs.mit.edu>*Date*: Sun, 5 Mar 89 16:38:08 EST*Sender*: ziggy@RTS-8

The R^3 Report mentions multiple argument variations on the numeric predicates (like =, <, et al) which test (resp) numeric equality, monotonically increasing numeric sequence, ... May some implementations implement these as left-to-right special forms (derived expressions) where once a #F result is established the remaining terms are not evaluated? If so, the manual should be careful not to call these ``procedures'', or at least to mention that some implementations allow them to not be procedures. I ask because it seemed natural to think of (say) < as being: (< <x1> <x2> <x3>...) = (let* ((temp1 <x1>) ; Preserve L->R eval while (temp2 <x2>)) ; avoiding evaling <x2> twice (and (< temp1 temp2) (< temp2 <x3>...))) For example, (= 1 2 (diverge)) ==> #F Or maybe different names should be used for the wired versions? Like putting a `?' in there names (or maybe better for wired predicates to NOT have `?'s and non-wired ones TO have them). Regards, ~Ziggy

- Prev by Date:
**... should be a peculiar identifier** - Next by Date:
**Re: Wired numeric predicates?** - Prev by thread:
**... should be a peculiar identifier** - Next by thread:
**Re: Wired numeric predicates?** - Index(es):