comp.lang.ada
 help / color / mirror / Atom feed
* Fixed point multiplication ambiguity
@ 1999-01-14  0:00 Marc A. Criley
  1999-01-14  0:00 ` Robert I. Eachus
                   ` (5 more replies)
  0 siblings, 6 replies; 59+ messages in thread
From: Marc A. Criley @ 1999-01-14  0:00 UTC (permalink / raw)


The following test program is compilable by Rational Apex, but
GNAT rejects it with:

tf.adb:5:38: type cannot be determined from context
tf.adb:5:38: explicit conversion to result type required

I've studied the LRM 4.5.5(13-20), but who has the correct
interpretation doesn't quite jump out at me, though I am
leaning towards one over the other.
--------------------

procedure Tf is

    D : Duration := 5.0;

    Dec_Delt : Integer := Integer (D * 10.0 + 0.5);

begin
    null;
end Tf;

-----------------------
Marc A. Criley
Chief Software Architect
Lockheed Martin M&DS
(610) 354-7861




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
                   ` (4 preceding siblings ...)
  1999-01-14  0:00 ` Fixed point multiplication ambiguity Tom Moran
@ 1999-01-14  0:00 ` Matthew Heaney
  5 siblings, 0 replies; 59+ messages in thread
From: Matthew Heaney @ 1999-01-14  0:00 UTC (permalink / raw)


"Marc A. Criley" <marc.a.criley@lmco.com> writes:

> procedure Tf is
> 
>     D : Duration := 5.0;
> 
>     Dec_Delt : Integer := Integer (Duration'(D * 10.0) + 0.5);
                                     ^^^^^^^^^^        ^

> 
> begin
>     null;
> end Tf;

Add the type qualification I've indicated.

D * 10.0 returns universal fixed, and you tried to add a number to that
product.  Is addition defined for universal fixed + universal real?  I
think you have to explicitly state the type of the universal fixed
product before you can do anything else to it.





^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
                   ` (3 preceding siblings ...)
  1999-01-14  0:00 ` Tucker Taft
@ 1999-01-14  0:00 ` Tom Moran
  1999-01-14  0:00 ` Matthew Heaney
  5 siblings, 0 replies; 59+ messages in thread
From: Tom Moran @ 1999-01-14  0:00 UTC (permalink / raw)


>The following test program is compilable by Rational Apex, but
>GNAT rejects it with:
  ObjectAda and Janus both accept it without complaint.




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
@ 1999-01-14  0:00 ` Robert I. Eachus
  1999-01-14  0:00 ` bob
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Robert I. Eachus @ 1999-01-14  0:00 UTC (permalink / raw)


In article <369E14CA.90715966@lmco.com> "Marc A. Criley" <marc.a.criley@lmco.com> writes:

  > I've studied the LRM 4.5.5(13-20), but who has the correct
  > interpretation doesn't quite jump out at me, though I am
  > leaning towards one over the other.

   I argee with GNAT that the code as written is illegal.  My guess is
that the other compiler is incorrectly applying 8.6(29) to the
addition of _universal_fixed_ and _root_real_.

--

					Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
  1999-01-14  0:00 ` Robert I. Eachus
  1999-01-14  0:00 ` bob
@ 1999-01-14  0:00 ` David C. Hoos, Sr.
  1999-01-14  0:00 ` Tucker Taft
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: David C. Hoos, Sr. @ 1999-01-14  0:00 UTC (permalink / raw)



Marc A. Criley wrote in message <369E14CA.90715966@lmco.com>...
>The following test program is compilable by Rational Apex, but
>GNAT rejects it with:
>
>tf.adb:5:38: type cannot be determined from context
>tf.adb:5:38: explicit conversion to result type required
>
>I've studied the LRM 4.5.5(13-20), but who has the correct
>interpretation doesn't quite jump out at me, though I am
>leaning towards one over the other.
>--------------------
>
>procedure Tf is
>
>    D : Duration := 5.0;
>
>    Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
>
>begin
>    null;
>end Tf;
>
The problem is simply that the compileter has to guess the type of "10.0",
or have D converted to Float.

Either of the following lines is acceptable to gnat.

    Dec_Delt : Integer := Integer (Float (D) * 10.0) + 0.5);
    Dec_Delt : Integer := Integer (D * Integer (10.0) + 0.5);

David C. Hoos, Sr.







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
                   ` (2 preceding siblings ...)
  1999-01-14  0:00 ` David C. Hoos, Sr.
@ 1999-01-14  0:00 ` Tucker Taft
  1999-01-15  0:00   ` robert_dewar
  1999-01-28  0:00   ` Nick Roberts
  1999-01-14  0:00 ` Fixed point multiplication ambiguity Tom Moran
  1999-01-14  0:00 ` Matthew Heaney
  5 siblings, 2 replies; 59+ messages in thread
From: Tucker Taft @ 1999-01-14  0:00 UTC (permalink / raw)


Marc A. Criley (marc.a.criley@lmco.com) wrote:

: The following test program is compilable by Rational Apex, but
: GNAT rejects it with:

: tf.adb:5:38: type cannot be determined from context
: tf.adb:5:38: explicit conversion to result type required

: I've studied the LRM 4.5.5(13-20), but who has the correct
: interpretation doesn't quite jump out at me, though I am
: leaning towards one over the other.
: --------------------

: procedure Tf is

:     D : Duration := 5.0;

:     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);

This is legal.  Overload resolution interprets "D * 10.0" as returning
universal_fixed.  This is implicitly convertible to Duration (as well
as any other fixed point type), as is 0.5.  Presuming there is no 
other fixed-point type with a directly visible "+", this should resolve, 
and use the "+" of Duration.

: begin
:     null;
: end Tf;

: -----------------------
: Marc A. Criley
: Chief Software Architect
: Lockheed Martin M&DS
: (610) 354-7861

--
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
  1999-01-14  0:00 ` Robert I. Eachus
@ 1999-01-14  0:00 ` bob
  1999-01-14  0:00 ` David C. Hoos, Sr.
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: bob @ 1999-01-14  0:00 UTC (permalink / raw)


Marc,

For what it is worth, I cant answer the LRM interpretation, haven't
researched it yet. Maybe Hoos, or one of the others. But changing the 10.0
to integer 10 matches the "*" definition in package standard (gnat). It
then works. See following.

procedure Tf is

  D : Duration := 5.0;

  Dec_Delt : Integer := Integer(D * 10 + 0.5);

begin
    null;
end Tf;


linux:~/atest> ada tf.adb
gcc -c -g tf.adb
gnatbind -x tf.ali
gnatlink -g tf.ali


cheers...bob

Marc A. Criley <marc.a.criley@lmco.com> wrote in article
<369E14CA.90715966@lmco.com>...
> The following test program is compilable by Rational Apex, but
> GNAT rejects it with:
> 
> tf.adb:5:38: type cannot be determined from context
> tf.adb:5:38: explicit conversion to result type required
> 
> I've studied the LRM 4.5.5(13-20), but who has the correct
> interpretation doesn't quite jump out at me, though I am
> leaning towards one over the other.
> --------------------
> 
> procedure Tf is
> 
>     D : Duration := 5.0;
> 
>     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
> 
> begin
>     null;
> end Tf;
> 
> -----------------------
> Marc A. Criley
> Chief Software Architect
> Lockheed Martin M&DS
> (610) 354-7861
> 




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 ` Tucker Taft
@ 1999-01-15  0:00   ` robert_dewar
  1999-01-28  0:00   ` Nick Roberts
  1 sibling, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-01-15  0:00 UTC (permalink / raw)


In article <F5KMxx.3L8.0.-s@inmet.camb.inmet.com>,
  stt@houdini.camb.inmet.com (Tucker Taft) wrote:
> Marc A. Criley (marc.a.criley@lmco.com) wrote:
>
> : The following test program is compilable by Rational
Apex, but
> : GNAT rejects it with:
>
> : tf.adb:5:38: type cannot be determined from context
> : tf.adb:5:38: explicit conversion to result type
required
>
> : I've studied the LRM 4.5.5(13-20), but who has the
correct
> : interpretation doesn't quite jump out at me, though I
am
> : leaning towards one over the other.
> : --------------------
>
> : procedure Tf is
>
> :     D : Duration := 5.0;
>
> :     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
>
> This is legal.  Overload resolution interprets "D * 10.0"
as returning
> universal_fixed.  This is implicitly convertible to
Duration (as well
> as any other fixed point type), as is 0.5.  Presuming
there is no
> other fixed-point type with a directly visible "+", this
should resolve,
> and use the "+" of Duration.
>
> : begin
> :     null;
> : end Tf;
>
> : -----------------------
> : Marc A. Criley
> : Chief Software Architect
> : Lockheed Martin M&DS
> : (610) 354-7861
>
> --
> -Tucker Taft   stt@averstar.com
http://www.averstar.com/~stt/
> Technical Director, Distributed IT Solutions
(www.averstar.com/tools)
> AverStar (formerly Intermetrics, Inc.)   Burlington, MA
USA
>

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-14  0:00 ` Tucker Taft
  1999-01-15  0:00   ` robert_dewar
@ 1999-01-28  0:00   ` Nick Roberts
  1999-01-28  0:00     ` robert_dewar
  1999-01-28  0:00     ` Tucker Taft
  1 sibling, 2 replies; 59+ messages in thread
From: Nick Roberts @ 1999-01-28  0:00 UTC (permalink / raw)


Tucker Taft wrote in message ...
[...]
|: procedure Tf is
|
|:     D : Duration := 5.0;
|
|:     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
|
|This is legal.  Overload resolution interprets "D * 10.0" as returning
|universal_fixed.  This is implicitly convertible to Duration (as well
|as any other fixed point type), as is 0.5.  Presuming there is no
|other fixed-point type with a directly visible "+", this should resolve,
|and use the "+" of Duration.
[...]

Yes, this is legal, but Tucker's explanation is not precisely right. The
D*10.0 does resolve as Tucker says, giving a universal_fixed. The 0.5
literal is a universal_real. Thus adding them gives us the pattern
"+"(universal_fixed,universal_real) return unknown. However, it is the rule
in RM 8.6 [29,30] preferring root types that allows this to be resolved into
the pattern "+"(root_real,root_real) return root_real implied by RM 4.5.3
[2]. So the expression D*10.0+0.5 returns a value of type root_real, which
can then be converted to an integer and assigned to Dec_Delt.

However, the expression Integer(D*10.0+0.5) causes a root_real addition and
conversion to integer to be executed dynamically. It may be slightly more
efficient to use the expression Integer(D*10+0.5) instead, causing the
multiplication, addition, and conversion to all be carried out on the type
Duration. For some implementations, operations on the type Duration will
execute slightly faster than the same operations on the type root_real. On
the other hand, some implementations' optimisers will effectively make this
change automatically.

-------------------------------------------
Nick Roberts
-------------------------------------------







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-28  0:00   ` Nick Roberts
  1999-01-28  0:00     ` robert_dewar
@ 1999-01-28  0:00     ` Tucker Taft
  1999-01-28  0:00       ` robert_dewar
  1999-01-29  0:00       ` Nick Roberts
  1 sibling, 2 replies; 59+ messages in thread
From: Tucker Taft @ 1999-01-28  0:00 UTC (permalink / raw)


Nick Roberts (Nick.Roberts@dial.pipex.com) wrote:

