Greetings!
Raymond Toy <[email protected]> writes:
> On 2/21/25 8:59 AM, Camm Maguire wrote:
>
> I had to rework the type system a bit to accommodate unordered floats. In
> sum, (or (long-float 0) (long-float * 0)) is a subtype of, but not equal
> to, long-float. As NaNs were not envisioned in the spec (apparently),
>
> Is long-float a subtype of (or (long-float 0) (long-float * 0)) ?
>
No, but the converse is true.
> Seems weird to me because there’s no long-float that is not in either
> (long-float 0) or (long-float * 0). Are you essentially putting NaN’s there?
>
Yes, this is the resolution:
long-float = `(or (long-float unordered);nans
(long-float 0)
(long-float * 0))
or with any other pivot, you get the idea.
Take care,
> This was the last obstacle for GCL 2.7.0 release. AFAICS GCL master
> supports current master of ACL2, maxima, axiom, fricas, and hol88 and is
> ready for release. If anyone has any extremely minor suggestions in the
> next week or so please send them my way. No unicode changes made it
> into this release.
>
> In any case, I’m looking forward to the 2.7.0 release!
> ​
>
--
Camm Maguire [email protected]
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah