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

Re: Constructors motion



Nate,
 I don't agree with your example.
 P1788 is a standard for normal intervals.
A conforming system thus has to provide conforming operations for normal intervals. If the extension offers an extended data type with extended operations, has no impact on the compatibility.
Jürgen

Am 29.12.2011 16:25, schrieb Nate Hayes:
Hi Baker,

On one hand, I agree what you say about this option. In this sense, its
better than nothing, so I support moving in this direction.

On the other hand, I'd be careful not to oversell this approach as a
panacea. For example, programs and applications written by users for such a
system are likely under these circumstances not to be portable to other
conforming systems that don't provide the same arithmetic extensions.
that is true, but it is not the fault of p1788

 A
user's experience and understanding of what is an IEEE 1788 standard may
then become muddled or confused.

Think about my previous analogy: if a user writes a program that uses
signed
integers on a system that supports signed integer arithmetic, this program
will not run on a different system that only supports arithmetic for
unsigned integers.

Again you are right. But if the program performs normal operations (unsigned integer arithmetic) without taking signed integer arithmetic into account, it conforms on that part
Technically in this hypothetical scenario both systems
are conforming to a "standard for integer arithemtic" but from the user's
perspective this may lead to some head-scratching.

Sincerely,

Nate



----- Original Message ----- From: "Ralph Baker Kearfott"
<rbk5287@xxxxxxxxxxxxx>
To: "Jürgen Wolff von Gudenberg" <wolff@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
Cc: "Dan Zuras Intervals" <intervals08@xxxxxxxxxxxxxx>; "John Pryce"
<j.d.pryce@xxxxxxxxxxxx>; <stds-1788@xxxxxxxxxxxxxxxxx>
Sent: Thursday, December 29, 2011 5:48 AM
Subject: Re: Constructors motion


Yes, that's an option.

I'd like to remind people that, simply because something
doesn't appear in the standard, that doesn't necessarily
preclude someone from implementing it in a standard-conforming
system, as long as the standard does not mandate something that
makes it impossible to do so.

Does anyone wish to proffer one or more motions?

Baker

On 12/29/2011 05:39 AM, Jürgen Wolff von Gudenberg wrote:
Dan, Nate, John and all
I think that the approach with 2 constructors is feasible.
we should provide those in P1788 but, because of KISS, nothing more on
Kaucher intervals
Jürgen

Am 27.12.2011 18:02, schrieb Dan Zuras Intervals:
Subject: Re: Constructors motion
From: John Pryce<j.d.pryce@xxxxxxxxxxxx>
Date: Tue, 27 Dec 2011 11:47:29 +0000
Cc: stds-1788<stds-1788@xxxxxxxxxxxxxxxxx>

Dan, Nate, P1788

(Written while full of Christmas turkey, before looking at the =
subsequent postings on this topic)

(Replied to on the morning of the 27th, after playing
with my toys, my favorite of which is a Kindle. :-)


On 17 Dec 2011, at 10:29, Dan Zuras Intervals wrote:
(John Pryce wrote:)
... Kaucher
intervals are different. I had always assumed (I think this is =
explicit
in some of our correspondence right at the start of the project)
that
there will be a separate clause of P1788 called something like
"Extensions and changes to the standard for Kaucher intervals".

So is it well understood at this point that excluding
Kaucher intervals (at this point) is a GOOD thing?

If they are excluded ONLY for the lo<= hi thing, can
they not be included by a Kaucher decoration which
reverses that?

A "Kaucher decoration" is a design choice I hadn't thought of. I had =

Actually, I mentioned it in passing in the early days of
the discussions which led to the notion of decorations.
I also mentioned things like continuous& unbounded which
went away over time.

always assumed one is computing EITHER in normal interval mode, OR
in =
Kaucher mode, and that the two modes have separate libraries. Your
idea =
seems to incur an overhead because dispatching of operations must, =
potentially, be done at run time instead of compile time. And then
there =
is the semantics of mixed-mode operations to consider ...

Were there a Kaucher decoration, this would be true.
However, Nate convinced me that one can do without a
decoration& still do both normal& Kaucher for no
more than the cost of normal. See below& some of
the followup notes.


I think we need to decide this soon. At first glance I do NOT like
this =
way of doing things.

Yeah, neither did Nate. And I think you are both right.


John=

John,

I threw it out there thinking that the rules governing both
Kaucher& normal intervals seemed the same so long as you
knew which was which. Thus, a Kaucher decoration to store
that information.

But in our subsequent private (as I recall) conversations
on the subject, Nate convinced me that I was wrong on
several fronts.

First, it is not necessary to tell the constructor which
kind of interval was being constructed. It is sufficient
to have two constructors: one for normal intervals& one
for Kauchers.

Nate went on to tell me that the run time work required
of a routine that handled both Kaucher& normal intervals
(what I called Kaucher-savvy) was typically no more than
a similar routine for normals only (Kaucher-naive).

I will let Nate discuss that but it suggested to me that
we could consider the normal portion of our standard as
being a proper subset of a Kaucher standard. It suggests
that a conforming implementation could either conform at
the level of normal intervals or be augmented to include
those things that are needed to conform at the level of
Kaucher intervals.

Indeed, it suggests that we need not have a normal-only
level of conformance at all. That a user may use Kaucher
intervals or not, as is appropriate to the task at hand.
However, I hesitate to suggest that on ground of political
controversy within our group.

Therefore, I merely suggest that we make sure that there
is nothing required of the normal conformance of our
standard that is inconsistent with or contradicts a
Kaucher extension. Simply stated, the behavior at the
normal level is a strict subset of the behavior at the
Kaucher level.

Nate argues that this is both possible& of comparable
run time efficiency. I will let him make that case.

But if we find we can approach the standard in this way,
it greatly simplifies our task.

Don't you think?


Dan



--

---------------------------------------------------------------
Ralph Baker Kearfott, rbk@xxxxxxxxxxxxx (337) 482-5346 (fax)
(337) 482-5270 (work) (337) 993-1827 (home)
URL: http://interval.louisiana.edu/kearfott.html
Department of Mathematics, University of Louisiana at Lafayette
(Room 217 Maxim D. Doucet Hall, 1403 Johnston Street)
Box 4-1010, Lafayette, LA 70504-1010, USA
---------------------------------------------------------------


--
o Prof. Dr. Juergen Wolff von Gudenberg, Lehrstuhl fuer Informatik II
    / \          Universitaet Wuerzburg, Am Hubland, D-97074 Wuerzburg
InfoII o         Tel.: +49 931 / 31 86602
  / \  Uni       E-Mail: wolff@xxxxxxxxxxxxxxxxxxxxxxxxxxx
 o   o Wuerzburg