: Tucker Taft wrote in message ...
: [...]
: |: procedure Tf is
: |
: |:     D : Duration := 5.0;
: |
: |:     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
: |
: |This is legal.  Overload resolution interprets "D * 10.0" as returning
: |universal_fixed.  This is implicitly convertible to Duration (as well
: |as any other fixed point type), as is 0.5.  Presuming there is no
: |other fixed-point type with a directly visible "+", this should resolve,
: |and use the "+" of Duration.
: [...]

: Yes, this is legal, but Tucker's explanation is not precisely right. 

I believe I am right (see below).

: ... The D*10.0 does resolve as Tucker says, giving a universal_fixed. The 0.5
: literal is a universal_real. Thus adding them gives us the pattern
: "+"(universal_fixed,universal_real) return unknown. However, it is the rule
: in RM 8.6 [29,30] preferring root types that allows this to be resolved into
: the pattern "+"(root_real,root_real) return root_real implied by RM 4.5.3
: [2]. So the expression D*10.0+0.5 returns a value of type root_real, which
: can then be converted to an integer and assigned to Dec_Delt.

Sorry, but you are wrong.  Universal_fixed is *not* implicitly convertible
to root_real.  It is implicitly convertible to any *fixed point* type,
and to universal_real (because any real type is implicitly convertible
both *to* and *from* universal real), but *not* to root_real (I realize 
only a died-in-the-wool language lawyer will believe this reasoning).

: However, the expression Integer(D*10.0+0.5) causes a root_real addition and
: conversion to integer to be executed dynamically. 

No, this expression uses Duration's "+", because this is effectively
equivalent to:
   Integer(Duration(D*10.0)+Duration(0.5))

The whole fixed-point multiplication model is pretty obscure, unfortunately.

: ...
: -------------------------------------------
: Nick Roberts
: -------------------------------------------

--
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-28  0:00   ` Nick Roberts
@ 1999-01-28  0:00     ` robert_dewar
  1999-01-28  0:00     ` Tucker Taft
  1 sibling, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-01-28  0:00 UTC (permalink / raw)


In article <78od6d$b4t$2@plug.news.pipex.net>,
  "Nick Roberts" <Nick.Roberts@dial.pipex.com> wrote:
>
> Yes, this is legal, but Tucker's explanation is not
> precisely right.

<<completely different analysis, with entirely different
legality consequences -- would make some programs legal
where Tucker's approach would make them illegal>> snipped

Brave fellow to be sure you know this stuff better than
Tuck :-)

I agree with Tuck's analysis (and so does GNAT :-)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-28  0:00     ` Tucker Taft
@ 1999-01-28  0:00       ` robert_dewar
  1999-01-29  0:00       ` Nick Roberts
  1 sibling, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-01-28  0:00 UTC (permalink / raw)


In article <F696u2.Cp.0.-s@inmet.camb.inmet.com>,
  stt@houdini.camb.inmet.com (Tucker Taft) wrote:

> The whole fixed-point multiplication model is pretty
> obscure, unfortunately.

I agree with Tuck's analysis in its entirety. Note that
the model may be a bit obscure, but the normal practice
of qualifying intermediate results returned by
multiplication using an explicit conversion removes
this obscurity.

I actually find the implicit use of Duration MOST
unfortunate. GNAT finds it worrying enough to emit a
warning:

  1. procedure Tf is
  2.     D : Duration := 5.0;
  3.     Dec_Delt : Integer := Integer (D * 10.0 + 0.5)
                                                 |
   >>> warning: Universal-fixed expression interpreted as
       type "Standard.Duration"

  4. begin
  5.    null;
  6. end;

Since it really seems strange to have Duration creeping
in here. Note that this is NOT related to the declaration
of D as being of type Duration, it would happen if D were
of some other fixed point type, as long as it was not a
visible type at the point of the expression.

If two fixed-point types *are* visible, then GNAT says

  1. procedure Tf2 is
  2.     type r is delta 1.0 range -10.0 .. +10.0;
  3.     D : r := 5.0;
  4.     Dec_Delt : Integer := Integer (D * 10.0 + 0.5);
                                                 |
     >>> ambiguous universal_fixed_expression
     >>> possible interpretation as type Standard.Duration"
     >>> possible interpretation as type "r" defined at
         line 2

     5. begin
     6.    null;
     7. end;

It could still confuse a beginner :-) but it is hard to
see how one can do better error-message wise!


-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-28  0:00     ` Tucker Taft
  1999-01-28  0:00       ` robert_dewar
@ 1999-01-29  0:00       ` Nick Roberts
  1999-01-29  0:00         ` Tucker Taft
  1 sibling, 1 reply; 59+ messages in thread
From: Nick Roberts @ 1999-01-29  0:00 UTC (permalink / raw)


Tucker Taft wrote in message ...
[...]
|: ... The D*10.0 does resolve as Tucker says, giving a universal_fixed. The
0.5
|: literal is a universal_real. Thus adding them gives us the pattern
|: "+"(universal_fixed,universal_real) return unknown. However, it is the
rule
|: in RM 8.6 [29,30] preferring root types that allows this to be resolved
into
|: the pattern "+"(root_real,root_real) return root_real implied by RM 4.5.3
|: [2]. So the expression D*10.0+0.5 returns a value of type root_real,
which
|: can then be converted to an integer and assigned to Dec_Delt.
|
|Sorry, but you are wrong.  Universal_fixed is *not* implicitly convertible
|to root_real.

Tucker is, of course, quite right. My slip.

|It is implicitly convertible to any *fixed point* type,
|and to universal_real (because any real type is implicitly convertible
|both *to* and *from* universal real), but *not* to root_real (I realize
|only a died-in-the-wool language lawyer will believe this reasoning).


|: However, the expression Integer(D*10.0+0.5) causes a root_real addition
and
|: conversion to integer to be executed dynamically.
|
|No, this expression uses Duration's "+", because this is effectively
|equivalent to:
|   Integer(Duration(D*10.0)+Duration(0.5))


I am not arguing with this, but which rule (or rules) in the RM specify the
above interpretation, please? I've searched and searched (even the AI95s)!
(Then again, I reckon my brain must be coming up for it's 20,000 mile
service anyway ;-)

|The whole fixed-point multiplication model is pretty obscure,
unfortunately.


But then I would say that, in general, the RM95 does an amazingly good job
of pinning down a slippery monster. I hope I haven't added to the confusion
too much :-(

Just off for a slice of humble pie. Tuck remains champ :-)
-------------------------------------------
Nick Roberts
-------------------------------------------







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-29  0:00       ` Nick Roberts
@ 1999-01-29  0:00         ` Tucker Taft
  1999-01-29  0:00           ` Nick Roberts
  0 siblings, 1 reply; 59+ messages in thread
From: Tucker Taft @ 1999-01-29  0:00 UTC (permalink / raw)


Nick Roberts (Nick.Roberts@dial.pipex.com) wrote:

: |... [ Integer(D*10.0 + 0.5) ] is effectively equivalent to:
: |   Integer(Duration(D*10.0)+Duration(0.5))


: I am not arguing with this, but which rule (or rules) in the RM specify the
: above interpretation, please? I've searched and searched (even the AI95s)!
: (Then again, I reckon my brain must be coming up for it's 20,000 mile
: service anyway ;-)

  RM95 3.4.1(6-7) introduces the universal numeric types.

  RM95 4.2(8) says that a real literal is of type universal-real.

  RM95 4.5.5(18) defines the multiplication operator:

    univ-fixed * univ-fixed => univ-fixed 

  RM95 8.6(21) indicates that any fixed-point type is acceptable
  when the expected type is universal-fixed, as is any universal
  type that "covers" universal-fixed (e.g. universal-real)
  (i.e., any fixed-point type is implicitly convertible to
  universal-fixed, as is universal-real).

  RM95 8.6(24) indicates that universal fixed is acceptable
  when the expected type is any specific fixed-point type 
  (i.e., universal fixed is implicitly convertible to any
  fixed-point type).

  RM95 8.6(28) indicates that if there is exactly one acceptable
  interpretation for a complete context, then that one is chosen.

There is only one directly visible "*" operator which can "accept"
one operand of type Duration (D), and one univeral-real operand (10.0):
univ-fixed * univ-fixed => univ-fixed.

There is also only one directly visible "+" operator which can "accept"
one universal-fixed operand (D*10.0) and one universal-real operand
(the literal 0.5): Duration + Duration => Duration.

Hence, the only acceptable interpretation is the one which
is effectively equivalent to: 

    Integer(Duration(D*10.0) + Duration(0.5))

Q.E.D. (I hope ;-).

: -------------------------------------------
: Nick Roberts
: -------------------------------------------

--
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-29  0:00         ` Tucker Taft
@ 1999-01-29  0:00           ` Nick Roberts
  1999-01-29  0:00             ` Tucker Taft
  1999-01-30  0:00             ` Fixed point multiplication ambiguity robert_dewar
  0 siblings, 2 replies; 59+ messages in thread
From: Nick Roberts @ 1999-01-29  0:00 UTC (permalink / raw)


I am much chuffed by your time and effort in replying Tuck. Big big thanks.

The wording I was missing out on was "For a complete context" (RM 8.6 [31],
the 'context' being defined by RM 8.6 [4]). Now it all fits into place (and
you can actually _see_ the steam coming off the top of my head ;-).

What this means is that a compiler _deeply searches_ a complete context for
a single, unambiguous, interpretation: in this case, the one with all
Durations. I was simply assuming that Ada wouldn't be designed this way (I
wouldn't have :-).

Why? Because it means that the search space could, theoretically, end up
getting rather big. But, of course, in practice, it's very unlikely to get
_too_ big (especially considering the big search spaces modern compilers
cover in the name of optimisation). It also means that sometimes an
interpretation will be 'non-obvious' to someone reading the code. But that's
the way it is. Maybe a change needed for Ada 200X?

Okay, I'm a cheeky so-and-so (you may have noticed), so my next question is:
do you recommend I try developing 'tree pruning' techniques to cut down the
search space (searching for interpretations), or just search it all 'brute
force'?

Again, thanks.

-------------------------------------------
Nick Roberts
-------------------------------------------







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-29  0:00           ` Nick Roberts
@ 1999-01-29  0:00             ` Tucker Taft
  1999-02-01  0:00               ` Robert I. Eachus
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
  1999-01-30  0:00             ` Fixed point multiplication ambiguity robert_dewar
  1 sibling, 2 replies; 59+ messages in thread
From: Tucker Taft @ 1999-01-29  0:00 UTC (permalink / raw)


Nick Roberts (Nick.Roberts@dial.pipex.com) wrote:

: ...
: What this means is that a compiler _deeply searches_ a complete context for
: a single, unambiguous, interpretation: in this case, the one with all
: Durations. I was simply assuming that Ada wouldn't be designed this way (I
: wouldn't have :-).

It doesn't actually need to search that far.  For example, in a
case like this, it is only concerned with directly visible
operators, and that is a pretty well-defined set.  The thing
which makes it a bit more complicated in many Ada compilers is
that all the predefined operators are not really inserted into the symbol
table, but instead "spring" into existence when referenced.

The one place where things can get truly exponential is in the
following:

    (a,b) & (c,d) & (e,f) & (g,h) & ...

The compiler is not "allowed" to look inside the aggregates until
it has determined what composite type each must be, by using context.
Because there are 4 predefined "&" operators for every array type,
and in the case of an array-of-composite, you could legitimately
use all 4 different operators in a single expression like the above,
some sort of tree-pruning is necessary.

As a little anecdote here, we had one user who rather than simply writing
a large aggregate as:

    (a,b,c,d,
     e,f,g,h,
     i,j,k,l, ... [for several pages]

They instead chose to write it as:

    (a,b,c,d) &
    (e,f,g,h) &
    (i,j,k,l) & ... [for several pages]

It blew out several gourds...

In all other cases, a "straightforward" (yeah, right) bottom-up
enumeration of all possibilities, with removal of illegal combinations 
on the way up, is generally efficient enough.

: Why? Because it means that the search space could, theoretically, end up
: getting rather big. But, of course, in practice, it's very unlikely to get
: _too_ big (especially considering the big search spaces modern compilers
: cover in the name of optimisation). It also means that sometimes an
: interpretation will be 'non-obvious' to someone reading the code. But that's
: the way it is. Maybe a change needed for Ada 200X?

I could see some change in the handling of fixed-point multiplication
in Ada 200X.  It has been a source of incompatibilities and surprises.
Other than that, though, any significant change to the overload
resolution rules is *extremely* unlikely in my view.

: Okay, I'm a cheeky so-and-so (you may have noticed), so my next question is:
: do you recommend I try developing 'tree pruning' techniques to cut down the
: search space (searching for interpretations), or just search it all 'brute
: force'?

Are you building an Ada compiler?  If so, I would suggest investing
in head examination techniques ;-).

: Again, thanks.

: -------------------------------------------
: Nick Roberts
: -------------------------------------------

-Tuck

--
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-29  0:00           ` Nick Roberts
  1999-01-29  0:00             ` Tucker Taft
@ 1999-01-30  0:00             ` robert_dewar
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
  1 sibling, 1 reply; 59+ messages in thread
