Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: Motion to finalise interval literals



Michel

On 5 Jun 2013, at 22:10, Michel Hack wrote:
> John Pryce replied to my issue with [0.1]:
>> No, it was only dropped for simplicity.  There isn't a problem and never
>> was.  (If there had been, then "[0.1,0.1]" would have had the same problem.)
>> Remember the value of an interval literal is a Level 1 value, as I hope the
>> text makes clear.  At Level 2 it is enclosed by a representable interval.
> 
> I had not realised that the motion was in the context of Level 1.
> 
> This should be made explicit, especially since the current draft says
> explicitly in 9.6.1:  "Level 1 ... makes no requirements on the form
> of literals."  So pardon me if I assumed that we were talking Level 2.

OK, an important point of presentation. Should literals be specified at Level 2 because it is only there that this spec *shall* be used? Or at Level 1 because the definition is a Level 1 concept?

I had them in Level 1 before. IMO the present place is better.

> I'm still curious however what Sun's documentation means by "degenerate
> mathematical interval" -- assuming that they have no notion of Levels.

The Manual is free online, Google "Sun interval programming" or similar. It is explicit that a Sun interval literal has the "P1788 meaning". So [0.1,0.2] denotes the mathematical interval that is then enclosed by a representable one. If you want the "Fateman meaning" you can do it by their INTERVAL constructor, but it is (presumably on purpose) more cumbersome.

John Pryce