From: robert_dewar @ 1999-01-30  0:00 UTC (permalink / raw)


In article <78sojm$crk$1@plug.news.pipex.net>,
  "Nick Roberts" <Nick.Roberts@dial.pipex.com> wrote:
> Okay, I'm a cheeky so-and-so (you may have noticed), so
> my next question is: do you recommend I try developing
> 'tree pruning' techniques to cut down the
> search space (searching for interpretations), or just
> search it all 'brute force'?

What problem are you trying to solve, I don't see any
problem in implementing the proper semantics here!

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Fixed point multiplication ambiguity
  1999-01-29  0:00             ` Tucker Taft
@ 1999-02-01  0:00               ` Robert I. Eachus
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
  1 sibling, 0 replies; 59+ messages in thread
From: Robert I. Eachus @ 1999-02-01  0:00 UTC (permalink / raw)


In article <F6BzAA.KKI.0.-s@inmet.camb.inmet.com> stt@houdini.camb.inmet.com (Tucker Taft) writes:

 > I could see some change in the handling of fixed-point multiplication
 > in Ada 200X.  It has been a source of incompatibilities and surprises.
 > Other than that, though, any significant change to the overload
 > resolution rules is *extremely* unlikely in my view.

   Note that putting some other visible fixed-point type in Standard
would fix the most surprising case discussed above.  It would never be
possible then for Duration to appear out of the blue.
--

					Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-01-29  0:00             ` Tucker Taft
  1999-02-01  0:00               ` Robert I. Eachus
@ 1999-02-02  0:00               ` Nick Roberts
  1999-02-03  0:00                 ` Chris Morgan
  1999-02-03  0:00                 ` Building a compiler (was: Fixed point multiplication ambiguity) dennison
  1 sibling, 2 replies; 59+ messages in thread
From: Nick Roberts @ 1999-02-02  0:00 UTC (permalink / raw)


Tucker Taft wrote in message ...
|Are you building an Ada compiler?  If so, I would suggest investing
|in head examination techniques ;-).


Yes (he admits sheepishly). And yes, agreed.

But ... people have the strangest passions (climbing mountains, leaping out
of aircraft, standing for presidential election), and mine happens to be
building an Ada compiler. It's a bit like sex: if nobody did it, there would
be no more people! Well, somebody's got to build Ada compilers: if nobody
did it, there would be no Ada compilers.

Still munching on my Muchnick :-)

-------------------------------------------
Nick Roberts
-------------------------------------------







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-01-30  0:00             ` Fixed point multiplication ambiguity robert_dewar
@ 1999-02-02  0:00               ` Nick Roberts
  1999-02-03  0:00                 ` Tucker Taft
  1999-02-03  0:00                 ` robert_dewar
  0 siblings, 2 replies; 59+ messages in thread
From: Nick Roberts @ 1999-02-02  0:00 UTC (permalink / raw)


It's not a problem of semantics, but of compiler speed. Users are tolerant,
but they don't like it when the compiler hasn't finished by the time they've
got back from the loo ;-)

There will be some (rare) examples of code where searching a context for
valid interpretations will have to cover a very large number of possible
interpretations (the 'search space'). This could take a long time, and
disappoint the user as suggested above.

You could, of course, say to the user "don't use such weird code", but then
the user could always say "no, I'll just use somebody else's compiler!" :-)

Nick

robert_dewar@my-dejanews.com wrote in message
<78tlmt$jte$1@nnrp1.dejanews.com>...
[...]
|What problem are you trying to solve, I don't see any
|problem in implementing the proper semantics here!







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
@ 1999-02-03  0:00                 ` Tucker Taft
  1999-02-03  0:00                 ` robert_dewar
  1 sibling, 0 replies; 59+ messages in thread
From: Tucker Taft @ 1999-02-03  0:00 UTC (permalink / raw)


Nick Roberts (Nick.Roberts@dial.pipex.com) wrote:

: It's not a problem of semantics, but of compiler speed. Users are tolerant,
: but they don't like it when the compiler hasn't finished by the time they've
: got back from the loo ;-)

Overload resolution almost certainly takes a miniscule proportion of
compile time on any "real" program.  Most lines have no overloading
at all.

As I mentioned, the only time I have ever seen it take a 
measurable amount of time was on that amazingly long concatenation of 
aggregates.  So that case may be worth thinking about a bit, but for 
the others, the key is to keep the overload resolution algorithm as simple
and understandable as possible.  Chances are, unfortunately, that
"as understandable as possible" won't be very understandable ;-).
Especially if you try to keep predefined operators out of the
symbol table...

: ...
: Nick

-Tuck
--
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
  1999-02-03  0:00                 ` Tucker Taft
@ 1999-02-03  0:00                 ` robert_dewar
  1 sibling, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-02-03  0:00 UTC (permalink / raw)


In article <7982p8$nll$2@plug.news.pipex.net>,
  "Nick Roberts" <Nick.Roberts@dial.pipex.com> wrote:
> It's not a problem of semantics, but of compiler speed.
> Users are tolerant,
> but they don't like it when the compiler hasn't finished
> by the time they've
> got back from the loo ;-)
>
> There will be some (rare) examples of code where
> searching a context for
> valid interpretations will have to cover a very large
> number of possible
> interpretations (the 'search space'). This could take a
> long time, and
> disappoint the user as suggested above.

Such claims are totally unconvincing without evidence that
the search in question could take a noticable fraction of
the total compilation time. I don't believe for a moment
that it could, and certainly obvious tests confirm this!

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
  1999-02-03  0:00                 ` Chris Morgan
@ 1999-02-03  0:00                 ` dennison
  1 sibling, 0 replies; 59+ messages in thread
From: dennison @ 1999-02-03  0:00 UTC (permalink / raw)


In article <7982p7$nll$1@plug.news.pipex.net>,
  "Nick Roberts" <Nick.Roberts@dial.pipex.com> wrote:
> Tucker Taft wrote in message ...
> |Are you building an Ada compiler?  If so, I would suggest investing
> |in head examination techniques ;-).
>
> Yes (he admits sheepishly). And yes, agreed.
>
> But ... people have the strangest passions (climbing mountains, leaping out
> of aircraft, standing for presidential election), and mine happens to be
> building an Ada compiler. It's a bit like sex: if nobody did it, there would
> be no more people! Well, somebody's got to build Ada compilers: if nobody
> did it, there would be no Ada compilers.

Hmmm. You must have the same kind of pathology as the retiree who decided to
singlhandedly build a four-lane highway from South Bend, IN to Indianapolis...

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
@ 1999-02-03  0:00                 ` Chris Morgan
  1999-02-04  0:00                   ` robert_dewar
  1999-02-05  0:00                   ` Building a compiler Nick Roberts
  1999-02-03  0:00                 ` Building a compiler (was: Fixed point multiplication ambiguity) dennison
  1 sibling, 2 replies; 59+ messages in thread
From: Chris Morgan @ 1999-02-03  0:00 UTC (permalink / raw)


"Nick Roberts" <Nick.Roberts@dial.pipex.com> writes:

> But ... people have the strangest passions (climbing mountains, leaping out
> of aircraft, standing for presidential election), and mine happens to be
> building an Ada compiler. It's a bit like sex: if nobody did it, there would
> be no more people! Well, somebody's got to build Ada compilers: if nobody
> did it, there would be no Ada compilers.

Presumably there are some "itches" in the design of GNAT/GCC that you
would like to scratch by building your own alternative. I have to
wonder though whether you wouldn't get more satisfaction out of
building extended versions of GNAT. There have been some discussions
of language extensions on this group, including one for which Tucker
Taft eventually gave the most popular new syntax.

I am reminded of some code I once tried to rewrite at a Wall St
firm. It was so horrible to read I thought I would replace it with
clean code, but the more I coded, the more I understood the old
horrible stuff, and eventually I saw the fix was 5 lines long (with
one cheat) and I had more confidence in those 5 lines than a new
implementation (given that there was some interaction with other bad
code). [Aside : Of course that did no favours to the next poor chap to
look at the code, but that's the way that firm works, anyway it was
C++.]

Still, if you want to try, it's a worthy challenge, let us know when
your parser runs faster than GNAT's ;) I once thought about it myself
but I decided my interest lay in how correct code is translated
(implementation of language constructs) whereas real compilers have to
do a lot of drudgery handling all those pesky user errors.

Chris
-- 
Chris Morgan <mihalis at ix.netcom.com                http://mihalis.net




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-03  0:00                 ` Chris Morgan
@ 1999-02-04  0:00                   ` robert_dewar
  1999-02-04  0:00                     ` Garbage collection - was " news.oxy.com
  1999-02-05  0:00                     ` GC+HC for GNAT/GCC (was: Building a compiler) Nick Roberts
  1999-02-05  0:00                   ` Building a compiler Nick Roberts
  1 sibling, 2 replies; 59+ messages in thread
From: robert_dewar @ 1999-02-04  0:00 UTC (permalink / raw)


A very nice project would be to try to add full garbage
collection to GNAT ....

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-04  0:00                   ` robert_dewar
@ 1999-02-04  0:00                     ` news.oxy.com
  1999-02-04  0:00                       ` robert_dewar
  1999-02-05  0:00                     ` GC+HC for GNAT/GCC (was: Building a compiler) Nick Roberts
  1 sibling, 1 reply; 59+ messages in thread
From: news.oxy.com @ 1999-02-04  0:00 UTC (permalink / raw)



robert_dewar@my-dejanews.com wrote in message
<79asc3$cq3$1@nnrp1.dejanews.com>...
>A very nice project would be to try to add full garbage
>collection to GNAT ....


Yes ,

No doubt, a lot of people using GNAT would be very happy as it would save
them a lot of time for doing their own programming instead of inventing
their own garbage collection methods.

LRM says:
27 Implementations are permitted, but not required, to provide garbage
collection (see 13.11.3).

Probably it is right  time for that.
Moreover, any Ada implementation targeted for Java code generation should
probably have this facility.


Regards,
Vladimir Olensky
(vladimir_olensky@yahoo.com)
(Vladimir_Olensky@oxy.com)
Telecommunications specialist,
Occidental C.I.S. Service, Inc. ( www.oxy.com )
Moscow,
Russia.









^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-04  0:00                     ` Garbage collection - was " news.oxy.com
@ 1999-02-04  0:00                       ` robert_dewar
  1999-02-05  0:00                         ` David Botton
                                           ` (2 more replies)
  0 siblings, 3 replies; 59+ messages in thread
From: robert_dewar @ 1999-02-04  0:00 UTC (permalink / raw)


In article <79c2ch$j1c$1@remarQ.com>,
  "news.oxy.com" <Vladimir_Olensky@oxy.com> wrote:
> No doubt, a lot of people using GNAT would be very happy
> as it would save them a lot of time for doing their own
> programming instead of inventing their own garbage
> collection methods.

So, Vladimir, put all the effort you put into writing
posts to CLA into learning how to do this, and get busy.
That's the *real* way to help Ada :-)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler
  1999-02-03  0:00                 ` Chris Morgan
  1999-02-04  0:00                   ` robert_dewar
@ 1999-02-05  0:00                   ` Nick Roberts
  1999-02-05  0:00                     ` Tucker Taft
  1 sibling, 1 reply; 59+ messages in thread
From: Nick Roberts @ 1999-02-05  0:00 UTC (permalink / raw)


Chris Morgan wrote in message <87aeyv4kbg.fsf@mihalis.ix.netcom.com>...
[...]
|Presumably there are some "itches" in the design of GNAT/GCC that you
|would like to scratch by building your own alternative.

Interestingly, the "itches" you (very astutely) presume I wish to scratch
are not in GNAT/GCC - which I am only passingly familiar with - but were in
other, much older, Ada compilers I have used in my career.

These compilers were very intimately bound up with the execution
environments they targetted (essentially for real-time embedded
applications, albeit huge ones). The story is a familiar one: I had lots of
ideas as to how it could be improved, but, of course, no power at the time
to introduce any of my ideas.

So, the gist of it is, I am not only writing an entire new Ada compiler, but
I'm also writing a new operating system (a very small one) as well!
Together, these two will scratch most of my itches. The OS is a bit
Mach-like, but fully object-oriented, and introduces some interesting new
ideas. One of the key objectives of the OS is the use of memory-mapped,
fully-linked, object files for maximum program initiation speed. The general
theme of the compiler and the OS will be "speed to the max".

|There have been some discussions
|of language extensions on this group, including one for which Tucker
|Taft eventually gave the most popular new syntax.


Do you mean the "raise ... when" contruct? I'll be happy to include this
(certainly a handy addition). But, then, I'll have to include a flag to
reject it :-( ;-)


|I have to
|wonder though whether you wouldn't get more satisfaction out of
|building extended versions of GNAT.
[...anecdote...]
|Still, if you want to try, it's a worthy challenge, let us know when
|your parser runs faster than GNAT's ;)

I imagine my compiler will always run a lot slower than GNAT/GCC. I am
writing both the 'front end' (parser) and 'back end' in Prolog.

As the compiler is going to be a deeply optimising one, the use of a 5GL
such as Prolog is likely to be fairly essential. At the risk of sounding
(extremely) snooty, constructing/extending such a compiler out of Ada and C
(as I assume - correct me if I'm wrong - GNAT and GCC are respectively
written in) would be a bit too clumsy to be practical. I'm willing to listen
to arguments about this point of view.

Yes, I'm writing the Prolog (semi-)compiler, too. There is really no limit
to my madness!

Whatever I produce, and whenever I produce it, I intend to publish as 'open
source'. I'll keep you posted.

-------------------------------------------
Nick Roberts
-------------------------------------------







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: GC+HC for GNAT/GCC (was: Building a compiler)
  1999-02-04  0:00                   ` robert_dewar
  1999-02-04  0:00                     ` Garbage collection - was " news.oxy.com
@ 1999-02-05  0:00                     ` Nick Roberts
       [not found]                       ` <m33e4jvs1n.fsf@muc.de>
  1 sibling, 1 reply; 59+ messages in thread
From: Nick Roberts @ 1999-02-05  0:00 UTC (permalink / raw)


robert_dewar@my-dejanews.com wrote in message
<79asc3$cq3$1@nnrp1.dejanews.com>...
|A very nice project would be to try to add full garbage
|collection to GNAT ....


Now _there's_ a challenge!

Actually, I'd be really surprised if someone hasn't already done this.
Still, I'm quite happy to throw in a contribution if it would be genuinely
useful.

First, let's be clear about what we are talking about. By "full garbage
collection", I assume Robert means both 'garbage collection' (i.e.
recognising which allocated objects are no longer accessible), and 'heap
compaction' (i.e. moving allocated objects so as to remove unused fragments
from their pool).

There are several possible combinations of schemes, all with their own
peculiar merits and problems, so I would suggest that a wide selection be
provided (as different pool types).

It should be understood that all of these schemes would have various
ramifications for both the GNAT front-end intermediate code emitter, as well
as for the GCC back-end object code emitter. Locking variations would
require a special machine instruction (different for each target
architecture).

It would probably be sensible for someone familiar with GNAT and GCC to help
me to 'splice' my code into GNAT and GCC. Any volunteers?

Finally, a quote:

"Machines with so-called 'virtual storage' may give the compiler writer a
large number of logically separate segments of storage, all of which can be
of effectively boundless size. The catch is that if storage is used as if it
were boundless, the time taken to run programs will be equally boundless.
Thus, irrespective of whether virtual storage is available, you do well to
be miserly with your storage." -- P.J.Brown, "Writing Interactive Compilers
and Interpreters", Wiley 1979 [written in the days of MULTICS: for "number
of logically separate segments" substitute "linear address space"]

And another:

"Garbage collection is a feature of the run-time support for some imperative
languages (such as Ada) ..."
-- David A. Watt "Programming Language Processors", Prentice Hall 1993

In practice, full GC isn't a feature of Ada - but I reckon it should be (at
least as an option). So, like Captain Picard, let's "make it so"!

Nick Roberts







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler
  1999-02-05  0:00                   ` Building a compiler Nick Roberts
@ 1999-02-05  0:00                     ` Tucker Taft
  1999-02-06  0:00                       ` Nick Roberts
  0 siblings, 1 reply; 59+ messages in thread
From: Tucker Taft @ 1999-02-05  0:00 UTC (permalink / raw)


Nick Roberts wrote:

> Whatever I produce, and whenever I produce it, I intend to publish as 'open
> source'. I'll keep you posted.

Given your rather impressive list of goals, you might want to
start by addressing Ada's Y2.1K issue, just in case your schedule
slips a bit ;-).

> -------------------------------------------
> Nick Roberts
> -------------------------------------------

-Tuck
-- 
-Tucker Taft   stt@averstar.com   http://www.averstar.com/~stt/
Technical Director, Distributed IT Solutions  (www.averstar.com/tools)
AverStar (formerly Intermetrics, Inc.)   Burlington, MA  USA




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-04  0:00                       ` robert_dewar
@ 1999-02-05  0:00                         ` David Botton
  1999-02-05  0:00                         ` Tom Moran
  1999-02-18  0:00                         ` news.oxy.com
  2 siblings, 0 replies; 59+ messages in thread
From: David Botton @ 1999-02-05  0:00 UTC (permalink / raw)


Bravo.

> So, Vladimir, put all the effort you put into writing
> posts to CLA into learning how to do this, and get busy.
> That's the *real* way to help Ada :-)





^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-04  0:00                       ` robert_dewar
  1999-02-05  0:00                         ` David Botton
@ 1999-02-05  0:00                         ` Tom Moran
  1999-02-18  0:00                         ` news.oxy.com
  2 siblings, 0 replies; 59+ messages in thread
From: Tom Moran @ 1999-02-05  0:00 UTC (permalink / raw)


>So, Vladimir, put all the effort you put into writing
>posts to CLA into learning how to do this, and get busy.
>That's the *real* way to help Ada :-)
 The Ada boat needs both oarsmen and navigators.




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Building a compiler
  1999-02-05  0:00                     ` Tucker Taft
@ 1999-02-06  0:00                       ` Nick Roberts
  0 siblings, 0 replies; 59+ messages in thread
From: Nick Roberts @ 1999-02-06  0:00 UTC (permalink / raw)


I'd be well chuffed to live that long Tuck!

Still, medical technology moves on - you never know. I can see it now:
everyone celebrating the new year 2100; somebody pushes a drink into the
hand of some ancient old codger, who's still crouched in front of his
ancient computer screen and keyboard (when by now all computers are voice
only). Somebody whispers a question: "What is he doing?" Somebody whispers a
reply: "Same as he has for the last century, _still_ trying to write his own
compiler". There's a short silence, then: "What's a 'compiler'?" Nobody
knows.

You never know ;-)

Nick

Tucker Taft wrote in message <36BB3637.DEA2DECD@averstar.com>...
[...]
|Given your rather impressive list of goals, you might want to
|start by addressing Ada's Y2.1K issue, just in case your schedule
|slips a bit ;-).







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: GC+FSD for GNAT/GCC
       [not found]                       ` <m33e4jvs1n.fsf@muc.de>
@ 1999-02-06  0:00                         ` Nick Roberts
  1999-02-07  0:00                           ` robert_dewar
  0 siblings, 1 reply; 59+ messages in thread
From: Nick Roberts @ 1999-02-06  0:00 UTC (permalink / raw)


Andi Kleen wrote in message ...
[...]
|I wonder how hard it would be to put a "malloc()" plugin compatible
conservative
|GC like the Boehm GC into the GNAT run time library. As far as I can see
|GNAT uses a wrapper around the C Library's malloc function for its memory
|allocation needs. What would happen if I linked it with a GC malloc
library?


This strategy alone couldn't perform heap compaction - I'm going to call it
'free space defragmentation' (FSD) from now on (if nobody minds) - only GC,
and even then there are better ways (I think) of providing the GC. Without
FSD, however, you inevitably get creeping fragmentation (unless all blocks
allocated in the pool are the same size). I doubt that a GC scheme which
does not deal with fragmentation is of much value, in reality, but I would
welcome comments on this.

One kind of 'mark-sweep' scheme I am envisioning at this stage has the
following broad design.

The compiler (I'm not sure whether the front or back end) generates a piece
of constant data which encodes the locations of all access objects within
each record and array type, and of all access objects, and access
component-containing records and arrays, within each stack-frame. This data
is called the 'crib'.

The pool type's implementation can then use this crib to 'sweep' over all
access objects (including all those in the pool itself), 'marking' all
allocated objects which are still accessed (thus finding out all which are
not accessed, so performing GC), and then to sweep again, adjusting the
access values (or their data-pointers) as required (as a part of FSD).
Finally, the extant objects are shuffled into their new positions
(completing the FSD).

This is a non-locking scheme. The user (Ada programmer) must ensure that the
execution of a block which contains code that uses a pool (managed by this
scheme) in one task will never overlap with the execution of a block which
contains code that uses the same pool in another task. (If this cannot be
arranged, a locking scheme must be selected instead.) The most common case
will be where the pool is only ever used in one task (indeed, frequently in
a program which only has one task).

The compiler must generate code such that: no access object is in a
temporary location whenever an allocator or deallocator (of a managed pool)
is called; for every access object whose value is put into a temporary
location within a certain block, the value is written back into the
non-temporary location before the end of that block.

There are some details of this scheme I haven't quite sorted out yet (it's
quite complicated), but nothing major (with luck).

It is important to realise that this is just one scheme (albeit the most
important one, I think). I believe a variety of schemes -
locking/non-locking, mark-sweep/reference counter,
crib-reiteration/double-indirection/ring-of-pointers - will have to be
supplied.

Comments?

-------------------------------------------
Nick Roberts
-------------------------------------------

PS: I think the __GNAT_malloc() and __GNAT_free() routines would remain
unchanged, the entire GC+FSD stuff being managed at a higher level.








^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: GC+FSD for GNAT/GCC
  1999-02-06  0:00                         ` GC+FSD for GNAT/GCC Nick Roberts
@ 1999-02-07  0:00                           ` robert_dewar
  0 siblings, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-02-07  0:00 UTC (permalink / raw)


In article <79hsmq$jhv$1@plug.news.pipex.net>,
  "Nick Roberts" <Nick.Roberts@dial.pipex.com> wrote:
> One kind of 'mark-sweep' scheme I am envisioning at this
> stage has the following broad design.

Just make sure you look at the literature here, the problem
is very well understood at this stage (indeed most of the
important work was done in connection with languages like
Algol-68, SNOBOL4, and LISP2 a long time ago!)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point  multiplication ambiguity)
  1999-02-18  0:00                         ` news.oxy.com
@ 1999-02-18  0:00                           ` David Botton
  1999-02-18  0:00                           ` dewar
                                             ` (4 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: David Botton @ 1999-02-18  0:00 UTC (permalink / raw)


I would be happy to post the source code of your "small experiment" on The Ada
Source Code Treasury - http://www.botton.com/ada. Despite the fact that Dr.
Dewar doesn't exactly have the best on-line people personality, he has also
contributed his hard work and time to producing GNAT and making /keeping it
public.

David Botton


>
> As far as garbage collection concerned   Mr. Devar probably did not read my
> other message posted yearlier than mentioned at the top that I've already
> did it for myself (as a small experiment).
>







^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-18  0:00                         ` news.oxy.com
  1999-02-18  0:00                           ` David Botton
@ 1999-02-18  0:00                           ` dewar
  1999-02-18  0:00                           ` AdaHag
                                             ` (3 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: dewar @ 1999-02-18  0:00 UTC (permalink / raw)


In article <7ah65p$4ag$1@remarQ.com>,
  "news.oxy.com" <Vladimir_Olensky@oxy.com> wrote:

> Expected and well understood answer would be: " We are
> glad to make Ada users more happy and we will do whatever
> we can to make this happen. We have such and such plans
> for future and we will do our best  to put then into
> existence as soon as possible. Please tell us more about
> your needs and you will see them implemented in our
> compiler/tools "

That is of course our attitude to our customers, and indeed
our customers are not shy about telling us what they would
like to see, and as you can see from the features list, we
continue to make major additions to GNAT.

Unfortunately, none of our customers has any interest in
garbage collection, so that is nowhere on our radar screen
for possible future enhancements (except of course in
JGNAT, where it is standard).

It is precisely this kind of feature which would be nice to
have, but which no paying customers are interested in, that
is a good target for volunteers to implement, and there
have been some such efforts in the past (most notably the
DOS port of GNAT).

You may argue that we should put in garbage collection
because it would gain customers, but our market analysis
which I suspect is in a bit better position than you to
guess right here says that this simply is not a critical
feature to the Ada community. The fact that every other
Ada vendor has made the same decision is indicative that
this judgment is correct.

> Here I would also remind Mr. Devar reply to my remark
> concerning GLADE distribution with GNAT 3.11 for Windows
> NT/95/98. It tells about the same:-"go off and do it
> yourself and do not bother us anymore".

Well here you are asking us to invest effort in a
particular area which for the moment we choose not to.
Again, we do not think this is a critical market
requirement. Especially because lots of people have
managed to do this on their own perfectly fine (we somewhat
feel that anyone who cannot build GLADE is unlikely to be
able to use it effectively in practice). We may build a
binary release of GLADE in the future, but we have no plans
to do it right now.
>
> As far as garbage collection concerned   Mr. Devar
> probably did not read my other message posted yearlier
> than mentioned at the top that I've already did it for
> myself (as a small experiment).

It is of course trivial to implement conservative garbage
collection, and any number of the commercial tools in this
area work fine with GNAT. That is of course a given, but
that is not what I was talking about, I was talking about
implementing full, accurate, compacting garbage collection
of the type expected in an Algol-68 compiler. That's a big
project, probably several person months from someone who
knows what they are doing, longer for someone who has to
learn.

Once again, Vladimir, it seems a pity that you don't put
all this energy into actually achieving something useful
in the Ada field, there certainly are lots of useful things
that can be done. We do a lot of development work, and
every new version of GNAT contains many new features
(basically the features that we and our serious users
consider the most important), but we can't do everything.
The point of opening sources is to encourage others to
help. You have all the raw materials to do lots of
interesting development, why not try it!

Robert Dewar
Ada Core Technologies

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-04  0:00                       ` robert_dewar
  1999-02-05  0:00                         ` David Botton
  1999-02-05  0:00                         ` Tom Moran
@ 1999-02-18  0:00                         ` news.oxy.com
  1999-02-18  0:00                           ` David Botton
                                             ` (5 more replies)
  2 siblings, 6 replies; 59+ messages in thread
From: news.oxy.com @ 1999-02-18  0:00 UTC (permalink / raw)


robert_dewar@my-dejanews.com wrote in message
<79ckt6$rp3$1@nnrp1.dejanews.com>...

>>> robert_dewar@my-dejanews.com wrote in message
>>>      <79asc3$cq3$1@nnrp1.dejanews.com>...
>>>A very nice project would be to try to add full garbage
>>>collection to GNAT ....

>>In article <79c2ch$j1c$1@remarQ.com>,
>>  "news.oxy.com" <Vladimir_Olensky@oxy.com> wrote:
>> No doubt, a lot of people using GNAT would be very happy
>> as it would save them a lot of time for doing their own
>> programming instead of inventing their own garbage
>> collection methods.
>
>So, Vladimir, put all the effort you put into writing
>posts to CLA into learning how to do this, and get busy.
>That's the *real* way to help Ada :-)



Congratulations Mr. Robert Devar !
Wonderful answer !

It is interesting to know whether your post represents ACT official position
(as an Ada  software company) to the current and potential/future needs of
Ada users or this is something else ?

If this is an official position of ACT then it is very sad for Ada community
and this is shame for ACT. Such position won't attract new people and
organizations to Ada . Just the opposite it may only  divert them from it.

Just imagine - Person representing Ada company in this forum tells that it
would be nice to implement something that exists in LRM but is not still
implemented (because it is not mandatory). Some other person reply that this
would be great and receives the answer saying something like this: " go off,
do it yourself and do not bother us any more ". Such position just kills
Ada. It works as repellent.
I have doubt that after reading such things  anyone new to Ada could
consider it as a valuable choice for doing something serious. Not only
quality of the language itself  has an impact on such decisions but more the
attitude of the software companies that selling Ada compilers, tools and
services.

Expected and well understood answer would be: " We are glad to make Ada
users more happy and we will do whatever we can to make this happen. We have
such and such plans for future and we will do our best  to put then into
existence as soon as possible. Please tell us more about your needs and you
will see them implemented in our compiler/tools "

A lot of bright people outside Ada club have rather negative opinion of Ada
and do not wont to spend their time and efforts in doing anything in Ada.
Small example: I recently asked professor  Douglas C. Schmidt  about his ACE
(Adaptive Communication Environment
http://siesta.cs.wustl.edu/~schmidt/ACE.html  ):
----------------------------------------------------------------------------
----------------------
||>           Are there (or were) any intentions to write it in Ada 95?
||
||   No.
||
||>           Are there any reasons why this can not be done?
||
||  No, other than no one seems very interested in Ada 95 anymore!
----------------------------------------------------------------------------
---------------------------
This is opinion of the professor who is Director of the Center
for Distributed Object Computing in the Department of Computer Science in
Washington University in Saint Louis.
He is very bright person and he has a lot of sponsors from military and
aerospace industry that could be sponsors of ACT as well (provided that ACT
would do  .
Surprisingly http://www.adaresource.org/  has a lot of references to Douglas
C. Schmidt  works and to his ACE and TAO (real-time Corba implementation
based on ACE).

One of the answers to the question why no one seems to be very interested in
Ada anymore lies in Mr. Devar phrase: "go off and do it yourself and do not
bother us anymore".
Here I would also remind Mr. Devar reply to my remark concerning GLADE
distribution with GNAT 3.11 for Windows NT/95/98. It tells about the
same:-"go off and do it yourself and do not bother us anymore".

As far as garbage collection concerned   Mr. Devar probably did not read my
other message posted yearlier than mentioned at the top that I've already
did it for myself (as a small experiment).



Regards,
Vladimir Olensky
(vladimir_olensky@yahoo.com)
(Vladimir_Olensky@oxy.com)
Telecommunications specialist,
Occidental C.I.S. Service, Inc. ( www.oxy.com )
Moscow,
Russia.


P.S. Sorry for being late with the answer. I was out of the loop for some
time busy with the other things.












^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity)
  1999-02-18  0:00                         ` news.oxy.com
  1999-02-18  0:00                           ` David Botton
  1999-02-18  0:00                           ` dewar
@ 1999-02-18  0:00                           ` AdaHag
  1999-02-18  0:00                           ` Garbage collection - was Re: Building a compiler Samuel Mize
                                             ` (2 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: AdaHag @ 1999-02-18  0:00 UTC (permalink / raw)


news.oxy.com wrote:

> Congratulations Mr. Robert Devar !
> Wonderful answer !

> Just imagine - Person representing Ada company in this forum tells that it
> would be nice to implement something that exists in LRM but is not still
> implemented (because it is not mandatory). Some other person reply that this
> would be great and receives the answer saying something like this: " go off,
> do it yourself and do not bother us any more ". Such position just kills
> Ada. It works as repellent.

Right On ! Give it to the "we've discussed this before" "you don't know what 
you're talking about" "hearsay" prick ! ( but I think you'd better batton down
the hatch ... there seems to be a strong brown nosing collective operating on CLA )

> Regards,
> Vladimir Olensky

Anonymous public moral support offered. carry on CLA posting Vladimir.




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler
  1999-02-18  0:00                         ` news.oxy.com
                                             ` (2 preceding siblings ...)
  1999-02-18  0:00                           ` AdaHag
@ 1999-02-18  0:00                           ` Samuel Mize
  1999-02-19  0:00                             ` Samuel Mize
  1999-02-19  0:00                           ` Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity) Steven Hovater
  1999-02-20  0:00                           ` A Modest Defense of ACT (though they are big boys and can take care of themselves) Steve Quinlan
  5 siblings, 1 reply; 59+ messages in thread
From: Samuel Mize @ 1999-02-18  0:00 UTC (permalink / raw)


news.oxy.com <Vladimir_Olensky@oxy.com> wrote:

> robert_dewar@my-dejanews.com wrote in message
...
>>>In article <79c2ch$j1c$1@remarQ.com>,
>>>  "news.oxy.com" <Vladimir_Olensky@oxy.com> wrote:
>>> No doubt, a lot of people using GNAT would be very happy
>>> as it would save them a lot of time for doing their own
>>> programming instead of inventing their own garbage
>>> collection methods.
>>
>>So, Vladimir, put all the effort you put into writing
>>posts to CLA into learning how to do this, and get busy.
>>That's the *real* way to help Ada :-)
...
> It is interesting to know whether your post represents ACT official position
> (as an Ada  software company) to the current and potential/future needs of
> Ada users or this is something else ?
...
[describes Dewar's answer as]
>" go off,
> do it yourself and do not bother us any more ".

Mr. Dewar's writing style is often misunderstood.  He comes across
to some people as being much more sarcastic than he intends to.
I don't think he meant to drive you off.

But he is a little curt on this subject, probably because it's been
discussed here many, many times.  People are always happy to tell ACT
what unfunded project they should do next.  ACT has to focus on the
things that people are willing and able to pay for.

I would say, based on previous c.l.a discussions of garbage collection,
that he meant to say:

- don't go off, come in to the community of GNAT developers (which
  is MUCH larger than ACT).

- don't do it yourself, do it in the company of the other people who
  complain about GNAT not having garbage collection.  Start a project.

- Share it with us and tell us all about it.

> As far as garbage collection concerned   Mr. Devar probably did not read my
> other message posted yearlier than mentioned at the top that I've already
> did it for myself (as a small experiment).

Looks like that message has scrolled off my newsreader.  What kind of
garbage collection did you implement?  Is it integrated with the GNAT
compiler?  Did you post all the details?  Is your code available for
others to use?  Did you submit it to whoever maintains GNAT code?

ACT is hardly the entire Ada community.  You don't need Mr. Dewar's
permission to upgrade the GNAT compiler.

By the way, Mr. Dewar is posting for himself, not as ACT -- I assume
that's one reason he's posting via Deja News.  As such, he's posting
for his own reasons.  I agree, he may not have read your prior post,
and he has no duty to do so.

I'll dig in Deja News and see what you posted earlier.  If you did
implement a garbage collection scheme that would enhance GNAT, there
are a number of people here who would like to share it.

Best,
Sam Mize

-- 
Samuel Mize -- smize@imagin.net (home email) -- Team Ada
Fight Spam: see http://www.cauce.org/ \\\ Smert Spamonam




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler (was: Fixed point  multiplication ambiguity)
  1999-02-18  0:00                         ` news.oxy.com
                                             ` (3 preceding siblings ...)
  1999-02-18  0:00                           ` Garbage collection - was Re: Building a compiler Samuel Mize
@ 1999-02-19  0:00                           ` Steven Hovater
  1999-02-20  0:00                           ` A Modest Defense of ACT (though they are big boys and can take care of themselves) Steve Quinlan
  5 siblings, 0 replies; 59+ messages in thread
From: Steven Hovater @ 1999-02-19  0:00 UTC (permalink / raw)


Vladimir -

Read your comments, and I suppose you have a non-business perspective. Not
being
critical, but it seems one has to weigh every added feature versus the cost in
engineer development
and testing time, and compare that to the business case - if you'll gain
business by adding an
obscure feature, then it might be worth it - but engineer time is precious, and
should be spent where
it'll get the most mileage.

(the above is my personal opinion,  I'm not speaking for Rational.)

Regards,
Steve

"news.oxy.com" wrote:

> robert_dewar@my-dejanews.com wrote in message
> <79ckt6$rp3$1@nnrp1.dejanews.com>...
>
> >>> robert_dewar@my-dejanews.com wrote in message
> >>>      <79asc3$cq3$1@nnrp1.dejanews.com>...
> >>>A very nice project would be to try to add full garbage
> >>>collection to GNAT ....
>
> >>In article <79c2ch$j1c$1@remarQ.com>,
> >>  "news.oxy.com" <Vladimir_Olensky@oxy.com> wrote:
> >> No doubt, a lot of people using GNAT would be very happy
> >> as it would save them a lot of time for doing their own
> >> programming instead of inventing their own garbage
> >> collection methods.
> >
> >So, Vladimir, put all the effort you put into writing
> >posts to CLA into learning how to do this, and get busy.
> >That's the *real* way to help Ada :-)
>
> Congratulations Mr. Robert Devar !
> Wonderful answer !
>
> It is interesting to know whether your post represents ACT official position
> (as an Ada  software company) to the current and potential/future needs of
> Ada users or this is something else ?
>
> If this is an official position of ACT then it is very sad for Ada community
> and this is shame for ACT. Such position won't attract new people and
> organizations to Ada . Just the opposite it may only  divert them from it.
>
> Just imagine - Person representing Ada company in this forum tells that it
> would be nice to implement something that exists in LRM but is not still
> implemented (because it is not mandatory). Some other person reply that this
> would be great and receives the answer saying something like this: " go off,
> do it yourself and do not bother us any more ". Such position just kills
> Ada. It works as repellent.
> I have doubt that after reading such things  anyone new to Ada could
> consider it as a valuable choice for doing something serious. Not only
> quality of the language itself  has an impact on such decisions but more the
> attitude of the software companies that selling Ada compilers, tools and
> services.
>
> Expected and well understood answer would be: " We are glad to make Ada
> users more happy and we will do whatever we can to make this happen. We have
> such and such plans for future and we will do our best  to put then into
> existence as soon as possible. Please tell us more about your needs and you
> will see them implemented in our compiler/tools "
>
> A lot of bright people outside Ada club have rather negative opinion of Ada
> and do not wont to spend their time and efforts in doing anything in Ada.
> Small example: I recently asked professor  Douglas C. Schmidt  about his ACE
> (Adaptive Communication Environment
> http://siesta.cs.wustl.edu/~schmidt/ACE.html  ):
> ----------------------------------------------------------------------------
> ----------------------
> ||>           Are there (or were) any intentions to write it in Ada 95?
> ||
> ||   No.
> ||
> ||>           Are there any reasons why this can not be done?
> ||
> ||  No, other than no one seems very interested in Ada 95 anymore!
> ----------------------------------------------------------------------------
> ---------------------------
> This is opinion of the professor who is Director of the Center
> for Distributed Object Computing in the Department of Computer Science in
> Washington University in Saint Louis.
> He is very bright person and he has a lot of sponsors from military and
> aerospace industry that could be sponsors of ACT as well (provided that ACT
> would do  .
> Surprisingly http://www.adaresource.org/  has a lot of references to Douglas
> C. Schmidt  works and to his ACE and TAO (real-time Corba implementation
> based on ACE).
>
> One of the answers to the question why no one seems to be very interested in
> Ada anymore lies in Mr. Devar phrase: "go off and do it yourself and do not
> bother us anymore".
> Here I would also remind Mr. Devar reply to my remark concerning GLADE
> distribution with GNAT 3.11 for Windows NT/95/98. It tells about the
> same:-"go off and do it yourself and do not bother us anymore".
>
> As far as garbage collection concerned   Mr. Devar probably did not read my
> other message posted yearlier than mentioned at the top that I've already
> did it for myself (as a small experiment).
>
> Regards,
> Vladimir Olensky
> (vladimir_olensky@yahoo.com)
> (Vladimir_Olensky@oxy.com)
> Telecommunications specialist,
> Occidental C.I.S. Service, Inc. ( www.oxy.com )
> Moscow,
> Russia.
>
> P.S. Sorry for being late with the answer. I was out of the loop for some
> time busy with the other things.

--
Steven
Hovater
svh@rational.com
Software Engineering Consultant
Phone/fax:781-676-2565/2500
Rational
Software
Pager: 888-906-2209
83 Hartwell Ave, Lexington, MA
Amateur radio: AA1YH






^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: Garbage collection - was Re: Building a compiler
  1999-02-18  0:00                           ` Garbage collection - was Re: Building a compiler Samuel Mize
@ 1999-02-19  0:00                             ` Samuel Mize
  0 siblings, 0 replies; 59+ messages in thread
From: Samuel Mize @ 1999-02-19  0:00 UTC (permalink / raw)


Samuel Mize <smize@imagin.net> wrote:

> news.oxy.com <Vladimir_Olensky@oxy.com> wrote:
>> As far as garbage collection concerned   Mr. Devar probably did not read my
>> other message posted yearlier than mentioned at the top that I've already
>> did it for myself (as a small experiment).
> 
> Looks like that message has scrolled off my newsreader.  What kind of
> garbage collection did you implement?
...
> I'll dig in Deja News and see what you posted earlier.

OK, I looked it up.  What you say you did was:
> ... I created and tested small top-level package that performs
> user defined garbage collection using controlled access type to the
> controlled class-wide types. This package (just small experiment or
> exercise) proved to be working fine and I an going to use it  later to
> create hierarchy of controlled types with automatic garbage collection.

So, it isn't a general garbage collector integrated into the compiler.
It's a controlled type that cleans itself up -- I assume it's using
reference counting.

That's a useful exercise, and I'd like to see you post the code.

But it's not particularly related to the level of effort it would take
to do a full-up, behind-the-scenes garbage collector integrated into
the compiler.

I'm not aware of a project to develop garbage collection for GNAT --
anybody, is there one going?  ACT isn't planning to do it.  Is the
Ada community going to do it?

Best,
Sam Mize

-- 
Samuel Mize -- smize@imagin.net (home email) -- Team Ada
Fight Spam: see http://www.cauce.org/ \\\ Smert Spamonam




^ permalink raw reply	[flat|nested] 59+ messages in thread

* A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-18  0:00                         ` news.oxy.com
                                             ` (4 preceding siblings ...)
  1999-02-19  0:00                           ` Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity) Steven Hovater
@ 1999-02-20  0:00                           ` Steve Quinlan
  1999-02-21  0:00                             ` dewar
  1999-02-22  0:00                             ` dennison
  5 siblings, 2 replies; 59+ messages in thread
From: Steve Quinlan @ 1999-02-20  0:00 UTC (permalink / raw)


I think it's quite amazing how some people seem to feel that because GNAT is
free, they can insist that ACT add or develop feature x, y or z, because "the
users want it". (ACT probably knows best what GNAT users want -- God knows they
probably have more direct contact with Ada programmers than any other company).
Such people then procede to get mightily and indignantly upset if the response
isn't a nurturing electronic hug and immediate acquiescence to their
suggestions, along with a promised release date!

As a paying customer of ACT (well, I work for a paying customer) I find they are
very responsive. But the free version is a side benefit. They probably, and
rightly, extend and enhance GNAT to provide what their paying customers need.
They just did so for us for a specific feature we wanted.   The rest of the
world benefits when that stuff becomes public.

I believe ACT is happy to listen to suggestions from anyone. Make your
suggestions, make your case to them why it would be valuable, try to enlist
others to your side to support that. ACT will consider it, in the context of
their business needs. But they make the final decision about whether to expend
their finite resources on work which their paying customers  may not be
clamoring for. And no one really has much standing to beat them up for it. How
many other  companies are giving you free Ada compilers? How many other compiler
company presidents are here every day helping out answering questions, etc. If
he didn't care about Ada and its users, he wouldn't spend so much time here
answering our stupid questions, or correcting our stupid answers to other
people's intelligent questions (OK, they're not all stupid -- a bit of
rhetorical hyperbole there.)

                          Steve Quinlan






^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-20  0:00                           ` A Modest Defense of ACT (though they are big boys and can take care of themselves) Steve Quinlan
@ 1999-02-21  0:00                             ` dewar
  1999-02-22  0:00                               ` Matthew Heaney
  1999-02-22  0:00                             ` dennison
  1 sibling, 1 reply; 59+ messages in thread
From: dewar @ 1999-02-21  0:00 UTC (permalink / raw)


In article <36CF00DB.43DF428C@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:
> I think it's quite amazing how some people seem to feel
> that because GNAT is free, they can insist that ACT add
> or develop feature x, y or z, because "the users want
> it". (ACT probably knows best what GNAT users want -- God
> knows they probably have more direct contact with Ada
> programmers than any other company).

Well thanks for that nice note :-). In fact at ACT we
always welcome suggestions, and have implemented many of
them. When it comes to large features, we still welcome
the suggestions, but often are not in a position to follow
through, either because we disagree with them, or because
we don't have the resources.

The boundary between suggest/encourage/insist can sometimes
be ill-defined. Let's think positive and assume that what
seems like inappropriate insistance is simply
over-enthusiasm :-)

> Such people then procede to get mightily and indignantly
> upset if the response isn't a nurturing electronic hug
> and immediate acquiescence to their suggestions, along
> with a promised release date!

Again, let's just put that down to enthusiasm. Certainly
it is nice to see people enthusiastic about Ada, even if
it can come across as upset sometimes.

> As a paying customer of ACT (well, I work for a paying
> customer) I find they are very responsive.

Thankyou for that vote of confidence (now I will have to
rush back to our records and make sure we have no
outstanding reports from you :-)

> But the free version is a side benefit. They probably,
> and rightly, extend and enhance GNAT to provide what
> their paying customers need.

Most of the time, I think the needs of our customers do
reflect the needs of the general market. The one place that
this is called into question is when someone says: "If you
add feature X, you will increase your market, since now
GNAT will be used by people who would not use it
otherwise."

Our experience teaches us to be very sceptical of such
claims. I particularly think it is important not to neglect
the current core Ada users in an attempt to win new
markets. I am reminded of a discussion in my theater group
(*) where we were discussing how to attract new younger
audiences, and someone suddenly wondered how our thoughts
would affect our current audiences, which was a sobering
thought!

> They just did so for us for a specific feature we wanted.
> The rest of the world benefits when that stuff becomes
> public.

Indeed many features in GNAT are there because of direct
customer requirements. Sometimes these are things we have
done as part of general support, sometimes they are funded
as special projects.

I have always thought that the fully supported customers
using GNAT Professional and students, researchers,
hobbyists etc using the public release of GNAT are natural
partners.

The paying customers provide the resources to continue the
development of GNAT (our revenue continues to grow, and we
are not getting ebay-style rich, or even some minuscule
fraction of this, but we can afford a first rate staff that
works well together to continue the development of new
versions of GNAT and tools with useful new stuff (I think
everyone will agree that 3.11p has LOTS of nice new
features compared to 3.10p, and I can promise that 3.12p
will be an equally exciting jump).

In turn, the users of the public version pioneer the
testing and use of the compiler. In particular they
tend to be much less conservative than large project
users (quite appropriately) and so they tend to pioneer
the less widely used features of the language.

We continue to get many valuable reports and suggestions
from users of the public version at report@gnat.com. We
cannot discuss these in detail, or provide a rapid
response, but all such reports are eventually read and
examined, and many useful fixes and enhancements have
come from this source, which of course in turn benefits
paying customers.

> I believe ACT is happy to listen to suggestions from
> anyone. Make your suggestions, make your case to them why
> it would be valuable, try to enlist others to your side
> to support that.

Absolutely Steve, that is good advice, and we are indeed
happy to get suggestions. I know it is frustrating some
times to people who are dead sure their suggestion is
*the* key to Ada's success, and they don't find us jumping
to agree, but we do listen carefully to all suggestions.

> ACT will consider it, in the context of their business
> needs. But they make the final decision about whether to
> expend their finite resources on work which their paying
> customers  may not be clamoring for. And no one really
> has much standing to beat them up for it.

Well we do get some funny cases. Once some procurement
agent called me to demand that I give a formal statement
that the version of GNAT 3.10p they were using was Y2K
compliant. I told him we did not make any such statements
about the public version. He got VERY indignant, and
started shouting at me "WELL WHO IS THE MANUFACTURER
OF THIS COMPILER? WHO CAN MAKE THIS GUARANTEE?" I told
him no one, but he was not satisfied. Oh well, we do our
best to sit back and have a chuckle when this sort of
thing happens :-)

> How many other  companies are giving you free Ada
> compilers?

Well it is nice to see that Aonix is making at least some
version of their technology freely available. I suspect
that GNAT had something to do with this, and if so, am
pleased to see it have this effect. If other vendors get
persuaded to consider the open source approach, so much
the better!

> How many other compiler company presidents are here every
> day helping out answering questions, etc. If he didn't
> care about Ada and its users, he wouldn't spend so much
> time here answering our stupid questions, or correcting
> our stupid answers to other people's intelligent
> questions

I never spend time answering stupid questions :-)

> (OK, they're not all stupid -- a bit of rhetorical
> hyperbole there.)

Indeed, despite the occasional frustration over junk in
CLA, this newsgroup is in fact in FAR better shape than
many of the other comp.lang groups, a tribute to the good
taste of Ada programmers and enthusiasts! It is also nice
to see, with rare exceptions, that we very rarely get
completely Ada-irrelevant posts, so the signal-to-noise
ratio stays high. Indeed even the extensive C++ vs Ada vs
.. language "war" thread recently remained remarkably
productive, especially with respect to contributions from
CLA participants

Robert Dewar
Ada Core Technologies

P.S. I try to make a distinction between messages which
are purely Robert Dewar sounding off, these come from
dejanews, and are unsigned, and messages which may
reflect ACT positions. I say "may" because we certainly
do not discuss everything and sometimes I may say things
which other people in the company point out to me are
wrong :-)

(*) My theater group, the Village Light Opera Group, the
oldest community theater group in New York, does fully
staged shows twice a year at the Fashion Institute Theater
in New York City, with a full orchestra. We are doing
Brigadoon this spring, and I am playing the role of
Archie Beaton (Harry Beaton's father, Harry is the one
who tries to run away). If anyone is interested in seeing
this show, let me know, or go to our site www.vlog.org.

Now that really IS an ad, but for that by VLOG hat is on,
and not my ACT hat :-)

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-22  0:00                               ` Matthew Heaney
@ 1999-02-21  0:00                                 ` bill
  1999-02-22  0:00                                   ` Larry Kilgallen
  1999-02-22  0:00                                 ` dennison
  1 sibling, 1 reply; 59+ messages in thread
From: bill @ 1999-02-21  0:00 UTC (permalink / raw)


In article <m3iucv2gmv.fsf@mheaney.ni.net>, Matthew says...
>
 
>I also post frequently on CLA, and hope that in some small way, I've
>contributed more to signal than to noise.
>
>Matt

Yup, your posts are great. I collect most of them. I am still learning
Ada and it helps to have experts like you guys around. 

However, there seem to be more programming questions in 
other languages news groups about those languages (such as C, C++, 
Java) than there are questions here about Ada. Not sure if it is 
becuase there are less Ada programmers than the others, or is
it becuase Ada is better defined, Ada programmers do not need to
ask many questions about it, or is it that the Ada compiler finds
all the bugs for the programmer, there is nothing else left for 
them to ask about :)

Bill.




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-21  0:00                             ` dewar
@ 1999-02-22  0:00                               ` Matthew Heaney
  1999-02-21  0:00                                 ` bill
  1999-02-22  0:00                                 ` dennison
  0 siblings, 2 replies; 59+ messages in thread
From: Matthew Heaney @ 1999-02-22  0:00 UTC (permalink / raw)


dewar@gnat.com writes:

> Indeed, despite the occasional frustration over junk in
> CLA, this newsgroup is in fact in FAR better shape than
> many of the other comp.lang groups, a tribute to the good
> taste of Ada programmers and enthusiasts! It is also nice
> to see, with rare exceptions, that we very rarely get
> completely Ada-irrelevant posts, so the signal-to-noise
> ratio stays high. Indeed even the extensive C++ vs Ada vs
> .. language "war" thread recently remained remarkably
> productive, especially with respect to contributions from
> CLA participants


I'll second this emotion.  I read CLA every day, and always look forward
to posts from Robert Dewar, Bob Eachus, Bob Duff, and Tucker Taft, from
whom I learned much about the finer points of Ada95, language design,
and programming in general.

I also post frequently on CLA, and hope that in some small way, I've
contributed more to signal than to noise.

Matt




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-20  0:00                           ` A Modest Defense of ACT (though they are big boys and can take care of themselves) Steve Quinlan
  1999-02-21  0:00                             ` dewar
@ 1999-02-22  0:00                             ` dennison
  1999-02-24  0:00                               ` Steve Quinlan
  1 sibling, 1 reply; 59+ messages in thread
From: dennison @ 1999-02-22  0:00 UTC (permalink / raw)


In article <36CF00DB.43DF428C@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:

> I believe ACT is happy to listen to suggestions from anyone. Make your

{choke!}

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-22  0:00                               ` Matthew Heaney
  1999-02-21  0:00                                 ` bill
@ 1999-02-22  0:00                                 ` dennison
  1 sibling, 0 replies; 59+ messages in thread
From: dennison @ 1999-02-22  0:00 UTC (permalink / raw)


In article <m3iucv2gmv.fsf@mheaney.ni.net>,
  Matthew Heaney <matthew_heaney@acm.org> wrote:
> dewar@gnat.com writes:
>
> > Indeed, despite the occasional frustration over junk in
> > CLA, this newsgroup is in fact in FAR better shape than
> > many of the other comp.lang groups, a tribute to the good
> > taste of Ada programmers and enthusiasts! It is also nice
> > to see, with rare exceptions, that we very rarely get
> > completely Ada-irrelevant posts, so the signal-to-noise
> > ratio stays high. Indeed even the extensive C++ vs Ada vs
> > .. language "war" thread recently remained remarkably
> > productive, especially with respect to contributions from
> > CLA participants
>
> I'll second this emotion.  I read CLA every day, and always look forward
> to posts from Robert Dewar, Bob Eachus, Bob Duff, and Tucker Taft, from
> whom I learned much about the finer points of Ada95, language design,
> and programming in general.

I'll have to third that. Even the flamewars are enlightening. I'm sure Nick
would agree too. :-)

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-21  0:00                                 ` bill
@ 1999-02-22  0:00                                   ` Larry Kilgallen
  0 siblings, 0 replies; 59+ messages in thread
From: Larry Kilgallen @ 1999-02-22  0:00 UTC (permalink / raw)


In article <7ar250$dq3@drn.newsguy.com>, bill <bill@newsguy.com> writes:

> However, there seem to be more programming questions in 
> other languages news groups about those languages (such as C, C++, 
> Java) than there are questions here about Ada. Not sure if it is 
> becuase there are less Ada programmers than the others, or is
> it becuase Ada is better defined, Ada programmers do not need to
> ask many questions about it, or is it that the Ada compiler finds
> all the bugs for the programmer, there is nothing else left for 
> them to ask about :)

I think one of the expectations of regulars here is that inquiries
should be made only after consulting a book.  Considering Ada's place
on the hyped-favorite-of-the-month scale, it seems that most who
bother to use Ada are willing to read books.

Larry Kilgallen




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-22  0:00                             ` dennison
@ 1999-02-24  0:00                               ` Steve Quinlan
  1999-02-25  0:00                                 ` dewar
  1999-02-25  0:00                                 ` dennison
  0 siblings, 2 replies; 59+ messages in thread
From: Steve Quinlan @ 1999-02-24  0:00 UTC (permalink / raw)


dennison@telepath.com wrote:

> {choke!}
>

  Well, that was a well-considered response. I take it you've suggested
things to ACT that they did not implement. This is of course evidence that
they are unwilling to listen to suggestions.





^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-24  0:00                               ` Steve Quinlan
@ 1999-02-25  0:00                                 ` dewar
  1999-02-25  0:00                                   ` Steve Quinlan
  1999-02-25  0:00                                 ` dennison
  1 sibling, 1 reply; 59+ messages in thread
From: dewar @ 1999-02-25  0:00 UTC (permalink / raw)


In article <36D41563.D8A72F6B@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:
>   Well, that was a well-considered response. I take it
>   you've suggested things to ACT that they did not
>   implement. This is of course evidence that
>   they are unwilling to listen to suggestions.

This is so obviously incorrect that I suspect that Steve
missed a not :-)

Most certainly we are willing to listen to suggestions

Most certainly that does NOT mean that are willing to
implement all suggestions!

Robert Dewar
Ada Core Technologies

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-25  0:00                                 ` dewar
@ 1999-02-25  0:00                                   ` Steve Quinlan
  1999-02-25  0:00                                     ` robert_dewar
  0 siblings, 1 reply; 59+ messages in thread
From: Steve Quinlan @ 1999-02-25  0:00 UTC (permalink / raw)


dewar@gnat.com wrote:
This is so obviously incorrect that I suspect that Steve missed a not :-)

Yes, I considered it obvious from the context that I was being ironic.

Sometimes smileys just don't seem to fit. Imagine if Jonathan Swift had put
a ;-) at the end of "A Modest Proposal". (No, I do not have an inflated
sense of the literary merits of my CLA posts.)





^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-24  0:00                               ` Steve Quinlan
  1999-02-25  0:00                                 ` dewar
@ 1999-02-25  0:00                                 ` dennison
  1999-02-26  0:00                                   ` Steve Quinlan
  1 sibling, 1 reply; 59+ messages in thread
From: dennison @ 1999-02-25  0:00 UTC (permalink / raw)


In article <36D41563.D8A72F6B@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:
> dennison@telepath.com wrote:
>
> > {choke!}
> >
>
>   Well, that was a well-considered response. I take it you've suggested
> things to ACT that they did not implement. This is of course evidence that
> they are unwilling to listen to suggestions.

Well, I am a little curious where that belief of yours came from. It jibes
neither with my personal experience, nor (more importantly) with what I have
witnessed in the last 5 years here on c.l.a.

I'm not trying to be anti-ACT here. I think they have been a wonderful source
of good for the Ada community. Where would Ada be right now without Gnat?
(Nowhere, that's where!) But not stopping there, they consistently do more
than they have to or need to. Witness GLADE, the spitbol packages, etc. Also
(where the rubber meets the road) whenever I've submitted a bug report
through official channels as an unsupported user I got aswesome response. Way
better than most companies tech support when I *am* supported. I'm not
knocking the likes of GreenHills, Rational, Aonix either. But I have
submitted bug reports through email to all of them, and not once did I ever
get a complete response from the president of the company within an hour. :-)

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-25  0:00                                   ` Steve Quinlan
@ 1999-02-25  0:00                                     ` robert_dewar
  0 siblings, 0 replies; 59+ messages in thread
From: robert_dewar @ 1999-02-25  0:00 UTC (permalink / raw)


In article <36D5713A.27E2BCAF@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:
> dewar@gnat.com wrote:
> This is so obviously incorrect that I suspect that Steve
> missed a not :-)
>
> Yes, I considered it obvious from the context that I was
> being ironic.

Well I agree it *should* be obvious, but you would be
surprised how many users of the public version of GNAT get
outraged that we do not follow their suggestions. Actually,
readers of CLA have seen this dynamic in action more than
once :-)


-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-25  0:00                                 ` dennison
@ 1999-02-26  0:00                                   ` Steve Quinlan
  1999-02-26  0:00                                     ` dennison
  0 siblings, 1 reply; 59+ messages in thread
From: Steve Quinlan @ 1999-02-26  0:00 UTC (permalink / raw)


That was a rather glowing endorsement. So, why were  you choking in the previous
note?





^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-26  0:00                                   ` Steve Quinlan
@ 1999-02-26  0:00                                     ` dennison
  1999-02-27  0:00                                       ` Simon Wright
  1999-02-28  0:00                                       ` dewar
  0 siblings, 2 replies; 59+ messages in thread
From: dennison @ 1999-02-26  0:00 UTC (permalink / raw)


In article <36D6B701.6DDB0997@lmco.com>,
  Steve Quinlan <steven.quinlan@lmco.com> wrote:
> That was a rather glowing endorsement. So, why were  you choking in the
previous
> note?

It was a specific point I choked on, not your whole posting. You'll note I
only quoted one sentence in the whole posting.

I don't think this is even a contraversial issue. You must have noticed that
Robert misses no oppertunity to point out that "unsupported" users can expect
no consideration whatsoever.

T.E.D.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care  of themselves)
  1999-02-27  0:00                                       ` Simon Wright
@ 1999-02-27  0:00                                         ` Dave Taylor
  0 siblings, 0 replies; 59+ messages in thread
From: Dave Taylor @ 1999-02-27  0:00 UTC (permalink / raw)




Simon Wright wrote:
> 
> dennison@telepath.com writes:
> 
> > I don't think this is even a contraversial issue. You must have
> > noticed that Robert misses no oppertunity to point out that
> > "unsupported" users can expect no consideration whatsoever.
>                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 
> In the UK this might be understood as 'can expect only rudeness'. That
> has not been my experience (and may not be what you meant?)

Even though I am unsupported and on an unsupported platform, I have
found ACT very responsive to my problems. I have received a great
deal of consideration.

Dave




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-26  0:00                                     ` dennison
@ 1999-02-27  0:00                                       ` Simon Wright
  1999-02-27  0:00                                         ` Dave Taylor
  1999-02-28  0:00                                       ` dewar
  1 sibling, 1 reply; 59+ messages in thread
From: Simon Wright @ 1999-02-27  0:00 UTC (permalink / raw)


dennison@telepath.com writes:

> I don't think this is even a contraversial issue. You must have
> noticed that Robert misses no oppertunity to point out that
> "unsupported" users can expect no consideration whatsoever.
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

In the UK this might be understood as 'can expect only rudeness'. That
has not been my experience (and may not be what you meant?)




^ permalink raw reply	[flat|nested] 59+ messages in thread

* Re: A Modest Defense of ACT (though they are big boys and can take care of themselves)
  1999-02-26  0:00                                     ` dennison
  1999-02-27  0:00                                       ` Simon Wright
@ 1999-02-28  0:00                                       ` dewar
  1 sibling, 0 replies; 59+ messages in thread
From: dewar @ 1999-02-28  0:00 UTC (permalink / raw)


In article <7b6t9u$oag$1@nnrp1.dejanews.com>,
  dennison@telepath.com wrote:
> I don't think this is even a contraversial issue. You
> must have noticed that Robert misses no oppertunity to
> point out that "unsupported" users can expect no
> consideration whatsoever.
>
> T.E.D.

This claim from Ted, one of our at-times-rather-insistent
unsupported users :-) is a distortion. Please read what
I have said carefully.

We welcome suggestions and bug reports from unsupported
users, and we look at all such reports. If reports are
definitely bug reports, then the bug will be fixed in a
future release. For suggestions, we may well adopt a
suggestion in a future release if it makes sense to us.

Many unsupported users have submitted such suggestions
and bug reports, and these have been very helpful in
the continued development of the GNAT system. We certainly
want to thank those who have made the effort to make these
constructive contributions!

Robert Dewar
Ada Core Technologies

P.S. On at least some occasions in the past, Ted has
submitted such reports, for which we thank him. But
it is important to remember that if the report is only
submitted in the form of a post to CLA, that does NOT
constitute something which we guarantee to read and
pay attention to!

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




^ permalink raw reply	[flat|nested] 59+ messages in thread

end of thread, other threads:[~1999-02-28  0:00 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-01-14  0:00 Fixed point multiplication ambiguity Marc A. Criley
1999-01-14  0:00 ` Robert I. Eachus
1999-01-14  0:00 ` bob
1999-01-14  0:00 ` David C. Hoos, Sr.
1999-01-14  0:00 ` Tucker Taft
1999-01-15  0:00   ` robert_dewar
1999-01-28  0:00   ` Nick Roberts
1999-01-28  0:00     ` robert_dewar
1999-01-28  0:00     ` Tucker Taft
1999-01-28  0:00       ` robert_dewar
1999-01-29  0:00       ` Nick Roberts
1999-01-29  0:00         ` Tucker Taft
1999-01-29  0:00           ` Nick Roberts
1999-01-29  0:00             ` Tucker Taft
1999-02-01  0:00               ` Robert I. Eachus
1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
1999-02-03  0:00                 ` Chris Morgan
1999-02-04  0:00                   ` robert_dewar
1999-02-04  0:00                     ` Garbage collection - was " news.oxy.com
1999-02-04  0:00                       ` robert_dewar
1999-02-05  0:00                         ` David Botton
1999-02-05  0:00                         ` Tom Moran
1999-02-18  0:00                         ` news.oxy.com
1999-02-18  0:00                           ` David Botton
1999-02-18  0:00                           ` dewar
1999-02-18  0:00                           ` AdaHag
1999-02-18  0:00                           ` Garbage collection - was Re: Building a compiler Samuel Mize
1999-02-19  0:00                             ` Samuel Mize
1999-02-19  0:00                           ` Garbage collection - was Re: Building a compiler (was: Fixed point multiplication ambiguity) Steven Hovater
1999-02-20  0:00                           ` A Modest Defense of ACT (though they are big boys and can take care of themselves) Steve Quinlan
1999-02-21  0:00                             ` dewar
1999-02-22  0:00                               ` Matthew Heaney
1999-02-21  0:00                                 ` bill
1999-02-22  0:00                                   ` Larry Kilgallen
1999-02-22  0:00                                 ` dennison
1999-02-22  0:00                             ` dennison
1999-02-24  0:00                               ` Steve Quinlan
1999-02-25  0:00                                 ` dewar
1999-02-25  0:00                                   ` Steve Quinlan
1999-02-25  0:00                                     ` robert_dewar
1999-02-25  0:00                                 ` dennison
1999-02-26  0:00                                   ` Steve Quinlan
1999-02-26  0:00                                     ` dennison
1999-02-27  0:00                                       ` Simon Wright
1999-02-27  0:00                                         ` Dave Taylor
1999-02-28  0:00                                       ` dewar
1999-02-05  0:00                     ` GC+HC for GNAT/GCC (was: Building a compiler) Nick Roberts
     [not found]                       ` <m33e4jvs1n.fsf@muc.de>
1999-02-06  0:00                         ` GC+FSD for GNAT/GCC Nick Roberts
1999-02-07  0:00                           ` robert_dewar
1999-02-05  0:00                   ` Building a compiler Nick Roberts
1999-02-05  0:00                     ` Tucker Taft
1999-02-06  0:00                       ` Nick Roberts
1999-02-03  0:00                 ` Building a compiler (was: Fixed point multiplication ambiguity) dennison
1999-01-30  0:00             ` Fixed point multiplication ambiguity robert_dewar
1999-02-02  0:00               ` Building a compiler (was: Fixed point multiplication ambiguity) Nick Roberts
1999-02-03  0:00                 ` Tucker Taft
1999-02-03  0:00                 ` robert_dewar
1999-01-14  0:00 ` Fixed point multiplication ambiguity Tom Moran
1999-01-14  0:00 ` Matthew Heaney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox