comp.lang.ada
 help / color / mirror / Atom feed
* Clause "with and use"
@ 2003-10-31 21:02 Gautier Write-only
  2003-10-31 21:51 ` Warren W. Gay VE3WWG
                   ` (5 more replies)
  0 siblings, 6 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-10-31 21:02 UTC (permalink / raw)


Peter Hermann's post about number_base reminds me on a suggestion of mine
about a "with and use" clause in AC ! Comments are welcome...
Original proposal follows:
____

Proposal for a "with and use" clause 

 Hello! 

 Almost the only thing I find tedious in Ada is the obligation 
 to name twice packages you intend to _use_ in a context_clause. 
 I illustrate with examples two usual ways of organizing context clauses: 

 (A) 

 -- (1) With'ed only 
 with Ada.Command_Line; 

 -- (2) With'ed and Use'd 
 with Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 
 use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 

 Problem: in practice the list pair (2) is a lot longer (many many lines) and 
         becomes difficult to synchronize. It is also difficult then to 
         _verify_ that the pair is consistent 

 (B) 

 -- (1) With'ed only 
 with Ada.Command_Line; 

 -- (2) With'ed and Use'd 
 with Ada.Text_IO;                       use Ada.Text_IO; 
 with Ada.Integer_Text_IO;               use Ada.Integer_Text_IO; 
 with Ada.Float_Text_IO;                 use Ada.Float_Text_IO; 

 Advantage: much easier to verify and transport across sources 
 Problem: the beginning of sources becomes awfully long. 


 To sum up, I'd describe the current situation so 

 - beginner-repellent and newcomer-repellent (not to be neglected !) 
 - ugly 
 - redundant 
 - causes a readability problem and possible confusions 
 - pushes the real thing, i.e. the programming contents after 
 "procedure/package... is", too far away of the source's top 
 - needs too much administration 

 My proposal: a "with and use" clause. "with and use A[,B]" would 
 mean "with A[,B]; use A[,B]". 

 (C) 

 -- (1) With'ed only 
 with Ada.Command_Line; 

 -- (2) With'ed and Use'd 
 with and use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
@ 2003-10-31 21:51 ` Warren W. Gay VE3WWG
  2003-10-31 22:29 ` Randy Brukardt
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-10-31 21:51 UTC (permalink / raw)


Gautier Write-only wrote:
> Peter Hermann's post about number_base reminds me on a suggestion of mine
> about a "with and use" clause in AC ! Comments are welcome...
> Original proposal follows:
> ____
> 
> Proposal for a "with and use" clause 
> 
>  Hello! 
> 
>  Almost the only thing I find tedious in Ada is the obligation 
>  to name twice packages you intend to _use_ in a context_clause. 
>  I illustrate with examples two usual ways of organizing context clauses: 
> 
>  (A) 
> 
>  -- (1) With'ed only 
>  with Ada.Command_Line; 
> 
>  -- (2) With'ed and Use'd 
>  with Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 
>  use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 

I don't like use-ing everything that is with-ed. I prefer
to name the packages to use in the procedure/declare blocks.

>  Problem: in practice the list pair (2) is a lot longer (many many lines) and 
>          becomes difficult to synchronize. It is also difficult then to 
>          _verify_ that the pair is consistent 

True, but you need it for full control. Sometimes, you need
to omit certain use-es.

>  (B) 
> 
>  -- (1) With'ed only 
>  with Ada.Command_Line; 

This is generally the approach I use now. With only a few
exceptions, I just put use clauses in the procedure/begin
block where it is used. This avoids a whole lot of evil,
and permits greater freedom in using commonly used names.

>  -- (2) With'ed and Use'd 
>  with Ada.Text_IO;                       use Ada.Text_IO; 
>  with Ada.Integer_Text_IO;               use Ada.Integer_Text_IO; 
>  with Ada.Float_Text_IO;                 use Ada.Float_Text_IO; 
> 
>  Advantage: much easier to verify and transport across sources 
>  Problem: the beginning of sources becomes awfully long. 

I know this is a contraversial subject (no agreement will follow),
but I believe for larger projects at least, this is a poor
practice to follow (this goes for (A) as well).

>  To sum up, I'd describe the current situation so 
> 
>  - beginner-repellent and newcomer-repellent (not to be neglected !) 
>  - ugly 
>  - redundant 
>  - causes a readability problem and possible confusions 
>  - pushes the real thing, i.e. the programming contents after 
>  "procedure/package... is", too far away of the source's top 
>  - needs too much administration 
> 
>  My proposal: a "with and use" clause. "with and use A[,B]" would 
>  mean "with A[,B]; use A[,B]". 
> 
>  (C) 
> 
>  -- (1) With'ed only 
>  with Ada.Command_Line; 
> 
>  -- (2) With'ed and Use'd 
>  with and use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 

What about A.B.C packages? Are you implying each level should be
used as well?

Overall, I think this is a bad plan. Just my $0.02 worth (and the
Cdn $ is gaining strength again against the US $ ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
  2003-10-31 21:51 ` Warren W. Gay VE3WWG
@ 2003-10-31 22:29 ` Randy Brukardt
  2003-11-01 13:39   ` Gautier Write-only
  2003-11-01  3:39 ` Alexandre E. Kopilovitch
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 385+ messages in thread
From: Randy Brukardt @ 2003-10-31 22:29 UTC (permalink / raw)


"Gautier Write-only" <gautier@fakeaddress.nil> wrote in message
news:3FA2CDCB.500F4AF0@fakeaddress.nil...
>  My proposal: a "with and use" clause. "with and use A[,B]" would
>  mean "with A[,B]; use A[,B]".

And this is likely to be confusing:
   with Parent.Child; means with Parent; with Parent.Child;
but
   use Parent.Child; just means use Parent.Child;

There are other issues as well; see the Ada-Comment discussion, filed in the
AC.

                Randy.






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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
  2003-10-31 21:51 ` Warren W. Gay VE3WWG
  2003-10-31 22:29 ` Randy Brukardt
@ 2003-11-01  3:39 ` Alexandre E. Kopilovitch
  2003-11-02 12:03   ` Stephane Richard
  2003-11-01  4:07 ` Alexandre E. Kopilovitch
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-01  3:39 UTC (permalink / raw)
  To: comp.lang.ada

Gautier Write-only wrote:
>Peter Hermann's post about number_base reminds me on a suggestion of mine
>about a "with and use" clause in AC ! Comments are welcome...

Well, I have a comment - not for the suggestion, but for the association -:)

Why not introduce CLAI (Comp.Lang.Ada-Issue), a kind of user-level AI ?

Both mentioned proposals may well be included there, along with several others.

A proposal will naturally belong to CLAI set if it makes some sense for users,
generally doesn't contradict Ada language, but have little chance to be accepted
by ARG due to low value/effort criteria for that proposal.

A formal criteria for inclusion into CLAI set may be explicit statement in
comp.lang.ada from at least 1 ARG member that he (I still never seen "she"
there -:) thinks that the proposal satisfies the above informal criteria.

I venture to think that AdaWorld website (for example) may host a page (or
pages) carrying those CLAI.

This my suggestion isn't aimed against recurring discussions in comp.lang.ada
about those issues. I just came to think that it might be sometimes useful
to have a humble repository for such proposals, at least for two purposes:
first, having a place to which a reference can be made, and second, having
an opportunity to review the whole list of them. (Letting imagination go wild,
one may expect that arguments pro and contra a CLAI may be collected and listed
also, thus providing some picture and even, in lucky circumctances, paving
the CLAI a way to become a true AI.)




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
                   ` (2 preceding siblings ...)
  2003-11-01  3:39 ` Alexandre E. Kopilovitch
@ 2003-11-01  4:07 ` Alexandre E. Kopilovitch
  2003-11-03  8:22   ` Lutz Donnerhacke
  2003-11-01  7:09 ` Russ
  2003-11-03 10:47 ` Dmitry A. Kazakov
  5 siblings, 1 reply; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-01  4:07 UTC (permalink / raw)
  To: comp.lang.ada

Dmytry Lavrov wrote:
>Ha,USSR produced first and last(but don't sure) non-binary computer
>with base 3
I remember the place in Russian translation of Knuth' "The Art of Computer
Programming", where Knuth said something like "it is generally possible that
somewhere, for example, on Mars, one might design 3-base computer", and
translation editor's footnote remarked that such a computer was actually
designed and built in USSR.




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
                   ` (3 preceding siblings ...)
  2003-11-01  4:07 ` Alexandre E. Kopilovitch
@ 2003-11-01  7:09 ` Russ
  2003-11-01 10:29   ` Pascal Obry
  2003-11-03 10:47 ` Dmitry A. Kazakov
  5 siblings, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-01  7:09 UTC (permalink / raw)


Gautier Write-only <gautier@fakeaddress.nil> wrote in message news:<3FA2CDCB.500F4AF0@fakeaddress.nil>...

>  To sum up, I'd describe the current situation so 
> 
>  - beginner-repellent and newcomer-repellent (not to be neglected !) 
>  - ugly 
>  - redundant 
>  - causes a readability problem and possible confusions 
>  - pushes the real thing, i.e. the programming contents after 
>  "procedure/package... is", too far away of the source's top 
>  - needs too much administration 
> 
>  My proposal: a "with and use" clause. "with and use A[,B]" would 
>  mean "with A[,B]; use A[,B]". 
> 
>  (C) 
> 
>  -- (1) With'ed only 
>  with Ada.Command_Line; 
> 
>  -- (2) With'ed and Use'd 
>  with and use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 

Fabulous idea! I'd refine it one step further to "with/use":

with/use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO;



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

* Re: Clause "with and use"
  2003-11-01  7:09 ` Russ
@ 2003-11-01 10:29   ` Pascal Obry
  2003-11-01 11:57     ` Marius Amado Alves
  2003-11-01 13:24     ` Gautier Write-only
  0 siblings, 2 replies; 385+ messages in thread
From: Pascal Obry @ 2003-11-01 10:29 UTC (permalink / raw)



18k11tm001@sneakemail.com (Russ) writes:

> Gautier Write-only <gautier@fakeaddress.nil> wrote in message news:<3FA2CDCB.500F4AF0@fakeaddress.nil>...
> 
> >  -- (1) With'ed only 
> >  with Ada.Command_Line; 
> > 
> >  -- (2) With'ed and Use'd 
> >  with and use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 
> 
> Fabulous idea! I'd refine it one step further to "with/use":

I really don't like this idea. This will just help writing bad Ada programs. I
think that a use clause must be avoided if possible and if not the use
clause should be put the more local possible (inside the routines that really
use feature from the package). This helps understanding the program
better. Having hundreds of with/use at the start of a program is the better
way to get lost !

And of course "with/use" is not something we want. There is no '/' in
reserved words!

Just my 2 cents,
Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



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

* Re: Clause "with and use"
  2003-11-01 10:29   ` Pascal Obry
@ 2003-11-01 11:57     ` Marius Amado Alves
  2003-11-01 13:24     ` Gautier Write-only
  1 sibling, 0 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-01 11:57 UTC (permalink / raw)
  To: comp.lang.ada

On Sat, 2003-11-01 at 10:29, Pascal Obry wrote:
> I really don't like this idea. This will just help writing bad Ada programs. I
> think that a use clause must be avoided if possible and if not the use
> clause should be put the more local possible (inside the routines that really
> use feature from the package). This helps understanding the program
> better. Having hundreds of with/use at the start of a program is the better
> way to get lost !
> 
> And of course "with/use" is not something we want. There is no '/' in
> reserved words!

For what it's worth, I second Pascal's position.




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

* Re: Clause "with and use"
  2003-11-01 10:29   ` Pascal Obry
  2003-11-01 11:57     ` Marius Amado Alves
@ 2003-11-01 13:24     ` Gautier Write-only
  2003-11-01 22:12       ` Pascal Obry
  1 sibling, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-01 13:24 UTC (permalink / raw)


Pascal Obry:

> I really don't like this idea. This will just help writing bad Ada programs. I
> think that a use clause must be avoided if possible and if not the use
> clause should be put the more local possible (inside the routines that really
> use feature from the package).

If you wanted to discourage writing bad programs in that optic, you should
suppress the use_clause as a context_clause (for the non-Manual maniaks,
these are clauses before "procedure" or "package").
The with_and_use_clause won't add any facility, but will reduce typing.

As you say, the usage of "use" must be as local as possible, if even needed.
Sometimes (and it may concern lots of packages in some situations) the
most reasonabily local place for "use" is in a context clause...

> This helps understanding the program
> better. Having hundreds of with/use at the start of a program is the better
> way to get lost !

This is exactly that problem "with and use" will help solving.
If you move one context "use" to ten local places just to lighten
the start of your program, you won't necessarily improve the
the overall readability, but add noise a bit further in the program...

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-10-31 22:29 ` Randy Brukardt
@ 2003-11-01 13:39   ` Gautier Write-only
  2003-11-01 14:32     ` Marius Amado Alves
  0 siblings, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-01 13:39 UTC (permalink / raw)


> >  My proposal: a "with and use" clause. "with and use A[,B]" would
> >  mean "with A[,B]; use A[,B]".

Randy Brukardt:

> And this is likely to be confusing:
>    with Parent.Child; means with Parent; with Parent.Child;
> but
>    use Parent.Child; just means use Parent.Child;

You mention an existing Ada95 feature, maybe confusing, concerning
the existing "with" and "use" clauses of Ada95!

As discussed in AC, "with and use" adds no new rule but inherits
the existing ones, according to the principle:
"with and use A[,B]" is exactly as if "with A[,B]; use A[,B]" was written.
In your example, "with and use Parent.Child;" will naturally mean
"with Parent; with Parent.Child; use Parent.Child;".

It is a chimically neutral proposal.
The issues it may reveal are already in Ada95.

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-01 13:39   ` Gautier Write-only
@ 2003-11-01 14:32     ` Marius Amado Alves
  2003-11-01 16:23       ` Gautier Write-only
  0 siblings, 1 reply; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-01 14:32 UTC (permalink / raw)
  To: comp.lang.ada

On Sat, 2003-11-01 at 13:39, Gautier Write-only wrote:
> "with and use A[,B]" is exactly as if "with A[,B]; use A[,B]" was written.
> In your example, "with and use Parent.Child;" will naturally mean
> "with Parent; with Parent.Child; use Parent.Child;".

This is not an example of the proposed rule is it? Where does "with
Parent;" come from?





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

* Re: Clause "with and use"
  2003-11-01 14:32     ` Marius Amado Alves
@ 2003-11-01 16:23       ` Gautier Write-only
  2003-11-01 19:59         ` Marius Amado Alves
  0 siblings, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-01 16:23 UTC (permalink / raw)


> > "with and use A[,B]" is exactly as if "with A[,B]; use A[,B]" was written.
> > In your example, "with and use Parent.Child;" will naturally mean
> > "with Parent; with Parent.Child; use Parent.Child;".

Marius Amado Alves:

> This is not an example of the proposed rule is it? Where does "with
> Parent;" come from?

The "with Parent;" is implicit, I should have mentioned.
Just like a written "with Parent.Child;" means
"with Parent; with Parent.Child;" in Ada95.

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-01 16:23       ` Gautier Write-only
@ 2003-11-01 19:59         ` Marius Amado Alves
  0 siblings, 0 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-01 19:59 UTC (permalink / raw)
  To: comp.lang.ada

On Sat, 2003-11-01 at 16:23, Gautier Write-only wrote:
> The "with Parent;" is implicit, I should have mentioned.
> Just like a written "with Parent.Child;" means
> "with Parent; with Parent.Child;" in Ada95.

Ok. Technically I don't think I have anything against the strictly
syntactic sugar rule. However this is just one more of the thousand 1
man week modifications. And to me there are a lot of other such
modifications that are much more useful e.g. the recently discussed
number base extension to 36.




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

* Re: Clause "with and use"
  2003-11-01 13:24     ` Gautier Write-only
@ 2003-11-01 22:12       ` Pascal Obry
  2003-11-02 10:45         ` Stephane Richard
  2003-11-03 22:04         ` Gautier Write-only
  0 siblings, 2 replies; 385+ messages in thread
From: Pascal Obry @ 2003-11-01 22:12 UTC (permalink / raw)



Gautier Write-only <gautier@fakeaddress.nil> writes:

> If you wanted to discourage writing bad programs in that optic, you should
> suppress the use_clause as a context_clause (for the non-Manual maniaks,
> these are clauses before "procedure" or "package").
> The with_and_use_clause won't add any facility, but will reduce typing.

Which is not what is important. I don't think that the language will be
changed just to "reduce typing".

Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



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

* Re: Clause "with and use"
  2003-11-01 22:12       ` Pascal Obry
@ 2003-11-02 10:45         ` Stephane Richard
  2003-11-02 11:34           ` Preben Randhol
  2003-11-03  5:59           ` Russ
  2003-11-03 22:04         ` Gautier Write-only
  1 sibling, 2 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-02 10:45 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 765 bytes --]


"Pascal Obry" <p.obry@wanadoo.fr> wrote in message
news:uekwr4u1k.fsf@wanadoo.fr...
>
> Gautier Write-only <gautier@fakeaddress.nil> writes:
>
> > If you wanted to discourage writing bad programs in that optic, you
should
> > suppress the use_clause as a context_clause (for the non-Manual maniaks,
> > these are clauses before "procedure" or "package").
> > The with_and_use_clause won't add any facility, but will reduce typing.
>
> Which is not what is important. I don't think that the language will be
> changed just to "reduce typing".
>
> Pascal.

Agreed, who has it in his signature quote that: "Saving keystrokes is the
job of the Editor, not of the programming langiage" ?  ;-)


-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-02 10:45         ` Stephane Richard
@ 2003-11-02 11:34           ` Preben Randhol
  2003-11-02 12:04             ` Stephane Richard
  2003-11-02 13:03             ` Marin David Condic
  2003-11-03  5:59           ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-02 11:34 UTC (permalink / raw)


On 2003-11-02, Stephane Richard <stephane.richard@verizon.net> wrote:
> Agreed, who has it in his signature quote that: "Saving keystrokes is the
> job of the Editor, not of the programming langiage" ?  ;-)

Me :-)

And now as I have a bit time I'm working on my ada-suit for vim to save
keystrokes.

Example : Writing 

   _PRC will give:

   procedure *
   is
      <++>
   begin
      <++>
   end <++>;

(* marks where the cursor will be placed. Then you hit Ctrl-J to jump to
<++> which gets removed)

or \aps if you want the interactive version which will ask for procedure
name arguments etc...

Shortcuts are customisable.

Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-01  3:39 ` Alexandre E. Kopilovitch
@ 2003-11-02 12:03   ` Stephane Richard
  2003-11-03  2:26     ` Alexandre E. Kopilovitch
  0 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-02 12:03 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2438 bytes --]

"Alexandre E. Kopilovitch" <aek@vib.usr.pu.ru> wrote in message
news:mailman.246.1067657416.25614.comp.lang.ada@ada-france.org...
> Gautier Write-only wrote:
> >Peter Hermann's post about number_base reminds me on a suggestion of mine
> >about a "with and use" clause in AC ! Comments are welcome...
>
> Well, I have a comment - not for the suggestion, but for the
association -:)
>
> Why not introduce CLAI (Comp.Lang.Ada-Issue), a kind of user-level AI ?
>
> Both mentioned proposals may well be included there, along with several
others.
>
> A proposal will naturally belong to CLAI set if it makes some sense for
users,
> generally doesn't contradict Ada language, but have little chance to be
accepted
> by ARG due to low value/effort criteria for that proposal.
>
> A formal criteria for inclusion into CLAI set may be explicit statement in
> comp.lang.ada from at least 1 ARG member that he (I still never seen "she"
> there -:) thinks that the proposal satisfies the above informal criteria.
>
> I venture to think that AdaWorld website (for example) may host a page (or
> pages) carrying those CLAI.
>
> This my suggestion isn't aimed against recurring discussions in
comp.lang.ada
> about those issues. I just came to think that it might be sometimes useful
> to have a humble repository for such proposals, at least for two purposes:
> first, having a place to which a reference can be made, and second, having
> an opportunity to review the whole list of them. (Letting imagination go
wild,
> one may expect that arguments pro and contra a CLAI may be collected and
listed
> also, thus providing some picture and even, in lucky circumctances, paving
> the CLAI a way to become a true AI.)
>
> Alexander Kopilovitch                      aek@vib.usr.pu.ru
> Saint-Petersburg
> Russia

I like the idea, and I'm more than willing to make it happen too :-).
Here's a few questions that you and other interested parties might want to
answer.

How to do picture this CLAI?

How would you (and the others too) like to see this created?

How would you like to create/edit issues?

Would there be official categories to consider, like syntax issues,
libraries issues, etc etc...to help search and post issues in the right
places?  if so perhaps a list of them, to start with might be a good idea.


I'll start with these questions and see where it takes us :-).

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com





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

* Re: Clause "with and use"
  2003-11-02 11:34           ` Preben Randhol
@ 2003-11-02 12:04             ` Stephane Richard
  2003-11-02 13:03             ` Marin David Condic
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-02 12:04 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1079 bytes --]

Ahhh there you are :-).  I got your quote written on my wall ;-).

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com


"Preben Randhol" <randhol+valid_for_reply_from_news@pvv.org> wrote in
message
news:slrnbq9qti.qu.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no...
> On 2003-11-02, Stephane Richard <stephane.richard@verizon.net> wrote:
> > Agreed, who has it in his signature quote that: "Saving keystrokes is
the
> > job of the Editor, not of the programming langiage" ?  ;-)
>
> Me :-)
>
> And now as I have a bit time I'm working on my ada-suit for vim to save
> keystrokes.
>
> Example : Writing
>
>    _PRC will give:
>
>    procedure *
>    is
>       <++>
>    begin
>       <++>
>    end <++>;
>
> (* marks where the cursor will be placed. Then you hit Ctrl-J to jump to
> <++> which gets removed)
>
> or \aps if you want the interactive version which will ask for procedure
> name arguments etc...
>
> Shortcuts are customisable.
>
> Preben
> -- 
> "Saving keystrokes is the job of the text editor, not the programming
>  language."





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

* Re: Clause "with and use"
  2003-11-02 11:34           ` Preben Randhol
  2003-11-02 12:04             ` Stephane Richard
@ 2003-11-02 13:03             ` Marin David Condic
  2003-11-02 13:10               ` Stephane Richard
                                 ` (2 more replies)
  1 sibling, 3 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-02 13:03 UTC (permalink / raw)


There's an article in the Nov 03 issue of Communications of the ACM 
called "Measuring Productivity In The Software Industry" Among other 
things it talks about "Understandibility" and the energy lost in trying 
to decrypt algorithms coded to minimize the number of keystrokes used to 
write them. The authors think that "economy of expression" is 
counter-productive. (Although, like most articles on productivity, they 
don't have any data to back it up.)

Its an interesting article, although I find it problematic that they 
(like others) make the comparison between software productivity and 
microprocessor chip speed. (Basically that microprocessors keep doubling 
in speed every so many months and yet software productivity seems to 
even be slowing down.) I find this comparison totally unreasonable 
because the two things are entirely qualitatively different. What does 
the speed at which one tool *runs* have to do with the time it takes to 
design another tool? Because Dodge came out with the Viper - which can 
run double the speed of the Neon - that should make their engineers 
design carbeurators at twice the speed?

It *might* be fair to compare the *Design Time* of a microprocessor to 
the *Design Time* of a software system - but even there, I find a 
qualitative difference. In electronics, a designer can develop circuitry 
for some function and use it like a brick - put a few million of them 
into the chip. He gets credit for a million whozits units on the chip 
but really only *designed* one of them. A software engineer designs a 
blivet and then moves on to design the next blivet. Does he get credit 
for the million times the first blivet gets called in some loop 
somewhere? No - he gets credit for designing two blivets. The two things 
just can't be counted the same way.

Anyway, its an interesting article and I liked the criticism of "terse" 
programming as being counter-productive.

MDC



Preben Randhol wrote:
> 
> Shortcuts are customisable.
> 



-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
  2003-11-02 13:03             ` Marin David Condic
@ 2003-11-02 13:10               ` Stephane Richard
  2003-11-02 13:49                 ` Software vs Hardware productivity (was: Re: Clause "with and use") Marin David Condic
       [not found]               ` <pn4g71-ned.ln1@beastie.ix.netcom.com>
  2003-11-03 14:36               ` Preben Randhol
  2 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-02 13:10 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2332 bytes --]


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FA50083.10709@noplace.com...
> There's an article in the Nov 03 issue of Communications of the ACM
> called "Measuring Productivity In The Software Industry" Among other
> things it talks about "Understandibility" and the energy lost in trying
> to decrypt algorithms coded to minimize the number of keystrokes used to
> write them. The authors think that "economy of expression" is
> counter-productive. (Although, like most articles on productivity, they
> don't have any data to back it up.)
>
> Its an interesting article, although I find it problematic that they
> (like others) make the comparison between software productivity and
> microprocessor chip speed. (Basically that microprocessors keep doubling
> in speed every so many months and yet software productivity seems to
> even be slowing down.) I find this comparison totally unreasonable
> because the two things are entirely qualitatively different. What does
> the speed at which one tool *runs* have to do with the time it takes to
> design another tool? Because Dodge came out with the Viper - which can
> run double the speed of the Neon - that should make their engineers
> design carbeurators at twice the speed?
>
> It *might* be fair to compare the *Design Time* of a microprocessor to
> the *Design Time* of a software system - but even there, I find a
> qualitative difference. In electronics, a designer can develop circuitry
> for some function and use it like a brick - put a few million of them
> into the chip. He gets credit for a million whozits units on the chip
> but really only *designed* one of them. A software engineer designs a
> blivet and then moves on to design the next blivet. Does he get credit
> for the million times the first blivet gets called in some loop
> somewhere? No - he gets credit for designing two blivets. The two things
> just can't be counted the same way.
>
> Anyway, its an interesting article and I liked the criticism of "terse"
> programming as being counter-productive.
>
> MDC
>

I hear ya.  If you take that to the programming world,  the easier you want
an application to be for it's user the more design (and cosequently
programming) it needs.  Plain and simple. :-)

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Software vs Hardware productivity (was: Re: Clause "with and use")
  2003-11-02 13:10               ` Stephane Richard
@ 2003-11-02 13:49                 ` Marin David Condic
  0 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-02 13:49 UTC (permalink / raw)


Well, that's just a matter of "features" if you will. Building a larger 
"device" - whatever that device may be - is always going to be more time 
consuming than building a smaller one. Microprocessors have become 
bigger and that probably means they take more time to design than 
smaller ones. But if you say "Last month, there was a chip with 100_000 
transistors on it and this month the same team built one with 1_000_000 
transistors on it..." does that make the design team 10 times more 
"productive"? Not necessarily. Did they have to design each of those 
transistors individually, or did they just redesign *one* transistor to 
make it smaller, then wire up ten times as many of them into a bigger 
device?

To be fair, a parallel might be that you write a subroutine that is 
called in a loop 100_000 times and this is as much work as it can do in 
the alloted time span. Then you do some redesign of the subroutine to 
chop out some instructions and suddenly, you can execute it 1_000_000 
times in the same time span. Or your program had an array that held 
100_000 elements and, because you got a bigger box, you tweaked a 
constant and in a cocaine heartbeat you got 1_000_000 elements into the 
array. Were you suddenly 10x more productive than the first time? 
Probably not.

There just is no fair comparison of software design to hardware design 
if you're looking at the amount of features on a chip versus the amount 
of features in a software system. The chip designer can *design* one 
feature and duplicate it a million times - creating a million features. 
The software designer has to design each individual feature - otherwise 
its just a generic or a subroutine - which isn't counted the same way as 
a  NAND gate or a barrel shifter or an adder or a memory cell is in the 
silicon world.

Actually, I suspect that if software designers could take credit for 
"features" in the same way that hardware designers do, we'd end up 
showing similar, if not way more productivity gains. When I pop a window 
up on a screen, can I take credit for the number of pixels I've just 
disturbed? That's no different than a memory chip designer taking credit 
for the number of memory cells he created in his design. Programs I 
build years ago used to occupy less than 64k of memory and because of 
improvements in technology, etc., I can now build a program that exceeds 
a megabyte without hardly breaking a sweat. Isn't that more "productive" 
in the same sort of units a hardware designer might get measured?


MDC


Stephane Richard wrote:
> 
> I hear ya.  If you take that to the programming world,  the easier you want
> an application to be for it's user the more design (and cosequently
> programming) it needs.  Plain and simple. :-)
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
       [not found]               ` <pn4g71-ned.ln1@beastie.ix.netcom.com>
@ 2003-11-02 22:25                 ` Marin David Condic
  2003-11-04 17:25                   ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-02 22:25 UTC (permalink / raw)


O.K. So I'm showing signs of age. :-) Maybe you can still find a 
carburator on a lawnmower.

I still have "records" and a turntable. When my wife first saw them in 
my house, she said "What are those???" - the times thay have changed, eh?

MDC

Dennis Lee Bieber wrote:
> 
>         You'd have to train the current engineers on how a carburator /works/ 
> first <G>
> 
>         I haven't seen a carburated engine since mid-80s. Even throttle-body 
> injectors seem to be a thing of the past.
> 
>         All that seems to be left is the design of the throttle-body itself -- 
> a valved air-plenum; no fuel jets of any type.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
  2003-11-02 12:03   ` Stephane Richard
@ 2003-11-03  2:26     ` Alexandre E. Kopilovitch
  0 siblings, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-03  2:26 UTC (permalink / raw)
  To: comp.lang.ada

Stephane Richard wrote:

> > Why not introduce CLAI (Comp.Lang.Ada-Issue), a kind of user-level AI ?
> >
> > Both mentioned proposals may well be included there, along with several others.
> >
> > A proposal will naturally belong to CLAI set if it makes some sense for users,
> > generally doesn't contradict Ada language, but have little chance to be accepted
> > by ARG due to low value/effort criteria for that proposal.
> >
> > A formal criteria for inclusion into CLAI set may be explicit statement in
> > comp.lang.ada from at least 1 ARG member that he (I still never seen "she"
> > there -:) thinks that the proposal satisfies the above informal criteria.
> >
> > I venture to think that AdaWorld website (for example) may host a page (or
> > pages) carrying those CLAI.
> >
> > This my suggestion isn't aimed against recurring discussions in comp.lang.ada
> > about those issues. I just came to think that it might be sometimes useful
> > to have a humble repository for such proposals, at least for two purposes:
> > first, having a place to which a reference can be made, and second, having
> > an opportunity to review the whole list of them. (Letting imagination go wild,
> > one may expect that arguments pro and contra a CLAI may be collected and listed
> > also, thus providing some picture and even, in lucky circumctances, paving
> > the CLAI a way to become a true AI.)
>
> I like the idea, and I'm more than willing to make it happen too :-).
> Here's a few questions that you and other interested parties might want to
> answer.
>
> How to do picture this CLAI?

I'm not sure that I understand this your question (our English dialects
probably differ at this point -;) . If you mean an icon for the link to the
CLA page, then it may be something like 

http://www.grmuseum.org/whatsnew/Corbyonknees.jpg

-:)  Or something else... -:)

> How would you (and the others too) like to see this created?

I imagine a separate page for the whole list of CLAIs. Each entry in this list
has unique CLAI-id (CLAI-nnn), short description and very short code example.
Every CLAI-id points to another page, specific for this CLAI, on which full
proposition is fully described, following with an array of comments.

> How would you like to create/edit issues?

I think that the site owner/webmaster only should change the contents of that
part of the site, that is, no direct uploads or changes by other persons shoul
be allowed. Only original author of a published CLAI (or a comment to it) may
request its deletion or change of that entry; moreover, if a CLAI has comments
or a comment has dependent comments then this CLAI or comment should not be
deleted anyway, it should be made anonymous instead,

So, we have 3 types of requests: add new CLAI, add a comment, remove (or made
anonymous) a CLAI or comment. And 1 type of clearance: statement from a member
of the ARG that proposed CLAI generally does not contradict Ada (in some
reasonable sense) and does not pose immediate threat to Ada's important features
(such as high degree of upward compatibility). All that requests as well as
a clearance should be posted in comp.land.ada, and picked from there.

> Would there be official categories to consider, like syntax issues,
> libraries issues, etc etc...to help search and post issues in the right
> places?  if so perhaps a list of them, to start with might be a good idea.

I do not think that categorization is needed from the start. Judging from recent
(say, 1 year back period) discussions in comp.lang.ada, right now we may have
3-5 CLAIs for publication. I do not think that categorization is usefulf before
the list exceeds, say, 10-15 entries. It is usually unpleasant, and perhaps
even annoying to see a page with just 2-3 categories, with 1-2 entries in each,
or a list of 10 categories, 8 of which are empty.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-11-02 10:45         ` Stephane Richard
  2003-11-02 11:34           ` Preben Randhol
@ 2003-11-03  5:59           ` Russ
  2003-11-03 14:32             ` Preben Randhol
                               ` (2 more replies)
  1 sibling, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-03  5:59 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> wrote in message news:<Ve5pb.36825$294.35899@nwrdny03.gnilink.net>...
> "Pascal Obry" <p.obry@wanadoo.fr> wrote in message
> news:uekwr4u1k.fsf@wanadoo.fr...
> >
> > Gautier Write-only <gautier@fakeaddress.nil> writes:
> >
> > > If you wanted to discourage writing bad programs in that optic, you
>  should
> > > suppress the use_clause as a context_clause (for the non-Manual maniaks,
> > > these are clauses before "procedure" or "package").
> > > The with_and_use_clause won't add any facility, but will reduce typing.
> >
> > Which is not what is important. I don't think that the language will be
> > changed just to "reduce typing".
> >
> > Pascal.
> 
> Agreed, who has it in his signature quote that: "Saving keystrokes is the
> job of the Editor, not of the programming langiage" ?  ;-)

OK, I think I'm starting to get it. Redundant keystrokes are what make
Ada the great language it is! I guess I was just too stubborn to see
that sooner. Now that I see the light, let me propose a way to use
even more redundant keystrokes:

   with My_Great_Package;
   use My_Great_Package;
   Yes_I_really_mean_use My_Great_Package;
   No_I_am_not_kidding_use My_Great_Package;
   Did_you_read_that_correctly_use My_Great_Package;
   Oh_and_dont_forget_with My_Great_Package;
   Oh_by_the_way_I_think_Ill_use_another_language My_Great_Package;
   because_this_one_is_ridiculous My_Great_Package;

Customizing your editor to automate this should be a breeze, and this
will make Ada rock!

It's really painful to see a great language die of overzealous
followers.



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

* Re: Clause "with and use"
  2003-11-01  4:07 ` Alexandre E. Kopilovitch
@ 2003-11-03  8:22   ` Lutz Donnerhacke
  2003-11-03 17:37     ` Alexandre E. Kopilovitch
  0 siblings, 1 reply; 385+ messages in thread
From: Lutz Donnerhacke @ 2003-11-03  8:22 UTC (permalink / raw)


* Alexandre E. Kopilovitch wrote:
> Dmytry Lavrov wrote:
>>Ha,USSR produced first and last(but don't sure) non-binary computer
>>with base 3
>
> I remember the place in Russian translation of Knuth' "The Art of Computer
> Programming", where Knuth said something like "it is generally possible that
> somewhere, for example, on Mars, one might design 3-base computer", and
> translation editor's footnote remarked that such a computer was actually
> designed and built in USSR.

TAoCP, Vol. 2, Chapter 3 constains a paragraph about an implementation of an
tribinary computer ((1, 0, -1) as bits) from the former CCCP.



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

* Re: Clause "with and use"
  2003-10-31 21:02 Clause "with and use" Gautier Write-only
                   ` (4 preceding siblings ...)
  2003-11-01  7:09 ` Russ
@ 2003-11-03 10:47 ` Dmitry A. Kazakov
  2003-11-03 16:30   ` Robert I. Eachus
                     ` (2 more replies)
  5 siblings, 3 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-03 10:47 UTC (permalink / raw)


On Fri, 31 Oct 2003 22:02:03 +0100, Gautier Write-only
<gautier@fakeaddress.nil> wrote:

>Peter Hermann's post about number_base reminds me on a suggestion of mine
>about a "with and use" clause in AC ! Comments are welcome...
>Original proposal follows:
>____
>
>Proposal for a "with and use" clause 
>
> Hello! 
>
> Almost the only thing I find tedious in Ada is the obligation 
> to name twice packages you intend to _use_ in a context_clause. 
> I illustrate with examples two usual ways of organizing context clauses: 
>
> (A) 
>
> -- (1) With'ed only 
> with Ada.Command_Line; 
>
> -- (2) With'ed and Use'd 
> with Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 
> use Ada.Text_IO, Ada.Integer_Text_IO, Ada.Float_Text_IO; 
>
> Problem: in practice the list pair (2) is a lot longer (many many lines) and 
>         becomes difficult to synchronize. It is also difficult then to 
>         _verify_ that the pair is consistent 
>
> (B) 
>
> -- (1) With'ed only 
> with Ada.Command_Line; 
>
> -- (2) With'ed and Use'd 
> with Ada.Text_IO;                       use Ada.Text_IO; 
> with Ada.Integer_Text_IO;               use Ada.Integer_Text_IO; 
> with Ada.Float_Text_IO;                 use Ada.Float_Text_IO; 
>
> Advantage: much easier to verify and transport across sources 
> Problem: the beginning of sources becomes awfully long. 

There was a [simpler / better] proposal that:

use A.B.C.D;

implies:

with A.B.C.D;

It was rejected. Does anybody remember why?

------------
It would be nice to have something like:

use all A.B.C.D; to abbreviate:

use A;
use A.B;
use A.B.C;
use A.B.C.D;

------------
OR, maybe it is worth to invent some mechanism to rename all declared
entities of a package within another package:

package A is
   type Something is ...;
   procedure Foo;
end A;

package B is
   procedure Bar;
end B;

with A, B;
package Proxy is
   rename all A;
      -- = subtype Something is A.Something;
      --    procedure Foo renames A.Foo;
   rename all B;
      -- = procedure Baz renames B.Baz;
end Proxy;

Now one can "use" Proxy to see both A.Foo and B.Baz.

---
Regards,
Dmitry Kazakov
www.dmitry-kazakov.de



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

* Re: Clause "with and use"
@ 2003-11-03 11:02 christoph.grein
  0 siblings, 0 replies; 385+ messages in thread
From: christoph.grein @ 2003-11-03 11:02 UTC (permalink / raw)
  To: comp.lang.ada

> OK, I think I'm starting to get it. Redundant keystrokes are what make
> Ada the great language it is! I guess I was just too stubborn to see
> that sooner. Now that I see the light, let me propose a way to use
> even more redundant keystrokes:
> 
>    with My_Great_Package;
>    use My_Great_Package;
>    Yes_I_really_mean_use My_Great_Package;
>    No_I_am_not_kidding_use My_Great_Package;
>    Did_you_read_that_correctly_use My_Great_Package;
>    Oh_and_dont_forget_with My_Great_Package;
>    Oh_by_the_way_I_think_Ill_use_another_language My_Great_Package;
>    because_this_one_is_ridiculous My_Great_Package;

LOL, ROFL



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

* Re: Clause "with and use"
  2003-11-03  5:59           ` Russ
@ 2003-11-03 14:32             ` Preben Randhol
  2003-11-03 22:11               ` Gautier Write-only
  2003-11-03 15:35             ` Stephane Richard
  2003-11-03 16:26             ` Robert I. Eachus
  2 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-03 14:32 UTC (permalink / raw)


On 2003-11-03, Russ <18k11tm001@sneakemail.com> wrote:
>
> OK, I think I'm starting to get it. Redundant keystrokes are what make
> Ada the great language it is! I guess I was just too stubborn to see
> that sooner. Now that I see the light, let me propose a way to use
> even more redundant keystrokes:

No, you will never get it. Try read the design goals 10 more times and
perhaps you will finally understand the points about readability versus
writeability.

> It's really painful to see a great language die of overzealous
> followers.

As are stupid arguments kept alive by overzealous believers.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-02 13:03             ` Marin David Condic
  2003-11-02 13:10               ` Stephane Richard
       [not found]               ` <pn4g71-ned.ln1@beastie.ix.netcom.com>
@ 2003-11-03 14:36               ` Preben Randhol
  2003-11-04  9:57                 ` Marin David Condic
  2 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-03 14:36 UTC (permalink / raw)


On 2003-11-02, Marin David Condic <nobody@noplace.com> wrote:
> There's an article in the Nov 03 issue of Communications of the ACM 
> called "Measuring Productivity In The Software Industry" Among other 
> things it talks about "Understandibility" and the energy lost in trying 
> to decrypt algorithms coded to minimize the number of keystrokes used to 
> write them. The authors think that "economy of expression" is 
> counter-productive. (Although, like most articles on productivity, they 
> don't have any data to back it up.)

Sounds reasonable. One could also compare a 10 line poem to a 2 page
story. I think one would finish the latter faster. By that I mean
understand it.

Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-03  5:59           ` Russ
  2003-11-03 14:32             ` Preben Randhol
@ 2003-11-03 15:35             ` Stephane Richard
  2003-11-03 16:26             ` Robert I. Eachus
  2 siblings, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-03 15:35 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2432 bytes --]


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311022159.345d7cab@posting.google.com...
> OK, I think I'm starting to get it. Redundant keystrokes are what make
> Ada the great language it is! I guess I was just too stubborn to see
> that sooner. Now that I see the light, let me propose a way to use
> even more redundant keystrokes:
>
>    with My_Great_Package;
>    use My_Great_Package;
>    Yes_I_really_mean_use My_Great_Package;
>    No_I_am_not_kidding_use My_Great_Package;
>    Did_you_read_that_correctly_use My_Great_Package;
>    Oh_and_dont_forget_with My_Great_Package;
>    Oh_by_the_way_I_think_Ill_use_another_language My_Great_Package;
>    because_this_one_is_ridiculous My_Great_Package;
>
*** If you want to write this series of withs and uses, be my guess, but if
you think that's what Ada is all about, you need to get back to basics.

> Customizing your editor to automate this should be a breeze, and this
> will make Ada rock!
>
*** No that's not what makes Ada rocks, what makes ada rock is the many
errors it can detect at compile time which helps Ada (unlike C, C++ Pascal
and you can continue the list here) produce finalized applications much
sooner than you could ever hope for in C or C++.  It's also all the
supported software engineering principles added to the language to make it
much easier than C or C++ to manage itself.  See my ada advocacy page if you
want a list, but you wont be able to tell me that anything I mention in
there isn't true. take a look at the links I got there in the last section
of the advocacy too for even more details.

> It's really painful to see a great language die of overzealous
> followers.

Die?  Maybe you should have been the one to contact the compiler vendors
instead of me ;-).  we'll see what dies when it does.  We'll talk again
then.  I come from the C++ world too you know, and shorter keywords did not
contribute to me staying with C++ one single bit it was more the other way
around.

You think all the support C++ currently has today will give it eternal life
or something?  As I keep on saying, C++ and Java mosty (but other languages
too) became popular for all the wrong reasons, all based on a "monkey see,
monkey doo" principle.  Today, they are beginning to realize that, I know I
did, and I know I'm not the only one of the corporate world.


-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-03  5:59           ` Russ
  2003-11-03 14:32             ` Preben Randhol
  2003-11-03 15:35             ` Stephane Richard
@ 2003-11-03 16:26             ` Robert I. Eachus
  2003-11-04  7:28               ` Vinzent 'Gadget' Hoefler
  2 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-03 16:26 UTC (permalink / raw)


Russ wrote:

> OK, I think I'm starting to get it. Redundant keystrokes are what make
> Ada the great language it is! I guess I was just too stubborn to see
> that sooner. Now that I see the light, let me propose a way to use
> even more redundant keystrokes:

No, what makes Ada the wonderful language that it is, is the effort put 
into scrutinizing every proposed change to see what effects it will have 
on all the "-ilities," especially in this case readability and 
maintainability, to decide whether a proposed improvement really will be 
an improvement overall.

Having said that, let me make a suggestion that might be an improvement 
on this one.  Add a "use all" clause.  This would indictate that all 
withed packages and their parents should be used.  Probably useful as 
such only in small demo programs.  But "use all Ada.Strings;" would be a 
generally useful form, indicating that Ada.Strings, and all nested or 
child packages that are visible should be made "use" visible.

Whether it should include generic instances would be worth discussing. 
I think that if it included all generic instances visible at the place 
of the "use all" clause would be an interesting extension to consider. 
I think not.  Instead create a child of Text_IO, Ada.Text_IO.Intances 
that contained instances of the various Text_IO generics for all 
predefined types (probably excepting instances of Enumeration_IO).  So 
with such a package:

package Ada.Text_IO.Instances is
    package Integer_Text_IO is new Integer_IO(Integer);
    package Long_Integer_Text_IO is new Integer_IO(Long_Integer);
    package Short_Integer_Text_IO is new Integer_IO(Short_Integer);
    package Float_Text_IO is new Float_IO(Float);
    package Long_Float_Text_IO is new Float_IO(Long_Float);
    package Duration_Text_IO is new Fixed_IO(Duration);
end Ada.Text_IO.Instances;

You could then put a with Ada.Text_IO.Instances at the beginning of 
appropriate units, and a "use all Ada.Text_IO.Instances;" in nested 
scopes where the actual IO is done.

-- 

                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-03 10:47 ` Dmitry A. Kazakov
@ 2003-11-03 16:30   ` Robert I. Eachus
  2003-11-03 22:07   ` Gautier Write-only
  2003-11-04  7:28   ` Vinzent 'Gadget' Hoefler
  2 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-03 16:30 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> It would be nice to have something like:
> 
> use all A.B.C.D; to abbreviate:
> 
> use A;
> use A.B;
> use A.B.C;
> use A.B.C.D;
> 
> ------------
> OR, maybe it is worth to invent some mechanism to rename all declared
> entities of a package within another package:
> 
> package A is
>    type Something is ...;
>    procedure Foo;
> end A;
> 
> package B is
>    procedure Bar;
> end B;
> 
> with A, B;
> package Proxy is
>    rename all A;
>       -- = subtype Something is A.Something;
>       --    procedure Foo renames A.Foo;
>    rename all B;
>       -- = procedure Baz renames B.Baz;
> end Proxy;
> 
> Now one can "use" Proxy to see both A.Foo and B.Baz.

Great minds think alike.  I just posted a similar proposal for "use 
all," but I suggested a simpler approach to creating aggregate scopes to 
use it with.

-- 
 
Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-03  8:22   ` Lutz Donnerhacke
@ 2003-11-03 17:37     ` Alexandre E. Kopilovitch
  0 siblings, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-03 17:37 UTC (permalink / raw)
  To: comp.lang.ada

Lutz Donnerhacke wrote:

> > I remember the place in Russian translation of Knuth' "The Art of Computer
> > Programming", where Knuth said something like "it is generally possible that
> > somewhere, for example, on Mars, one might design 3-base computer", and
> > translation editor's footnote remarked that such a computer was actually
> > designed and built in USSR.
>
> TAoCP, Vol. 2, Chapter 3 constains a paragraph about an implementation of an
> tribinary computer ((1, 0, -1) as bits) from the former CCCP.

Probably you have more recent edition of TAoCP (relating to the source for
1st Russian translation).




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia





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

* Re: Clause "with and use"
  2003-11-01 22:12       ` Pascal Obry
  2003-11-02 10:45         ` Stephane Richard
@ 2003-11-03 22:04         ` Gautier Write-only
  1 sibling, 0 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-03 22:04 UTC (permalink / raw)


# > If you wanted to discourage writing bad programs in that optic, you should
# > suppress the use_clause as a context_clause (for the non-Manual maniaks,
# > these are clauses before "procedure" or "package").
# > The with_and_use_clause won't add any facility, but will reduce typing.

Pascal:

# Which is not what is important. I don't think that the language will be
# changed just to "reduce typing".

Why not ?
Several changes from Ada 83 to Ada 95 could be described as a pure
keystroke reduction that improves readability, so it's not impossible
that the language could change again in that direction.

Is such a change worth the effort, although not bringing a new feature ?
I think so. A newcomer to Ada (who can be an experienced programmer,
tempted to start a development in his small business, or a scientist, or...)
will have to begin his prototypes with this bureaucratic aspect.
The first question will be "if there is such a thing in the first step,
will it be all the way so ?". This stupid redundancy problem is hurdle
I have observed in initiating people to Ada. After that, those who have
passed begin to enjoy the modularity, attributes, range checks, portability
and all goodies that are so well done in Ada.

To sum up, this proposal is *technically* of no importance, but IMHO a
*darwinian* sense (survival / growth of Ada), and also for readability, quite
important.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-03 10:47 ` Dmitry A. Kazakov
  2003-11-03 16:30   ` Robert I. Eachus
@ 2003-11-03 22:07   ` Gautier Write-only
  2003-11-04  7:28   ` Vinzent 'Gadget' Hoefler
  2 siblings, 0 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-03 22:07 UTC (permalink / raw)


Dmitry A. Kazakov:

> There was a [simpler / better] proposal that:
> 
> use A.B.C.D;
> 
> implies:
> 
> with A.B.C.D;

Effectively, this is overall simpler and better (for the user
as well as the underlying rules).

> It was rejected. Does anybody remember why?

I am curious to know!

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-03 14:32             ` Preben Randhol
@ 2003-11-03 22:11               ` Gautier Write-only
  2003-11-04 10:58                 ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-03 22:11 UTC (permalink / raw)


> > OK, I think I'm starting to get it. Redundant keystrokes are what make
> > Ada the great language it is! I guess I was just too stubborn to see
> > that sooner. Now that I see the light, let me propose a way to use
> > even more redundant keystrokes:

Preben Randhol:

> No, you will never get it. Try read the design goals 10 more times and
> perhaps you will finally understand the points about readability versus
> writeability.

They are not always opposed. IMHO with this proposal (whatever form it
takes: "with and use" or "use" with implicit "with") you will gain
in readability _and_ writeability.

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-03 16:26             ` Robert I. Eachus
@ 2003-11-04  7:28               ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-04  7:28 UTC (permalink / raw)


Robert I. Eachus wrote:

>Having said that, let me make a suggestion that might be an improvement 
>on this one.  Add a "use all" clause.

Hmm. I'd vote for dropping the use clause completely. :->


Vinzent.



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

* Re: Clause "with and use"
  2003-11-03 10:47 ` Dmitry A. Kazakov
  2003-11-03 16:30   ` Robert I. Eachus
  2003-11-03 22:07   ` Gautier Write-only
@ 2003-11-04  7:28   ` Vinzent 'Gadget' Hoefler
  2003-11-06 20:12     ` Gautier Write-only
  2 siblings, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-04  7:28 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

>use A.B.C.D;
>
>implies:
>
>with A.B.C.D;
>
>It was rejected. Does anybody remember why?

I don't know if this was the reason, but AFAICS you can't "with" a
package inbetween a body, but you can locally *use* a package in a
declare block:

|declare
|   use P;
|   ...

So this sort of use would at least require a with-declaration in the
beginning of the package. CMIIW, but all the "with"s in the beginning
just declare package "dependencies", nothing more.


Vinzent.



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

* Re: Clause "with and use"
  2003-11-03 14:36               ` Preben Randhol
@ 2003-11-04  9:57                 ` Marin David Condic
  2003-11-04 11:22                   ` Preben Randhol
  2003-11-04 17:37                   ` Warren W. Gay VE3WWG
  0 siblings, 2 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-04  9:57 UTC (permalink / raw)


It always "sounds reasonable" - but is it backed up with any *data*? I 
believe the claim because it is reasonable, but obviously, there are 
folks who think that "economy of expression" is the bees knees. Hence 
the strong devotion to cryptic C programming. If you seek to persuade 
that crowd, some data to back up the claim would help.

MDC

Preben Randhol wrote:
> 
> 
> Sounds reasonable. One could also compare a 10 line poem to a 2 page
> story. I think one would finish the latter faster. By that I mean
> understand it.
> 
> Preben


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
  2003-11-03 22:11               ` Gautier Write-only
@ 2003-11-04 10:58                 ` Preben Randhol
  2003-11-04 13:16                   ` Hyman Rosen
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-04 10:58 UTC (permalink / raw)


On 2003-11-03, Gautier Write-only <gautier@fakeaddress.nil> wrote:
> They are not always opposed. IMHO with this proposal (whatever form it
> takes: "with and use" or "use" with implicit "with") you will gain
> in readability _and_ writeability.

Perhaps, but I will claim that anything implicit means it is not
readable. Explicit is. At any rate it is writing:

with Ada.Text_IO;       use Ada.Text_IO;

is shorter than writing

with and use Ada.Text_IO;

because one can write:

with Ada.Text_IO;

and then hit a shortcut which will run a macro copying the line changing
with to use and past it to the end of the corrent line.



implicit:
   1 a : capable of being understood from something else though
         unexpressed : IMPLIED <an implicit assumption> 
     b : involved in the nature or essence of something though 
         not revealed, expressed, or developed 

Preben

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-04  9:57                 ` Marin David Condic
@ 2003-11-04 11:22                   ` Preben Randhol
  2003-11-04 12:45                     ` Marin David Condic
  2003-11-04 17:37                   ` Warren W. Gay VE3WWG
  1 sibling, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-04 11:22 UTC (permalink / raw)


On 2003-11-04, Marin David Condic <nobody@noplace.com> wrote:
> It always "sounds reasonable" - but is it backed up with any *data*? I 
> believe the claim because it is reasonable, but obviously, there are 
> folks who think that "economy of expression" is the bees knees. Hence 
> the strong devotion to cryptic C programming. If you seek to persuade 
> that crowd, some data to back up the claim would help.

Sure data are nice and I haven't read the article. However, it has little
to do with computer science. This is study of the human brain and
perception. So comparing it to microchips is not very interesting I
think. However, I find that if I read a book that is well written and
clear on a subject it is easier and faster to comprehend the content.
For a book which uses a lot of implicit rules and theories it takes
longer to graph the content.

I remember when I was a student that some of the books were a nightmare
as it did:

      From eq (1) we have

      equation (1)

      this gives eq:

      equation (2)

where (1) and (2) had a lot of implicit calculations etc...

while it could be written of explained on the blackboards as:

      equation (1)
      equation (1.1)
      equation (1.2)
      equation (1.3)
      equation (1.4)
      equation (1.5)

and then finally

      equation (2)

However, in which of the two cases you learn more can be debated. It can
be said that in the first case, if you take your time, you will
probably learn better by doing all the implied calculations. On the
other hand it can also be said that it is not likely that on do take the
time / have the time to one would learn more by looking over the
calculations between (1) and (2) and understand the progress.

I'm sure that there are studies on this, but that you have to look
outside your field for them.

Consider:

[1.1]

   if calc_value (some_arg) = True then
      --
   else
      --
   end if;

to

[1.2]

   if calc_value (some_arg) then
      --
   else
      --
   end if;

or

[2.1]

   if done = ture then
      --
   end if;

to

[2.2]

   if done then
      --
   end if;

I would say that in some cases [1.1] be more readable
that [1.2], but that [2.2] is more readable than [2.1]

[3.1]

   if not calc_value (some_arg) then

[3.2]

   if calc_value (some_arg) = False then

And I would say [3.2] is much more readable than [3.1].




-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-04 11:22                   ` Preben Randhol
@ 2003-11-04 12:45                     ` Marin David Condic
  2003-11-04 15:46                       ` Wes Groleau
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-04 12:45 UTC (permalink / raw)


I understand what you're saying and I agree that one might find some 
help from fields such as psychology or medicine to help explain what 
sorts of perceptions people have. But consider this: The article in 
question (and we Ada-ites, for that matter - and to bring it back on 
topic) are making a claim about software productivity. We are 
deliberately making language design decisions on the assumption that 
clarity = verbosity and the basis that clarity at the expense of brevity 
  makes software development more productive. Is there any demonstration 
of that or is it just a guess?

For example, there are lots of hackers out there who really love cryptic 
C code and the language was designed to support crypticism (Do I get 
credit for inventing that word? ;-) *They* claim this makes them more 
productive once they have gained the expertise in understanding the 
implications of all the cool, short little operators. Are they more 
productive? What if we're talking about code that is built once and 
lives for a very short time or is otherwise never modified? Would Ada's 
verbosity and long lifecycle support help here?

All of that is a big unknown and it isn't intuitively obvious to *all* 
of the casual observers that the claim is true on the face of it. There 
have been some reasonably scientific comparisons of Ada and C with some 
measuring of productivity that ends up showing Ada to be a clear winner. 
But a lot of factors go into that. Is the avoidance of crypticism part 
of it? Probably. But it would help if there was some evidence to support 
that claim.

MDC


Preben Randhol wrote:
> On 2003-11-04, Marin David Condic <nobody@noplace.com> wrote:
> 
> Sure data are nice and I haven't read the article. However, it has little
> to do with computer science. This is study of the human brain and
> perception. So comparing it to microchips is not very interesting I
> think. However, I find that if I read a book that is well written and
> clear on a subject it is easier and faster to comprehend the content.
> For a book which uses a lot of implicit rules and theories it takes
> longer to graph the content.
> 
> I remember when I was a student that some of the books were a nightmare
> as it did:
> 
>       From eq (1) we have
> 
>       equation (1)
> 
>       this gives eq:
> 
>       equation (2)
> 
> where (1) and (2) had a lot of implicit calculations etc...
> 
> while it could be written of explained on the blackboards as:
> 
>       equation (1)
>       equation (1.1)
>       equation (1.2)
>       equation (1.3)
>       equation (1.4)
>       equation (1.5)
> 
> and then finally
> 
>       equation (2)
> 
> However, in which of the two cases you learn more can be debated. It can
> be said that in the first case, if you take your time, you will
> probably learn better by doing all the implied calculations. On the
> other hand it can also be said that it is not likely that on do take the
> time / have the time to one would learn more by looking over the
> calculations between (1) and (2) and understand the progress.
> 
> I'm sure that there are studies on this, but that you have to look
> outside your field for them.
> 
> Consider:
> 
> [1.1]
> 
>    if calc_value (some_arg) = True then
>       --
>    else
>       --
>    end if;
> 
> to
> 
> [1.2]
> 
>    if calc_value (some_arg) then
>       --
>    else
>       --
>    end if;
> 
> or
> 
> [2.1]
> 
>    if done = ture then
>       --
>    end if;
> 
> to
> 
> [2.2]
> 
>    if done then
>       --
>    end if;
> 
> I would say that in some cases [1.1] be more readable
> that [1.2], but that [2.2] is more readable than [2.1]
> 
> [3.1]
> 
>    if not calc_value (some_arg) then
> 
> [3.2]
> 
>    if calc_value (some_arg) = False then
> 
> And I would say [3.2] is much more readable than [3.1].
> 
> 
> 
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
  2003-11-04 10:58                 ` Preben Randhol
@ 2003-11-04 13:16                   ` Hyman Rosen
  2003-11-04 15:09                     ` Vinzent 'Gadget' Hoefler
                                       ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-04 13:16 UTC (permalink / raw)


Preben Randhol wrote:
> with Ada.Text_IO;       use Ada.Text_IO;

The usual arguments of extra verbosity leading to clarity
don't apply to with/use. The problem is that the things in
the use clause don't necessarily have to be identical to
the things in the with clause. That means every time you
see a with/use set, you must verify that the packages in
both are in fact identical, and if they are not, figure
out why that is so.




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

* Re: Clause "with and use"
  2003-11-04 13:16                   ` Hyman Rosen
@ 2003-11-04 15:09                     ` Vinzent 'Gadget' Hoefler
  2003-11-04 15:49                     ` Wes Groleau
  2003-11-06 10:55                     ` Preben Randhol
  2 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-04 15:09 UTC (permalink / raw)


Hyman Rosen wrote:

>Preben Randhol wrote:
>> with Ada.Text_IO;       use Ada.Text_IO;
>
>The usual arguments of extra verbosity leading to clarity
>don't apply to with/use. The problem is that the things in
>the use clause don't necessarily have to be identical to
>the things in the with clause.

-v, please. I don't exactly understand what you mean.

>That means every time you
>see a with/use set, you must verify that the packages in
>both are in fact identical, and if they are not, figure
>out why that is so.

Who? You mean with Ada.Text_IO can reference another Ada.Text_IO that
the one that is "use"d?

Can you provide an example, please? I don't see it.


Vinzent.



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

* Re: Clause "with and use"
  2003-11-04 12:45                     ` Marin David Condic
@ 2003-11-04 15:46                       ` Wes Groleau
  2003-11-04 16:08                         ` Marius Amado Alves
  0 siblings, 1 reply; 385+ messages in thread
From: Wes Groleau @ 2003-11-04 15:46 UTC (permalink / raw)


Marin David Condic wrote:
> deliberately making language design decisions on the assumption that 
> clarity = verbosity and the basis that clarity at the expense of brevity 
>  makes software development more productive. Is there any demonstration 

Perhaps some people are.  I'm not making language decisions,
but if I were, it would not be on the basis that
"clarity = verbosity"

It would be

   clarity   = good

   cryptic   = bad

   verbosity = irrelevant

   brevity   = irrelevant

-- 
Wes Groleau
Heroes, Heritage, and History
http://freepages.genealogy.rootsweb.com/~wgroleau/




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

* Re: Clause "with and use"
  2003-11-04 13:16                   ` Hyman Rosen
  2003-11-04 15:09                     ` Vinzent 'Gadget' Hoefler
@ 2003-11-04 15:49                     ` Wes Groleau
  2003-11-06 10:55                     ` Preben Randhol
  2 siblings, 0 replies; 385+ messages in thread
From: Wes Groleau @ 2003-11-04 15:49 UTC (permalink / raw)


Hyman Rosen wrote:
> the things in the with clause. That means every time you
> see a with/use set, you must verify that the packages in
> both are in fact identical, and if they are not, figure

Wrong.  Every time I WRITE a with/use set,
I need to make sure I write what I mean.

I 'with' everything I will be referencing.
I 'use' ONLY those that are less readable
if fully qualified.

Every time I _see_ a with use set, I hope
that the author did the same thing.

-- 
Wes Groleau
   "Grant me the serenity to accept those I cannot change;
    the courage to change the one I can;
    and the wisdom to know it's me."
                                -- unknown




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

* Re: Clause "with and use"
  2003-11-04 15:46                       ` Wes Groleau
@ 2003-11-04 16:08                         ` Marius Amado Alves
  2003-11-06 10:10                           ` Preben Randhol
  2003-11-18  0:07                           ` Brian Gaffney
  0 siblings, 2 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-04 16:08 UTC (permalink / raw)
  To: comp.lang.ada

How about

  with ...; use idem;

(cf. thread on compound assignment)





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

* Re: Clause "with and use"
  2003-11-02 22:25                 ` Clause "with and use" Marin David Condic
@ 2003-11-04 17:25                   ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-04 17:25 UTC (permalink / raw)


Marin David Condic wrote:
> O.K. So I'm showing signs of age. :-) Maybe you can still find a 
> carburator on a lawnmower.
> 
> I still have "records" and a turntable. When my wife first saw them in 
> my house, she said "What are those???" - the times thay have changed, eh?
> 
> MDC

Its funny to hear my teenagers ask me what an 8-Track is. ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-04  9:57                 ` Marin David Condic
  2003-11-04 11:22                   ` Preben Randhol
@ 2003-11-04 17:37                   ` Warren W. Gay VE3WWG
  2003-11-05 19:08                     ` Russ
  1 sibling, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-04 17:37 UTC (permalink / raw)


Marin David Condic wrote:

> It always "sounds reasonable" - but is it backed up with any *data*? I 
> believe the claim because it is reasonable, but obviously, there are 
> folks who think that "economy of expression" is the bees knees. Hence 
> the strong devotion to cryptic C programming. If you seek to persuade 
> that crowd, some data to back up the claim would help.
> 
> MDC

What I have observed here at least, is that while it has
been shown and demonstrated time and time again, that
such-and-such an engineering approach such as developing
readable and maintainable code is a good thing, you
still only hear the programmer say "I want X anyway".

The problem as I see it, is the programmer too often is
selfish in what HE wants, and so getting the job done
quickly and with the minimum effort, is the only noise
that you hear above the din.

Yet the END-OWNER of the software that is being
developed, has different goals, including
the cost of maintenance and readability (to save
time ($) for that next poor programmer that must
jump into the code).

The problem is that the programer usually is in the
position of making that choice -- not the end owner,
unless the owner has specific processes in place to
prevent otherwise.

THE GOOD THING ABOUT Ada, is that in large part, it
forces a more readable style on the code. As someone
else posted here, you don't see any Ada obfuscated
code contests given for Ada, although I am sure it
can be done ;-)

Where this division gets blurred is when the developer
and the owner are one: then the tendancy seems to be
to favour the developer, unless the developer is
well disciplined.

I personally think it is necessary to keep encouraging
the programmers to think about more than their own
convenience. This is what much of the += ballyhoo is
all about.
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-04 17:37                   ` Warren W. Gay VE3WWG
@ 2003-11-05 19:08                     ` Russ
  2003-11-05 21:11                       ` Mark Lorenzen
                                         ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-05 19:08 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<atRpb.673$143.30323@news20.bellglobal.com>...

> I personally think it is necessary to keep encouraging
> the programmers to think about more than their own
> convenience. This is what much of the += ballyhoo is
> all about.

From my perspective, that is simply your persistent misunderstanding
of the "+= ballyhoo". I have given several good reasons in favor of
"+=" (or ":+"). Note that "saving keystrokes" is not one of them,
despite the persistent bleatings to the contrary. And what is wrong
with "programmer convenience," when there is no downside? Do you think
"programmer inconvenience" is an inherent virtue?

Here are the reasons I have given in favor of "+=":

1. "+=" (":+") relieves the *reader* of the code of the task of
verifying that the twice-named variable is indeed the same variable
repeated twice. And it does so without the cumbersome mechanism of
renaming and explicity creating a new scope.

2. "+=" (":+") provides a *standard* symbol for common operations on
scalar types. Yes, that is a "programmer convenience" because it
relieves the programmer of the make-work task of defining (or
instantiating) his own "Inc" operator for many different types. It
also reduces the possibility that the programmer could err in doing
something that the compiler could do for him. I don't know about you,
but I find that good compilers are usually less error-prone than me.

3. "+=" (":+") provides a *standard* symbol for efficient
vector/matrix (and other) operations, thus preventing a proliferation
of user-named procedures such as

   Add ( A, To=> B ); -- or
   MatrixAdd ( source=>A, destination=>B ); -- or
   MatrixAddition ( from=>A, inplace=>B ); -- etc., etc.
   ...

By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
chances are he is not a top-notch programmer. But Ada forces such bad
style, and that's bad style itself.



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

* Re: Clause "with and use"
  2003-11-05 19:08                     ` Russ
@ 2003-11-05 21:11                       ` Mark Lorenzen
  2003-11-06  3:10                         ` Russ
  2003-11-05 21:20                       ` Warren W. Gay VE3WWG
  2003-11-05 21:48                       ` Alexandre E. Kopilovitch
  2 siblings, 1 reply; 385+ messages in thread
From: Mark Lorenzen @ 2003-11-05 21:11 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) writes:

[cut]

> By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
> chances are he is not a top-notch programmer. But Ada forces such bad
> style, and that's bad style itself.

I allways write 'x = x + 2' instead of 'x += 2'. I simply despise the
latter form, as it is unreadable and "hackish".

Luckily Ada does not encourage such bad style.

- Mark Lorenzen



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

* Re: Clause "with and use"
  2003-11-05 19:08                     ` Russ
  2003-11-05 21:11                       ` Mark Lorenzen
@ 2003-11-05 21:20                       ` Warren W. Gay VE3WWG
  2003-11-05 21:48                       ` Alexandre E. Kopilovitch
  2 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-05 21:20 UTC (permalink / raw)


Russ wrote:
> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<atRpb.673$143.30323@news20.bellglobal.com>...
>>I personally think it is necessary to keep encouraging
>>the programmers to think about more than their own
>>convenience. This is what much of the += ballyhoo is
>>all about.
> 
> From my perspective, that is simply your persistent misunderstanding
> of the "+= ballyhoo". I have given several good reasons in favor of
> "+=" (or ":+"). Note that "saving keystrokes" is not one of them,
> despite the persistent bleatings to the contrary. And what is wrong
> with "programmer convenience," when there is no downside? Do you think
> "programmer inconvenience" is an inherent virtue?
> 
> Here are the reasons I have given in favor of "+=":

Well, this issue has already been beaten to death in
another thread, and I didn't find any of the reasons
compelling. But let's leave it to the other thread to
thrash it out. ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-05 19:08                     ` Russ
  2003-11-05 21:11                       ` Mark Lorenzen
  2003-11-05 21:20                       ` Warren W. Gay VE3WWG
@ 2003-11-05 21:48                       ` Alexandre E. Kopilovitch
  2 siblings, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-05 21:48 UTC (permalink / raw)
  To: comp.lang.ada

Russ wrote:

> By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
> chances are he is not a top-notch programmer. But Ada forces such bad
> style, and that's bad style itself.

It is certainly a very interesting topic - who is ordained to decide whether
someone is a top-notch programmer or not -:) , but leaving that point aside,
I just want to remind that Ada does not force that (x := x + 2) style. Moreover,
in many cases Inc(x, 2) or Incr(x,2) is surely preferable. Personally, I use
both forms, using the x := x + 2 form when I perceive that the formula may be
different in some, more or less probable, variation of the problem; and I use
Pascal-like form Inc(x,2) when I consider that operation as charasteristic
for the problem (or particular solution method) at that point.




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-11-05 21:11                       ` Mark Lorenzen
@ 2003-11-06  3:10                         ` Russ
  2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
                                             ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-06  3:10 UTC (permalink / raw)


Mark Lorenzen <mark.lorenzen@ofir.dk> wrote in message news:<m365hyh65o.fsf@niflheim.malonet>...
> 18k11tm001@sneakemail.com (Russ) writes:
> 
> [cut]
> 
> > By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
> > chances are he is not a top-notch programmer. But Ada forces such bad
> > style, and that's bad style itself.
> 
> I allways write 'x = x + 2' instead of 'x += 2'. I simply despise the
> latter form, as it is unreadable and "hackish".
> 
> Luckily Ada does not encourage such bad style.

Oh, so x += 2 is "unreadable", eh? Do you have any idea what that says
about your intelligence? You might as well just blurt out, "I'm an
idiot".

I hope you are near the end of your career too, because otherwise you
have a tough row to hoe, considering that the four or five most
popular general-purpose programming languages consider "+=" standard.
Or do you expect to use Ada for the rest of your career? Good luck.

Folks, if you don't like my attitude, I really don't give a flying you
know what. Quit making assinine assertions in reply to my posts, and
I'll quit calling you on them.



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

* Re: Clause "with and use"
  2003-11-06  3:10                         ` Russ
@ 2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
  2003-11-06 18:52                             ` Russ
  2003-11-06 11:53                           ` Stephane Richard
  2003-11-07  0:09                           ` Mark Lorenzen
  2 siblings, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-06  8:26 UTC (permalink / raw)


Russ wrote:

>Oh, so x += 2 is "unreadable", eh?

<beatles>Yes, it is.</beatles>

>Do you have any idea what that says
>about your intelligence?

Referring to some other posting from you that follow the same style,
I'd say: "Yes, I am an idiot." Satisfied?

>You might as well just blurt out, "I'm an idiot".

Well, and after all I've read from you, you might as well say, "All
Ada programmers are idiots". Be it so. A lot of people have given you
a lot of reasons why this "+=" operators will *not* make it into the
language.


Vinzent.



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

* Re: Clause "with and use"
@ 2003-11-06  8:39 christoph.grein
  0 siblings, 0 replies; 385+ messages in thread
From: christoph.grein @ 2003-11-06  8:39 UTC (permalink / raw)
  To: comp.lang.ada

"Vinzent 'Gadget' Hoefler" <ada.rocks@jlfencey.com> wrote:

> Russ wrote:
> >Do you have any idea what that says
> >about your intelligence?
> 
> Referring to some other posting from you that follow the same style,
> I'd say: "Yes, I am an idiot." Satisfied?
> 
> >You might as well just blurt out, "I'm an idiot".
> 
> Well, and after all I've read from you, you might as well say, "All
> Ada programmers are idiots". Be it so.

Well said :-) I know I'm an idiot, too, but I like it...

And now all together:

We are idiots, idiots, idiots, and we love it so... (on a tune from West Side 
Story)



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

* Re: Clause "with and use"
  2003-11-04 16:08                         ` Marius Amado Alves
@ 2003-11-06 10:10                           ` Preben Randhol
  2003-11-18  0:07                           ` Brian Gaffney
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-06 10:10 UTC (permalink / raw)


On 2003-11-04, Marius Amado Alves <amado.alves@netcabo.pt> wrote:
> How about
>
>   with ...; use idem;
>
> (cf. thread on compound assignment)

Doesn't sound like a good idea as it is two statements.

with A;
with B;
use idem;
use idem;

won't work for example.

But seriously are you all using so bad editors?

Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-04 13:16                   ` Hyman Rosen
  2003-11-04 15:09                     ` Vinzent 'Gadget' Hoefler
  2003-11-04 15:49                     ` Wes Groleau
@ 2003-11-06 10:55                     ` Preben Randhol
  2003-11-06 13:03                       ` Hyman Rosen
  2 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-06 10:55 UTC (permalink / raw)


On 2003-11-04, Hyman Rosen <hyrosen@mail.com> wrote:
> Preben Randhol wrote:
>> with Ada.Text_IO;       use Ada.Text_IO;
>
> The usual arguments of extra verbosity leading to clarity
> don't apply to with/use. The problem is that the things in
> the use clause don't necessarily have to be identical to
> the things in the with clause. That means every time you
> see a with/use set, you must verify that the packages in
> both are in fact identical, and if they are not, figure
> out why that is so.

I don't understand what you mean. Could you clarify this?

Do you mean that if you do:

with packA; use packA;
with packB; use packB;

and both packages has a procedure P you won't see in the code from which
package you called it? In that case you get:

   ambiguous expression (cannot resolve "p")
   possible interpretation at packb.ads:2
   possible interpretation at packa.ads:2
   compilation error

or do you mean that if packA had a child package B and you wrote :

   with packA; use packA
   use B;

then you get:

   "b" is undefined
   compilation error

So what do you relaly mean?

Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
@ 2003-11-06 11:11 amado.alves
  0 siblings, 0 replies; 385+ messages in thread
From: amado.alves @ 2003-11-06 11:11 UTC (permalink / raw)
  To: comp.lang.ada

Preben Randhol wrote:

>> How about
>>
>>   with ...; use idem;
>>
>> (cf. thread on compound assignment)

> Doesn't sound like a good idea as it is two statements.
>
> with A;
> with B;
> use idem;
> use idem;
>
> won't work for example.

I was kinda kiding. Meaning this is entirely experimental and academic. I'm perfectly happy with the way things currently are. In the experimental spirit I like "idem" (actually my favorite is '@') for the "lvalue". And in the above example I was testing a generalization of it to... hmmm... "the latest useful thing". So your counterexample would be equivalent to

with A;
with B;
use B;
use B;

I wonder if this is even legal.

In music writing there is a symbol for this:

o//
//o

I think is only for the latest *bar*, so it is not generalized.

> But seriously are you all using so bad editors?

My degree of satisfaction with existing editors is below say 70% (GPS and emacs included). I'll write the perfect editor some day...




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

* Re: Clause "with and use"
  2003-11-06  3:10                         ` Russ
  2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-06 11:53                           ` Stephane Richard
  2003-11-06 13:36                             ` Marin David Condic
  2003-11-07  0:09                           ` Mark Lorenzen
  2 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-06 11:53 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4953 bytes --]

"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311051910.4913df78@posting.google.com...
> Mark Lorenzen <mark.lorenzen@ofir.dk> wrote in message
news:<m365hyh65o.fsf@niflheim.malonet>...
> > 18k11tm001@sneakemail.com (Russ) writes:
> >
> > [cut]
> >
> Oh, so x += 2 is "unreadable", eh? Do you have any idea what that says
> about your intelligence? You might as well just blurt out, "I'm an
> idiot".

*** Don't you think that's pushing it?  You're right, 4 out 5 languages do
have the += or some form of it.  Which proves the old saying "Sometimes, the
majority means that all the fools are on the same side".

*** When this concept of += like operators came out, it wasn't designed to
be readable, but merely quicker to type, a simple programmer's convenience
(dare I say Author's convenience as readability was not in it's job
description.  performance wise, recently I haven't tested it, but not all
that long ago, x+=2 and x=x+2 produced the exact same bytecode so it wasn't
designed for being faster than the regular x=x+2. Maybe that changed today
(maybe a little while back too) but not at it's creation...

*** Look at a bit of history, when we say C/C++ became popular for the wrong
reasons, language rich features capacities, even performances were not even
considered when selecting C or C++ as the language.  Like I said elsewhere
it was all based on a "monkey see monkey do" concept.  "Hey we'll use C++
because this and/or that company is using it.  You call that research to
back up their decisions? I beg to differ.  I'm not taking anything out of C
and C++ (well maybe a bit out of C++, it's the most technological patch work
I've ever seen and since it was the only thing available to upgrade C from
it got to be standard, again read the history).  But C and C++ do have their
role in the programming world, the problems started when they tried to bring
these two out of their intended domains and out in the open as a general
purpose language thinking that "hey, if it can do low level OS operations it
can do the rest.  In a way it can, however that's when the patch work
started.

>
> I hope you are near the end of your career too, because otherwise you
> have a tough row to hoe, considering that the four or five most
> popular general-purpose programming languages consider "+=" standard.
> Or do you expect to use Ada for the rest of your career? Good luck.
>
*** And you expect to use C++ for the rest of yours?  Like I mentionned, all
the wrong reasons went into making C/C++ "the language" it's starting to
show, companies are starting to realize that certain decisions were perhaps
not reflected upon way back when.  For the sames reasons C went out of it's
intended usage into the general purpose field, so did Ada, Pascal, and I
could just keep on naming languages here, they all did it for the same
reasons, to stay alive so to speak.  How ever the others were already
"general purpose" languages, so they're next logical step was Low level
system access and compete with C.

> Folks, if you don't like my attitude, I really don't give a flying you
> know what. Quit making assinine assertions in reply to my posts, and
> I'll quit calling you on them.

*** It's not a question of attitude per se, everyone's entitled to his or
her own attitude, part of our individuality.  The problem is in your
prejudice against anyone who doesn't agree with you.  As programmers and
software engineers, we're all entitled to select the best tool for the job
at hand, and I've seen first hand reasons why C/C++ should not have been
picked for select given jobs.  It's ok to say C/C++ is good, it's not ok to
say that everything else is crap.  Much as you'd like to believe it, C and
C++ are not "THE" languages to use and everything else and fisher price
programming.  Many times I've seen programmers start to develop something in
C or C++ and quit during the debugging session cause they thought they'd
never see the end of it.  C and C++, like all other languages, have to stop
believing their own press so to speak and start evolving, and I dont mean
into C# either, that would be going backwords in my book.

*** Take a look at the D language, it looks alot like C/C++ but at least
it's got measures and grammar elements to protect it from itself like
conditions to be met prior to calling a sub routine expressed in some form
of contract between the caller and the callee  just that is a big step in
the right direction. and I'm sorry to say that C and C++ are not the ones
that took that big step (at least not the first ones).  But that's the kind
of things C and C++ needs to broaden it's horizons.

*** And no I don't think you're an idiot because of what you believe, it's
your choice, as it is ours to choose the language we want.

"It's not the language you use that makes you the programmer you are, it's
how you use it".

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com







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

* Re: Clause "with and use"
  2003-11-06 10:55                     ` Preben Randhol
@ 2003-11-06 13:03                       ` Hyman Rosen
  2003-11-06 15:35                         ` Preben Randhol
                                           ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-06 13:03 UTC (permalink / raw)


Preben Randhol wrote:
> So what do you relaly mean?

I mean that an Ada program can contain
     with a, b, c, d;
     use  a, b, c, d;
and it may also contain
     with a, b, c, d;
     use  a,    c, d;
See <http://www.scism.sbu.ac.uk/law/Section2/chap4/s2c4p4.html>
for an example of the latter form. It contains
     with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
     use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;

So upon seeing a with/use pair, I have to read it carefully to
see if the two lists are the same, and if they are not, try to
figure out why that may be.

I was contrasting this with the repetition Ada requires, for
example, at the end of a function, where you know that the
repeated name must match the subprogram name, so you don't
really have to think about it.




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

* Re: Clause "with and use"
  2003-11-06 11:53                           ` Stephane Richard
@ 2003-11-06 13:36                             ` Marin David Condic
  2003-11-07  1:15                               ` Stephane Richard
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-06 13:36 UTC (permalink / raw)


Actually, if you look at the history of it, C got popular because it was 
given away free along with Unix at a time when people were regularly 
charging in 5 to 6 figures for a compiler. C was cheap, so it got used a 
lot. C++ got popular because it was upward compatible with C and 
provided more capabilities, so the large body of C programmers could 
transport their favorite code and all their skills to something new. 
Java got popular for a variety of reasons, not the least of which was 
that Sun spend large amounts of money marketing it. But part of the 
popularity was that it was C/C++-ish and hence all the C/C++ guys were 
staring at what they were always used to seeing.

It didn't really have much to do with either inherent goodness of some 
cryptic operators nor was it strictly "monkey see - monkey do". It had a 
lot more to do with simple economics and an natural desire on the part 
of people to use what is familiar to them.

In a sense, the "monkey see - monkey do" factor is also economic. I'd 
describe it more as a "Get on the bandwagon" phenomenon. Once a software 
thing crosses a certain threshold of popularity, there are economic 
advantages to using it even if it is *not* the best technology. (And 
lets face it, that is what is going to drive the choices made by 
businesses everywhere. Ada should learn that lesson well and figure out 
how to deal with it.) A larger user base means overall lower cost for 
acquisition of the technology, more plentiful and less expensive 
supporting technology, more interoperability with other tools (at less 
cost), more plentiful (and hence less expensive) technology experts, 
etc, etc, etc,. Its Supply and Demand, man! You can *never* escape it.

That's why Ada can stand around arguing about how it is less expensive 
overall because of maintainability and nobody is paying much attention. 
Two or three other factors weigh in: "Yeah, *maybe* it saves some money 
down the line, but that's all guesswork & speculation and maybe it 
doesn't really save that much - but I *can* count the up-front costs and 
there Ada loses." or "I don't care about maintainability, because I 
won't be maintaining anything..." or "Maintenance is nothing to me - 
Time To Market is *everything* and Ada loses because I don't have the 
infrastructure..."

These are the sort of issues that go into language selection at the 
"Macro" level (larger business users). At the "Micro" level (individual 
programmers with their home-hobbyist or work/nobody-cares types of 
needs) you have some different factors - but I dare say they won't be 
"Engineering" or "Business Analysis" factors. Much more likely: "What do 
I have available cheap or free and what is familiar to me so I won't 
have to learn a bunch of new stuff..." Understand the market and it 
helps sort out what Ada should be hoping to achieve. Something like "+=" 
doesn't buy much as far as I can see.

MDC


Stephane Richard wrote:
> 
> *** Look at a bit of history, when we say C/C++ became popular for the wrong
> reasons, language rich features capacities, even performances were not even
> considered when selecting C or C++ as the language.  Like I said elsewhere
> it was all based on a "monkey see monkey do" concept.  "Hey we'll use C++
> because this and/or that company is using it.  You call that research to
> back up their decisions? I beg to differ.  I'm not taking anything out of C

-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
     basically a Microsoft operating system - it runs for a while and
     then crashes and reboots. By design, no less. Neo is just a
     memory leak that's too hard to fix, so they left him in... The
     users don't complain because they're packed in slush and kept
     sedated"

         --  Marin D. Condic
======================================================================




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

* Re: Clause "with and use"
  2003-11-06 13:03                       ` Hyman Rosen
@ 2003-11-06 15:35                         ` Preben Randhol
  2003-11-06 17:26                         ` Warren W. Gay VE3WWG
  2003-11-06 22:42                         ` Dale Stanbrough
  2 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-06 15:35 UTC (permalink / raw)


On 2003-11-06, Hyman Rosen <hyrosen@mail.com> wrote:
> Preben Randhol wrote:
>> So what do you relaly mean?
>
> I mean that an Ada program can contain
>      with a, b, c, d;
>      use  a, b, c, d;
> and it may also contain
>      with a, b, c, d;
>      use  a,    c, d;
> See <http://www.scism.sbu.ac.uk/law/Section2/chap4/s2c4p4.html>
> for an example of the latter form. It contains
>      with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
>      use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
>
> So upon seeing a with/use pair, I have to read it carefully to
> see if the two lists are the same, and if they are not, try to
> figure out why that may be.
>
> I was contrasting this with the repetition Ada requires, for
> example, at the end of a function, where you know that the
> repeated name must match the subprogram name, so you don't
> really have to think about it.
>

I still don't understand what you mean. You don't have to "use" anything
you "with". With "use" one do not have to write:

   with Ada.Text_IO;

   -- ...

   Ada.Text_IO.Put_Line ("Some text");

but only:

   with Ada.Text_IO; use Ada.Text_IO;

   -- ...

   Put_Line ("Some text");

however a good rule is to "use" as little as possible.


Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-06 13:03                       ` Hyman Rosen
  2003-11-06 15:35                         ` Preben Randhol
@ 2003-11-06 17:26                         ` Warren W. Gay VE3WWG
  2003-11-06 20:38                           ` Gautier Write-only
  2003-11-06 22:42                         ` Dale Stanbrough
  2 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-06 17:26 UTC (permalink / raw)


Hyman Rosen wrote:

> Preben Randhol wrote:
> 
>> So what do you relaly mean?
> 
> I mean that an Ada program can contain
>     with a, b, c, d;
>     use  a, b, c, d;
> and it may also contain
>     with a, b, c, d;
>     use  a,    c, d;
> See <http://www.scism.sbu.ac.uk/law/Section2/chap4/s2c4p4.html>
> for an example of the latter form. It contains
>     with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
>     use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> 
> So upon seeing a with/use pair, I have to read it carefully to
> see if the two lists are the same, and if they are not, try to
> figure out why that may be.

The other problem is that you don't always want to "use"
every with. Consider:

WITH ADA.STRINGS.FIXED;

I may just want:

USE ADA.STRINGS.FIXED;

but not:

USE ADA.STRINGS;

Why? Because ADA.STRINGS.LEFT may conflict with some other
definition I have in my code named LEFT. However, I may
want to use ADA.STRINGS.FIXED.INDEX() for some reason,
perhaps frequently so, that a USE statement makes sense
within the block where it is referenced. Where I need
ADA.STRINGS.LEFT, I can use the fully qualified path
to it.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-06 18:52                             ` Russ
  2003-11-06 20:03                               ` Martin Dowie
  2003-11-10  7:47                               ` Vinzent 'Gadget' Hoefler
  0 siblings, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-06 18:52 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<bod0mk$1cg6bn$2@ID-175126.news.uni-berlin.de>...
> Russ wrote:
> 
> >Oh, so x += 2 is "unreadable", eh?
> 
> <beatles>Yes, it is.</beatles>
> 
> >Do you have any idea what that says
> >about your intelligence?
> 
> Referring to some other posting from you that follow the same style,
> I'd say: "Yes, I am an idiot." Satisfied?
> 
> >You might as well just blurt out, "I'm an idiot".
> 
> Well, and after all I've read from you, you might as well say, "All
> Ada programmers are idiots". Be it so. A lot of people have given you
> a lot of reasons why this "+=" operators will *not* make it into the
> language.

If you honestly find "+=" to be "unreadable," then I'd say that, yes,
you are indeed an idiot. I certainly would never hire a programmer who
has to grapple with the meaning of "+=". For Pete's sake, I have real
work to do. Would you hire such a person? If so, I can't imagine how
you could get any significant amount of work done. Go ask anyone who
hires programmers, and ask them if they would hire anyone who
struggles with the meaning of "+=". Having said that, I don't think
for a second that anyone here *really* has trouble understanding "+=".
That means that I don't really consider you idiots, I am just baffled
as to why you insist on portraying yourselves as such. Now, if you
quote me on this, please keep this entire paragraph intact.



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

* Re: Clause "with and use"
  2003-11-06 18:52                             ` Russ
@ 2003-11-06 20:03                               ` Martin Dowie
  2003-11-07  0:22                                 ` Robert I. Eachus
                                                   ` (2 more replies)
  2003-11-10  7:47                               ` Vinzent 'Gadget' Hoefler
  1 sibling, 3 replies; 385+ messages in thread
From: Martin Dowie @ 2003-11-06 20:03 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311061052.772a095@posting.google.com...
> If you honestly find "+=" to be "unreadable," then I'd say that, yes,
> you are indeed an idiot. I certainly would never hire a programmer who
> has to grapple with the meaning of "+=". For Pete's sake, I have real
> work to do. Would you hire such a person? If so, I can't imagine how
> you could get any significant amount of work done. Go ask anyone who
> hires programmers, and ask them if they would hire anyone who
> struggles with the meaning of "+=". Having said that, I don't think
> for a second that anyone here *really* has trouble understanding "+=".
> That means that I don't really consider you idiots, I am just baffled
> as to why you insist on portraying yourselves as such. Now, if you
> quote me on this, please keep this entire paragraph intact.

I have noticed that although such short forms are available to Python
users (another language I quite like...), I've yet to find one occasion
when it has actually been used. And that's largely from browsing from
the 'official' Python homepage and its 'de-facto' standard libraries.

So why don't they use it? I don't no for sure but one of the explicit
aims of Python was to promote readability.

Perhaps, Russ, you could instil a vigorous debate over at c.l.p.
and ask them why they are being so 'idiotic'? ;-)

So, Russ, have read AI-318? Do you still think that "+=",etc is
still necessary, now there is a mechanism to avoid that extra deep
copy for things like matrices/vectors?





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

* Re: Clause "with and use"
  2003-11-04  7:28   ` Vinzent 'Gadget' Hoefler
@ 2003-11-06 20:12     ` Gautier Write-only
  0 siblings, 0 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-06 20:12 UTC (permalink / raw)


> Dmitry A. Kazakov wrote:
> 
> >use A.B.C.D;
> >
> >implies:
> >
> >with A.B.C.D;
> >
> >It was rejected. Does anybody remember why?

Vinzent 'Gadget' Hoefler:

> I don't know if this was the reason, but AFAICS you can't "with" a
> package inbetween a body, but you can locally *use* a package in a
> declare block:
> 
> |declare
> |   use P;
> |   ...
> 
> So this sort of use would at least require a with-declaration in the
> beginning of the package. CMIIW, but all the "with"s in the beginning
> just declare package "dependencies", nothing more.

Right, but we are discussing explicitely ;-) about "use" as a context
clause (before any unit), not the "use" as a declaration.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-06 17:26                         ` Warren W. Gay VE3WWG
@ 2003-11-06 20:38                           ` Gautier Write-only
  2003-11-06 21:12                             ` Warren W. Gay VE3WWG
                                               ` (3 more replies)
  0 siblings, 4 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-06 20:38 UTC (permalink / raw)


> Hyman Rosen:

[...]
> > for an example of the latter form. It contains
> >     with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
> >     use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> >
> > So upon seeing a with/use pair, I have to read it carefully to
> > see if the two lists are the same, and if they are not, try to
> > figure out why that may be.

Warren W. Gay VE3WWG:
> The other problem is that you don't always want to "use"
> every with. Consider [...]

It is exactly what the author of the above code wanted,
not to "use" ADA.CALENDAR. *This* would be a lot clearer if only

with ADA.CALENDAR;
use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;

was sufficient (this is the "implicit 'with'" variant) - or

with ADA.CALENDAR;
with and use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;

And the list can be long in *certain* programs, *not* the
safety-critical code or whatever "special" code where
anyway an Ada subset without "use" at all is preferable,
*but* the "everyday programming" where some general-purpose
packages for
  - the Text_IO stuff
  - the Floating-point maths
  - GUI stuff
are obviously better to be "use"-d at the unit level.
And this is still a *minority* of packages, the other ones,
specialized, would be of course only "with"ed by normal persons.

All that is a question of style, project, taste, security,
about the usage of "use", which is already in the language.
The purpose of the proposal is not to reintroduce "use" or
changing any style rule, but *only* to make the life
easier and programs clearer when (and only when) we use
"use" as a context clause.
The question of desirability of "use" in such or such context
or for such or such package is *another* problem - and sorry,
"use" exists, it won't be removed, but if one wants one can
avoid it, at worst with a language subset, and it won't hurt
anybody.

The whole debate has (as expected ;-) shifted from
"how to make use-as-a-context-clause easier"
to
"to use or not to use"
or even
"to += or not to +=".
Please (dear participants) remain on-topic...
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-06 20:38                           ` Gautier Write-only
@ 2003-11-06 21:12                             ` Warren W. Gay VE3WWG
  2003-11-07  7:08                             ` Russ
                                               ` (2 subsequent siblings)
  3 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-06 21:12 UTC (permalink / raw)


Gautier Write-only wrote:
>>Hyman Rosen:
> [...]
> 
>>>for an example of the latter form. It contains
>>>    with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
>>>    use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
>>>
>>>So upon seeing a with/use pair, I have to read it carefully to
>>>see if the two lists are the same, and if they are not, try to
>>>figure out why that may be.
> 
> Warren W. Gay VE3WWG:
> 
>>The other problem is that you don't always want to "use"
>>every with. Consider [...]
> 
> It is exactly what the author of the above code wanted,
> not to "use" ADA.CALENDAR. *This* would be a lot clearer if only
> 
> with ADA.CALENDAR;
> use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> 
> was sufficient (this is the "implicit 'with'" variant) - or
> 
> with ADA.CALENDAR;
> with and use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;

But as soon as you designate that, someone else will
want another variation of your "with and use" to use
all elements in the path. ;-)

> All that is a question of style, project, taste, security,
> about the usage of "use", which is already in the language.
> The purpose of the proposal is not to reintroduce "use" or
> changing any style rule, but *only* to make the life
> easier and programs clearer when (and only when) we use
> "use" as a context clause.

Well, I think the group has already responded to this
(and more), so I won't repeat my own opinion about
it. ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-06 13:03                       ` Hyman Rosen
  2003-11-06 15:35                         ` Preben Randhol
  2003-11-06 17:26                         ` Warren W. Gay VE3WWG
@ 2003-11-06 22:42                         ` Dale Stanbrough
  2 siblings, 0 replies; 385+ messages in thread
From: Dale Stanbrough @ 2003-11-06 22:42 UTC (permalink / raw)


In article <1068123815.335508@master.nyc.kbcfp.com>,
 Hyman Rosen <hyrosen@mail.com> wrote:

> I mean that an Ada program can contain
>      with a, b, c, d;
>      use  a, b, c, d;
> and it may also contain
>      with a, b, c, d;
>      use  a,    c, d;


I always use the style...

   with a; use a;
   with b;
   with c; use c;
   with d; use d;

so that you don't have to match withs/uses together.

I also typically block the withs so that all of the ada
routines go together...

   with Ada.Text_IO;           use Ada.Text_IO;
   with Ada.Unbounded_Strings; use Ada.Unbounded_Strings;


   with Domain_Specific_Package; use Domain_Specific_Package;


etc. which I find increases readability enormously.

Dale

-- 
dstanbro@spam.o.matic.bigpond.net.au



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

* Re: Clause "with and use"
  2003-11-06  3:10                         ` Russ
  2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
  2003-11-06 11:53                           ` Stephane Richard
@ 2003-11-07  0:09                           ` Mark Lorenzen
  2 siblings, 0 replies; 385+ messages in thread
From: Mark Lorenzen @ 2003-11-07  0:09 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) writes:

> Mark Lorenzen <mark.lorenzen@ofir.dk> wrote in message news:<m365hyh65o.fsf@niflheim.malonet>...
>> 18k11tm001@sneakemail.com (Russ) writes:
>> 
>> [cut]
>> 
>> > By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
>> > chances are he is not a top-notch programmer. But Ada forces such bad
>> > style, and that's bad style itself.
>> 
>> I allways write 'x = x + 2' instead of 'x += 2'. I simply despise the
>> latter form, as it is unreadable and "hackish".
>> 
>> Luckily Ada does not encourage such bad style.
>
> Oh, so x += 2 is "unreadable", eh? Do you have any idea what that says
> about your intelligence? You might as well just blurt out, "I'm an
> idiot".
>
> I hope you are near the end of your career too, because otherwise you
> have a tough row to hoe, considering that the four or five most
> popular general-purpose programming languages consider "+=" standard.
> Or do you expect to use Ada for the rest of your career? Good luck.

I am at the beginning of my career and I not care about what is
popular or not. I only care about correctness, formal methods,
calculi, algebra, ML, Ada and SPARK. Sadly I do not work with any of
these things, but I still have at least 30-35 years to find my
luck. If you want to know, then I am programmimg in C++ at the
moment. This includes using the Standard Template Library with its
hackish ++ operators on iterators.

>
> Folks, if you don't like my attitude, I really don't give a flying you
> know what. Quit making assinine assertions in reply to my posts, and
> I'll quit calling you on them.

But you are making such assertions yourself:

>> > By the way, if a C/C++ programmer writes x = x + 2; in lieu of x += 2,
>> > chances are he is not a top-notch programmer. But Ada forces such bad
>> > style, and that's bad style itself.

- Mark Lorenzen



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

* Re: Clause "with and use"
  2003-11-06 20:03                               ` Martin Dowie
@ 2003-11-07  0:22                                 ` Robert I. Eachus
  2003-11-07  7:02                                   ` Martin Dowie
  2003-11-07  5:04                                 ` Russ
  2003-11-07 20:31                                 ` Russ
  2 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-07  0:22 UTC (permalink / raw)


Martin Dowie wrote:

> So, Russ, have read AI-318? Do you still think that "+=",etc is
> still necessary, now there is a mechanism to avoid that extra deep
> copy for things like matrices/vectors?

For the record, AI-318 as written applies to limited and unlimited 
types.  But the current ARG discussion has determined that there are 
significant implementation problems with requiring this feature to be 
used with non-limited return types.  I don't know what the final 
resolution will be.  It could either allow implementations to do the 
"extra" copy when the type is non-limited, or involve a notation that 
made it clear in the subprogram declaration that this style of return is 
being used.

Sorry this is one of those cases where the ARG has to be concerned about 
the "real" issues of language maintenance.  (The final resolution might 
be to permit the notation for all cases, and require the "generate 
return value in place" behaviour for limited types only.  That way a 
compiler could do the optimization if it can tell at the point of any 
calls that the function body is written this way.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-06 13:36                             ` Marin David Condic
@ 2003-11-07  1:15                               ` Stephane Richard
  0 siblings, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-07  1:15 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4867 bytes --]

I guess it depends on the point of view, from my studies and views and
career, monkey see monkey do thing was quite common.  Started as "Canadians
used it cause americans used it (believe it or not) then companies used it
because other "allied" companies used it and even in some odd cases,
companies used it because "competition" used it?

P.S. I got my quote not in my signature ;-)

-- 
"To Err is human, to really screw up, you need C++!" ;-)

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FAA4E46.5090206@noplace.com...
> Actually, if you look at the history of it, C got popular because it was
> given away free along with Unix at a time when people were regularly
> charging in 5 to 6 figures for a compiler. C was cheap, so it got used a
> lot. C++ got popular because it was upward compatible with C and
> provided more capabilities, so the large body of C programmers could
> transport their favorite code and all their skills to something new.
> Java got popular for a variety of reasons, not the least of which was
> that Sun spend large amounts of money marketing it. But part of the
> popularity was that it was C/C++-ish and hence all the C/C++ guys were
> staring at what they were always used to seeing.
>
> It didn't really have much to do with either inherent goodness of some
> cryptic operators nor was it strictly "monkey see - monkey do". It had a
> lot more to do with simple economics and an natural desire on the part
> of people to use what is familiar to them.
>
> In a sense, the "monkey see - monkey do" factor is also economic. I'd
> describe it more as a "Get on the bandwagon" phenomenon. Once a software
> thing crosses a certain threshold of popularity, there are economic
> advantages to using it even if it is *not* the best technology. (And
> lets face it, that is what is going to drive the choices made by
> businesses everywhere. Ada should learn that lesson well and figure out
> how to deal with it.) A larger user base means overall lower cost for
> acquisition of the technology, more plentiful and less expensive
> supporting technology, more interoperability with other tools (at less
> cost), more plentiful (and hence less expensive) technology experts,
> etc, etc, etc,. Its Supply and Demand, man! You can *never* escape it.
>
> That's why Ada can stand around arguing about how it is less expensive
> overall because of maintainability and nobody is paying much attention.
> Two or three other factors weigh in: "Yeah, *maybe* it saves some money
> down the line, but that's all guesswork & speculation and maybe it
> doesn't really save that much - but I *can* count the up-front costs and
> there Ada loses." or "I don't care about maintainability, because I
> won't be maintaining anything..." or "Maintenance is nothing to me -
> Time To Market is *everything* and Ada loses because I don't have the
> infrastructure..."
>
> These are the sort of issues that go into language selection at the
> "Macro" level (larger business users). At the "Micro" level (individual
> programmers with their home-hobbyist or work/nobody-cares types of
> needs) you have some different factors - but I dare say they won't be
> "Engineering" or "Business Analysis" factors. Much more likely: "What do
> I have available cheap or free and what is familiar to me so I won't
> have to learn a bunch of new stuff..." Understand the market and it
> helps sort out what Ada should be hoping to achieve. Something like "+="
> doesn't buy much as far as I can see.
>
> MDC
>
>
> Stephane Richard wrote:
> >
> > *** Look at a bit of history, when we say C/C++ became popular for the
wrong
> > reasons, language rich features capacities, even performances were not
even
> > considered when selecting C or C++ as the language.  Like I said
elsewhere
> > it was all based on a "monkey see monkey do" concept.  "Hey we'll use
C++
> > because this and/or that company is using it.  You call that research to
> > back up their decisions? I beg to differ.  I'm not taking anything out
of C
>
> -- 
> ======================================================================
> Marin David Condic
> I work for: http://www.belcan.com/
> My project is: http://www.jsf.mil/NSFrames.htm
>
> Send Replies To: m   o   d   c @ a   m   o   g
>                     c   n   i       c   .   r
>
>      "So if I understand 'The Matrix Reloaded' correctly, the Matrix is
>      basically a Microsoft operating system - it runs for a while and
>      then crashes and reboots. By design, no less. Neo is just a
>      memory leak that's too hard to fix, so they left him in... The
>      users don't complain because they're packed in slush and kept
>      sedated"
>
>          --  Marin D. Condic
> ======================================================================
>





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

* Re: Clause "with and use"
  2003-11-06 20:03                               ` Martin Dowie
  2003-11-07  0:22                                 ` Robert I. Eachus
@ 2003-11-07  5:04                                 ` Russ
  2003-11-07 20:31                                 ` Russ
  2 siblings, 0 replies; 385+ messages in thread
From: Russ @ 2003-11-07  5:04 UTC (permalink / raw)


"Martin Dowie" <martin.dowie@btopenworld.com> wrote in message news:<boe9es$ep5$1@hercules.btinternet.com>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311061052.772a095@posting.google.com...
> > If you honestly find "+=" to be "unreadable," then I'd say that, yes,
> > you are indeed an idiot. I certainly would never hire a programmer who
> > has to grapple with the meaning of "+=". For Pete's sake, I have real
> > work to do. Would you hire such a person? If so, I can't imagine how
> > you could get any significant amount of work done. Go ask anyone who
> > hires programmers, and ask them if they would hire anyone who
> > struggles with the meaning of "+=". Having said that, I don't think
> > for a second that anyone here *really* has trouble understanding "+=".
> > That means that I don't really consider you idiots, I am just baffled
> > as to why you insist on portraying yourselves as such. Now, if you
> > quote me on this, please keep this entire paragraph intact.
> 
> I have noticed that although such short forms are available to Python
> users (another language I quite like...), I've yet to find one occasion
> when it has actually been used. And that's largely from browsing from
> the 'official' Python homepage and its 'de-facto' standard libraries.
> 
> So why don't they use it? I don't no for sure but one of the explicit
> aims of Python was to promote readability.
> 
> Perhaps, Russ, you could instil a vigorous debate over at c.l.p.
> and ask them why they are being so 'idiotic'? ;-)

I like Python too, and I use it daily. I suspect the reason you didn't
find much use of += in the libraries is that it was just added in
version 2.1 or thereabouts. That would be something like a year or two
ago.

> So, Russ, have read AI-318? Do you still think that "+=",etc is
> still necessary, now there is a mechanism to avoid that extra deep
> copy for things like matrices/vectors?

No, I haven't, but I'll do so ASAP.



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

* Re: Clause "with and use"
  2003-11-07  0:22                                 ` Robert I. Eachus
@ 2003-11-07  7:02                                   ` Martin Dowie
  2003-11-07 19:04                                     ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Martin Dowie @ 2003-11-07  7:02 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:TMadnZEmI4tMeDeiRVn-gQ@comcast.com...
> For the record, AI-318 as written applies to limited and unlimited

Yes, it's also a "Work Item" so maybe there will be too much trouble
in implementing it - but I was really just trying to point out that the
ARG _is_ thinking about this sort of problem but doing it in an Ada!

:-)





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

* Re: Clause "with and use"
  2003-11-06 20:38                           ` Gautier Write-only
  2003-11-06 21:12                             ` Warren W. Gay VE3WWG
@ 2003-11-07  7:08                             ` Russ
  2003-11-07  8:48                             ` Preben Randhol
  2003-11-07 15:54                             ` Frank J. Lhota
  3 siblings, 0 replies; 385+ messages in thread
From: Russ @ 2003-11-07  7:08 UTC (permalink / raw)


Gautier Write-only <gautier@fakeaddress.nil> wrote in message news:<3FAAB12E.C7593B45@fakeaddress.nil>...
> > Hyman Rosen:
> 
> [...]
> > > for an example of the latter form. It contains
> > >     with ADA.TEXT_IO, ADA.CALENDAR, ADA.CHARACTERS.LATIN_1;
> > >     use  ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> > >
> > > So upon seeing a with/use pair, I have to read it carefully to
> > > see if the two lists are the same, and if they are not, try to
> > > figure out why that may be.
> 
> Warren W. Gay VE3WWG:
> > The other problem is that you don't always want to "use"
> > every with. Consider [...]
> 
> It is exactly what the author of the above code wanted,
> not to "use" ADA.CALENDAR. *This* would be a lot clearer if only
> 
> with ADA.CALENDAR;
> use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> 
> was sufficient (this is the "implicit 'with'" variant) - or
> 
> with ADA.CALENDAR;
> with and use ADA.TEXT_IO, ADA.CHARACTERS.LATIN_1;
> 
> And the list can be long in *certain* programs, *not* the
> safety-critical code or whatever "special" code where
> anyway an Ada subset without "use" at all is preferable,
> *but* the "everyday programming" where some general-purpose
> packages for
>   - the Text_IO stuff
>   - the Floating-point maths
>   - GUI stuff
> are obviously better to be "use"-d at the unit level.
> And this is still a *minority* of packages, the other ones,
> specialized, would be of course only "with"ed by normal persons.
> 
> All that is a question of style, project, taste, security,
> about the usage of "use", which is already in the language.
> The purpose of the proposal is not to reintroduce "use" or
> changing any style rule, but *only* to make the life
> easier and programs clearer when (and only when) we use
> "use" as a context clause.
> The question of desirability of "use" in such or such context
> or for such or such package is *another* problem - and sorry,
> "use" exists, it won't be removed, but if one wants one can
> avoid it, at worst with a language subset, and it won't hurt
> anybody.
> 
> The whole debate has (as expected ;-) shifted from
> "how to make use-as-a-context-clause easier"
> to
> "to use or not to use"
> or even
> "to += or not to +=".
> Please (dear participants) remain on-topic...

I'm with you on this one. Whether it's "with and use," with/use", or
simply "use" (as context clause) implies "with" (my preference), I
just don't see any rational argument against it. Programmers would
still be able to use "with" and "use" exactly as they do now.

You've heard of a "tin ear", but I think it takes a "tin eye" to
insist on repetitive "with" and "use" for things like basic I/O. Try
to imagine how many potential Ada users are turned off by such
clutter.

By the way, I am not the one who introduced "+=" on this thread. I
merely replied to someone else's offhand remark.



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

* Re: Clause "with and use"
  2003-11-06 20:38                           ` Gautier Write-only
  2003-11-06 21:12                             ` Warren W. Gay VE3WWG
  2003-11-07  7:08                             ` Russ
@ 2003-11-07  8:48                             ` Preben Randhol
  2003-11-08 10:56                               ` Gautier Write-only
  2003-11-08 20:08                               ` Russ
  2003-11-07 15:54                             ` Frank J. Lhota
  3 siblings, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-07  8:48 UTC (permalink / raw)


On 2003-11-06, Gautier Write-only <gautier@fakeaddress.nil> wrote:
> And the list can be long in *certain* programs, *not* the
> safety-critical code or whatever "special" code where

Well I usually write it like this:


with Gdk.Types.Keysyms;          use Gdk.Types.Keysyms;
with Gtk.Accel_Group;            use Gtk.Accel_Group;
with Gtk;                        use Gtk;
with Glib;                       use Glib;
with Gdk.Types;                  use Gdk.Types;
with Gtkada.Handlers;            use Gtkada.Handlers;
with Gtk.Enums;                  use Gtk.Enums;
with Program_Intl;               use Program_Intl;
with Window.Callbacks;
with Program_Callbacks;
with Settings.Gui;
with Welcome;
with Examine;
with Result;
with Listing;
with Listing.Setup;
with Setup;
with Gac.Help;

and I sort it so that all the with use pairs comes first.

I find that nice and readable.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-06 20:38                           ` Gautier Write-only
                                               ` (2 preceding siblings ...)
  2003-11-07  8:48                             ` Preben Randhol
@ 2003-11-07 15:54                             ` Frank J. Lhota
  3 siblings, 0 replies; 385+ messages in thread
From: Frank J. Lhota @ 2003-11-07 15:54 UTC (permalink / raw)


"Gautier Write-only" <gautier@fakeaddress.nil> wrote in message
news:3FAAB12E.C7593B45@fakeaddress.nil...
> ...
> The whole debate has (as expected ;-) shifted from
> "how to make use-as-a-context-clause easier"
> to
> "to use or not to use"
> or even
> "to += or not to +=".
> Please (dear participants) remain on-topic...

I've got it!

    with +:= use Ada.Text_Io;





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

* Re: Clause "with and use"
  2003-11-07  7:02                                   ` Martin Dowie
@ 2003-11-07 19:04                                     ` Robert I. Eachus
  2003-11-07 19:23                                       ` Martin Dowie
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-07 19:04 UTC (permalink / raw)


Martin Dowie wrote:

> Yes, it's also a "Work Item" so maybe there will be too much trouble
> in implementing it - but I was really just trying to point out that the
> ARG _is_ thinking about this sort of problem but doing it in an Ada!

Oh, I think it definitely will happen for functions returning limited 
objects--definitely useful for constructors.  The trick is to figure out 
how to allow compilers to take advantage of the potential optimization 
in the non-limited case while not requiring the "optimization" which may 
cost more than it helps.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-07 19:04                                     ` Robert I. Eachus
@ 2003-11-07 19:23                                       ` Martin Dowie
  2003-11-07 19:38                                         ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Martin Dowie @ 2003-11-07 19:23 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:kO6dnVFlLM5RcTaiRVn-tg@comcast.com...
> Martin Dowie wrote:
>
> > Yes, it's also a "Work Item" so maybe there will be too much trouble
> > in implementing it - but I was really just trying to point out that the
> > ARG _is_ thinking about this sort of problem but doing it in an Ada!
>
> Oh, I think it definitely will happen for functions returning limited
> objects--definitely useful for constructors.  The trick is to figure out
> how to allow compilers to take advantage of the potential optimization
> in the non-limited case while not requiring the "optimization" which may
> cost more than it helps.

I was also wondering how it would cope with non-limited types in
situations like:

   A := A * B;
   -- A and B are for the sake of arguement 'matrices', see the AI on
   -- matrices & vectors ;-)

In this case could you safely manipulate A 'in-situ'?..

I notice the Python RM is careful to talk of doing the in-situ work
'where possible'.






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

* Re: Clause "with and use"
  2003-11-07 19:23                                       ` Martin Dowie
@ 2003-11-07 19:38                                         ` Robert I. Eachus
  2003-11-07 22:46                                           ` Martin Dowie
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-07 19:38 UTC (permalink / raw)


Martin Dowie wrote:

> I was also wondering how it would cope with non-limited types in
> situations like:
> 
>    A := A * B;
>    -- A and B are for the sake of arguement 'matrices', see the AI on
>    -- matrices & vectors ;-)
> 
> In this case could you safely manipulate A 'in-situ'?..

You see why ammending the reference manual is no easy task.  Of course 
we don't want to allow or require a compiler to mess up in that case, 
but want to permit it to do: A := B * C; right.  (That doesn't mean I 
can easily define what "right" means if A, B, and C are bit vectors.)

Oh, and just to rain a bit more on the parade, if A in your example is a 
3x4 matrix and B is 4x3, then is it legal to raise Constraint_Error 
before doing the arithmetic?  A more interesting question is that 
obviously if A in A := B * C; is indefinite, you want it to get the 
"right" constraint from the "*" function.  But what if the return value 
is declared indefinite?  Can it take its constraints from the target object?

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-06 20:03                               ` Martin Dowie
  2003-11-07  0:22                                 ` Robert I. Eachus
  2003-11-07  5:04                                 ` Russ
@ 2003-11-07 20:31                                 ` Russ
  2003-11-07 22:59                                   ` Martin Dowie
                                                     ` (2 more replies)
  2 siblings, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-07 20:31 UTC (permalink / raw)


"Martin Dowie" <martin.dowie@btopenworld.com> wrote in message news:<boe9es$ep5$1@hercules.btinternet.com>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311061052.772a095@posting.google.com...
> > If you honestly find "+=" to be "unreadable," then I'd say that, yes,
> > you are indeed an idiot. I certainly would never hire a programmer who
> > has to grapple with the meaning of "+=". For Pete's sake, I have real
> > work to do. Would you hire such a person? If so, I can't imagine how
> > you could get any significant amount of work done. Go ask anyone who
> > hires programmers, and ask them if they would hire anyone who
> > struggles with the meaning of "+=". Having said that, I don't think
> > for a second that anyone here *really* has trouble understanding "+=".
> > That means that I don't really consider you idiots, I am just baffled
> > as to why you insist on portraying yourselves as such. Now, if you
> > quote me on this, please keep this entire paragraph intact.
> 
> I have noticed that although such short forms are available to Python
> users (another language I quite like...), I've yet to find one occasion
> when it has actually been used. And that's largely from browsing from
> the 'official' Python homepage and its 'de-facto' standard libraries.
> 
> So why don't they use it? I don't no for sure but one of the explicit
> aims of Python was to promote readability.

I will reply a second time to this post so that I may clarify a couple
of points.

As I wrote the first time, "+=" was introduced in Python only
relatively recently, which explains why it does not appear much in the
libraries.

> Perhaps, Russ, you could instil a vigorous debate over at c.l.p.
> and ask them why they are being so 'idiotic'? ;-)

Well, I see your little ";-)", so I realize that you are not
exhibiting overt hostility. Nevertheless, it is clear to me that you
and others have misconstrued what I wrote about idiots and idiocy.

I never called anyone an idiot for not using "+=" (as your statement
above implies), nor did I ever call anyone an idiot for opposing
augmented assignment operators in Ada. As far as I can recall, all I
said is that any professional programmer who has difficulty grasping
the concept of "+=", or who considers it "unreadable," must be an
idiot. I will add that I don't think anyone who is intelligent enough
to become a professional programmer could possibly fall into that
category.

Imagine you were interviewing a programmer for a job, and he mentioned
that he really has difficulty reading and understanding the meaning of
"+=". What would you think? Would you hire the guy?

Imagine a journalist is applying for a job with the local newspaper.
Now imagine that, in the course of the interview, he says, "I really
have trouble with some  vowels. I can handle a, e, and i, but o and u
throw me for a loop. And y is just completely unreadable!" Do you
suppose he would get the job? Well, that's comparable to a
professional programmer who has problems understanding "+=".

> So, Russ, have read AI-318? Do you still think that "+=",etc is
> still necessary, now there is a mechanism to avoid that extra deep
> copy for things like matrices/vectors?

I started to read it, but it's a bit too technical for me. Too many of
those wierd vowels. 8^) I don't know if it solves the problem of
efficient vector/matrix operations, but it if does, it sure looks a
lot more complicated to me than "+=" (or ":+"). If you have time, I
would appreciate an example of how it would be used for matrix
addition, for example. Just the calling statement using an overloaded
"+" will be sufficient.



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

* Re: Clause "with and use"
  2003-11-07 19:38                                         ` Robert I. Eachus
@ 2003-11-07 22:46                                           ` Martin Dowie
  2003-11-09  6:49                                             ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Martin Dowie @ 2003-11-07 22:46 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:M5SdnWLXHfI4aTaiRVn-hQ@comcast.com...
> Martin Dowie wrote:
> > I was also wondering how it would cope with non-limited types in
> > situations like:
> >
> >    A := A * B;
> >    -- A and B are for the sake of arguement 'matrices', see the AI on
> >    -- matrices & vectors ;-)
> >
> > In this case could you safely manipulate A 'in-situ'?..
>
> You see why ammending the reference manual is no easy task.

I've tried to write an AI *once*! :-) (for a cr*ppy little pragma) and
it took forever and no one was interested anyway (apart from me ;-)


> Of course
> we don't want to allow or require a compiler to mess up in that case,
> but want to permit it to do: A := B * C; right.  (That doesn't mean I
> can easily define what "right" means if A, B, and C are bit vectors.)
>
> Oh, and just to rain a bit more on the parade, if A in your example is a
> 3x4 matrix and B is 4x3, then is it legal to raise Constraint_Error
> before doing the arithmetic?

Absolutely - just like the AI for matrices/vectors says!


>  A more interesting question is that
> obviously if A in A := B * C; is indefinite, you want it to get the
> "right" constraint from the "*" function.  But what if the return value
> is declared indefinite?  Can it take its constraints from the target
object?

Sorry, it is v.late, I'm not sure what you mean here... Do you mean
'what if "B" and "C" are functions returning indefinite values?'






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

* Re: Clause "with and use"
  2003-11-07 20:31                                 ` Russ
@ 2003-11-07 22:59                                   ` Martin Dowie
  2003-11-07 23:33                                     ` Martin Dowie
  2003-11-08  8:22                                     ` Russ
  2003-11-09  6:59                                   ` Robert I. Eachus
  2003-11-09 14:27                                   ` Martin Dowie
  2 siblings, 2 replies; 385+ messages in thread
From: Martin Dowie @ 2003-11-07 22:59 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311071231.239981ea@posting.google.com...
> "Martin Dowie" <martin.dowie@btopenworld.com> wrote in message
news:<boe9es$ep5$1@hercules.btinternet.com>...
[snip]
> > So why don't they use it? I don't no for sure but one of the explicit
> > aims of Python was to promote readability.
>
> I will reply a second time to this post so that I may clarify a couple
> of points.
>
> As I wrote the first time, "+=" was introduced in Python only
> relatively recently, which explains why it does not appear much in the
> libraries.

Well, it's been >2 years... and so far I've seen little use of it yet - but
I stand to be corrected...


[snip]
> > Perhaps, Russ, you could instil a vigorous debate over at c.l.p.
> > and ask them why they are being so 'idiotic'? ;-)
>
> Well, I see your little ";-)", so I realize that you are not
> exhibiting overt hostility. Nevertheless, it is clear to me that you
> and others have misconstrued what I wrote about idiots and idiocy.

Sorry - just yanking your chain! :-)


[snip]
> > So, Russ, have read AI-318? Do you still think that "+=",etc is
> > still necessary, now there is a mechanism to avoid that extra deep
> > copy for things like matrices/vectors?
>
> I started to read it, but it's a bit too technical for me. Too many of
> those wierd vowels. 8^) I don't know if it solves the problem of
> efficient vector/matrix operations, but it if does, it sure looks a
> lot more complicated to me than "+=" (or ":+"). If you have time, I
> would appreciate an example of how it would be used for matrix
> addition, for example. Just the calling statement using an overloaded
> "+" will be sufficient.

That's exactly what it's getting at (provided the "+" operator is defined
correctly :-)

   A := B * C;  -- would not require an extra copy

where "*" is still defined as per any other function:

   function "*" (Left, Right : Real_Matrix) return Real_Matrix;

the difference would be in the body (as currently spec-ed):

   function "*" (Left, Right : Real_Matrix) return Real_Matrix is
   begin
      -- Do some checks on 'Left' and 'Right', raise Constraint_Error
      -- if erroneous
      declare
         Result : out Real_Matrix (..., ...);  -- Ranges based on Left and
Right
      begin
          return Result;  -- Actually returns a value 'in-situ'
      end;
   end "*";

BUT as per my other chat with RIE:

  A := A * C;  -- might very well require an 'extra' copy

but that extra copy may be necessary to do it 'right' - as in Python.

-- Martin





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

* Re: Clause "with and use"
  2003-11-07 22:59                                   ` Martin Dowie
@ 2003-11-07 23:33                                     ` Martin Dowie
  2003-11-08  8:22                                     ` Russ
  1 sibling, 0 replies; 385+ messages in thread
From: Martin Dowie @ 2003-11-07 23:33 UTC (permalink / raw)


"Martin Dowie" <martin.dowie@btopenworld.com> wrote in message
news:boh842$h8v$1@hercules.btinternet.com...
>          Result : out Real_Matrix (..., ...);  -- Ranges based on Left and

or "Result : return Real_Matrix (...);" - whatever the current syntax is.





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

* Re: Clause "with and use"
  2003-11-07 22:59                                   ` Martin Dowie
  2003-11-07 23:33                                     ` Martin Dowie
@ 2003-11-08  8:22                                     ` Russ
  2003-11-08  9:04                                       ` Martin Dowie
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-08  8:22 UTC (permalink / raw)


"Martin Dowie" <martin.dowie@btopenworld.com> wrote in message news:<boh842$h8v$1@hercules.btinternet.com>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311071231.239981ea@posting.google.com...

> > > So, Russ, have read AI-318? Do you still think that "+=",etc is
> > > still necessary, now there is a mechanism to avoid that extra deep
> > > copy for things like matrices/vectors?
> >
> > I started to read it, but it's a bit too technical for me. Too many of
> > those wierd vowels. 8^) I don't know if it solves the problem of
> > efficient vector/matrix operations, but it if does, it sure looks a
> > lot more complicated to me than "+=" (or ":+"). If you have time, I
> > would appreciate an example of how it would be used for matrix
> > addition, for example. Just the calling statement using an overloaded
> > "+" will be sufficient.
> 
> That's exactly what it's getting at (provided the "+" operator is defined
> correctly :-)

I certainly appreciate your taking the time to answer my question.

>    A := B * C;  -- would not require an extra copy

I'm just a bit puzzled as to why you immediately shifted from "+" to
"*". Correct me if I am wrong, but I believe that general matrix
multiplication is  impossible to do without a temporary matrix (or
other work space). Unlike matrix addition, you cannot simply overwrite
the elements of one of the input matrices. So although you can
eliminate a copy operation, you probably cannot eliminate the
construction and destruction of a temporary (assuming you require
reentrant code).

In any case, am I correct in assuming that AI-318 would eliminate
*both* the copy operation *and* the temporary for matrix addition (as
"+=" would do)? That is, can I use

   A := A + B; -- or
   A := B + C;

and avoid both the temporary and the copy operation? If so, then I
gladly concede that my case for "+=" (or ":+") is weakened. As you
know, however, I am a hard-core fanatic, and I still think ":+" is a
good idea even just for scalar operations.

By the way, it would be nice to retain the full efficiency even for
cascaded expressions such as

   A := B + C + D;

However, it is not critical because you can always break these
expressions up into simpler expressions. Of course, you will only do
that if you are aware of what causes temporaries and extra copying to
be generated.



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

* Re: Clause "with and use"
  2003-11-08  8:22                                     ` Russ
@ 2003-11-08  9:04                                       ` Martin Dowie
  0 siblings, 0 replies; 385+ messages in thread
From: Martin Dowie @ 2003-11-08  9:04 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311080022.7066f205@posting.google.com...
> >    A := B * C;  -- would not require an extra copy
>
> I'm just a bit puzzled as to why you immediately shifted from "+" to
> "*".

It was really, really late... Nothing sinister!


> In any case, am I correct in assuming that AI-318 would eliminate
> *both* the copy operation *and* the temporary for matrix addition (as
> "+=" would do)? That is, can I use
>
>    A := A + B; -- or
>    A := B + C;
> and avoid both the temporary and the copy operation?

That's my reading of it.





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

* Re: Clause "with and use"
  2003-11-07  8:48                             ` Preben Randhol
@ 2003-11-08 10:56                               ` Gautier Write-only
  2003-11-08 11:35                                 ` Preben Randhol
  2003-11-08 19:40                                 ` Russ
  2003-11-08 20:08                               ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-08 10:56 UTC (permalink / raw)


Preben Randhol:

> Well I usually write it like this:
> 
> with Gdk.Types.Keysyms;          use Gdk.Types.Keysyms;
> with Gtk.Accel_Group;            use Gtk.Accel_Group;
> with Gtk;                        use Gtk;
> with Glib;                       use Glib;
> with Gdk.Types;                  use Gdk.Types;
> with Gtkada.Handlers;            use Gtkada.Handlers;
> with Gtk.Enums;                  use Gtk.Enums;
> with Program_Intl;               use Program_Intl;
> with Window.Callbacks;
> with Program_Callbacks;
> with Settings.Gui;
> with Welcome;
> with Examine;
> with Result;
> with Listing;
> with Listing.Setup;
> with Setup;
> with Gac.Help;
> 
> and I sort it so that all the with use pairs comes first.
> 
> I find that nice and readable.

I agree that it's an optimum, but under the constraint
of the present syntax. I would be very happier if I could
have it so:

[with and ]use
  Gdk.Types, Gdk.Types.Keysyms,
  Gtk, Gtk.Accel_Group, Gtk.Enums,
  Gtkada.Handlers,
  Glib,
  Program_Intl;

with
  Window.Callbacks, Program_Callbacks,
  Settings.Gui,
  Welcome, Examine, Result,
  Listing, Listing.Setup, Setup,
  Gac.Help;

Wouldn't you ?
It's nicer, a bit easier to manage and hopefully the
title of the unit below will appear already on the first page
of a listing...

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-08 10:56                               ` Gautier Write-only
@ 2003-11-08 11:35                                 ` Preben Randhol
  2003-11-11 22:28                                   ` Gautier Write-only
  2003-11-08 19:40                                 ` Russ
  1 sibling, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-08 11:35 UTC (permalink / raw)


On 2003-11-08, Gautier Write-only <gautier@fakeaddress.nil> wrote:
>
> I agree that it's an optimum, but under the constraint
> of the present syntax. I would be very happier if I could
> have it so:
>
> [with and ]use
>   Gdk.Types, Gdk.Types.Keysyms,
>   Gtk, Gtk.Accel_Group, Gtk.Enums,
>   Gtkada.Handlers,
>   Glib,
>   Program_Intl;
>
> with
>   Window.Callbacks, Program_Callbacks,
>   Settings.Gui,
>   Welcome, Examine, Result,
>   Listing, Listing.Setup, Setup,
>   Gac.Help;
>
> Wouldn't you ?
> It's nicer, a bit easier to manage and hopefully the
> title of the unit below will appear already on the first page
> of a listing...

No, I wouldn't actually for these reasons:

   1. It doesn't become more readable.
   2. It doesn't make it easier to change a with-ed package to a
      with and use (or only use) package. 
   3. It isn't a feature which will imporve the language IMHO.
   4. I find the way I wrote the wit and use more readable and easier to
      modify (cut'n'paste, for example)
   5. It would totally break with Ada 95 (if use implicitly with a unit)
   6. Reason as stated in my signature.

Now I'll continue my ada-suit for vim so I can share it to other vim
users as soon as possible. 

I'll make the with use macro now ;-)

Preben

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-08 10:56                               ` Gautier Write-only
  2003-11-08 11:35                                 ` Preben Randhol
@ 2003-11-08 19:40                                 ` Russ
  2003-11-10  7:38                                   ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-08 19:40 UTC (permalink / raw)


Gautier Write-only <gautier@fakeaddress.nil> wrote in message news:<3FACCBFB.9D288CF2@fakeaddress.nil>...
> Preben Randhol:
> 
> > Well I usually write it like this:
> > 
> > with Gdk.Types.Keysyms;          use Gdk.Types.Keysyms;
> > with Gtk.Accel_Group;            use Gtk.Accel_Group;
> > with Gtk;                        use Gtk;
> > with Glib;                       use Glib;
> > with Gdk.Types;                  use Gdk.Types;
> > with Gtkada.Handlers;            use Gtkada.Handlers;
> > with Gtk.Enums;                  use Gtk.Enums;
> > with Program_Intl;               use Program_Intl;
> > with Window.Callbacks;
> > with Program_Callbacks;
> > with Settings.Gui;
> > with Welcome;
> > with Examine;
> > with Result;
> > with Listing;
> > with Listing.Setup;
> > with Setup;
> > with Gac.Help;
> > 
> > and I sort it so that all the with use pairs comes first.
> > 
> > I find that nice and readable.
> 
> I agree that it's an optimum, but under the constraint
> of the present syntax. I would be very happier if I could
> have it so:
> 
> [with and ]use
>   Gdk.Types, Gdk.Types.Keysyms,
>   Gtk, Gtk.Accel_Group, Gtk.Enums,
>   Gtkada.Handlers,
>   Glib,
>   Program_Intl;
> 
> with
>   Window.Callbacks, Program_Callbacks,
>   Settings.Gui,
>   Welcome, Examine, Result,
>   Listing, Listing.Setup, Setup,
>   Gac.Help;
> 
> Wouldn't you ?
> It's nicer, a bit easier to manage and hopefully the
> title of the unit below will appear already on the first page
> of a listing...

Once again, I agree completely. And I think that most of the people
who disagree will reflexively defend the current Ada way no matter how
solid your arguments. They are set in their ways. We can only hope
that the people with the authority to change the language are more
open minded.



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

* Re: Clause "with and use"
  2003-11-07  8:48                             ` Preben Randhol
  2003-11-08 10:56                               ` Gautier Write-only
@ 2003-11-08 20:08                               ` Russ
  2003-11-09  4:23                                 ` Alexandre E. Kopilovitch
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-08 20:08 UTC (permalink / raw)


Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote in message news:<slrnbqmn3k.pk.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no>...
> 
> Well I usually write it like this:
> 
> with Gdk.Types.Keysyms;          use Gdk.Types.Keysyms;
> with Gtk.Accel_Group;            use Gtk.Accel_Group;
> with Gtk;                        use Gtk;
> with Glib;                       use Glib;
> with Gdk.Types;                  use Gdk.Types;
> with Gtkada.Handlers;            use Gtkada.Handlers;
> with Gtk.Enums;                  use Gtk.Enums;
> with Program_Intl;               use Program_Intl;
> with Window.Callbacks;
> with Program_Callbacks;
> with Settings.Gui;
> with Welcome;
> with Examine;
> with Result;
> with Listing;
> with Listing.Setup;
> with Setup;
> with Gac.Help;
> 
> and I sort it so that all the with use pairs comes first.
> 
> I find that nice and readable.

It just occurrred to me that perhaps your definition of "readable"
differs from mine. You claim, for example, that

   with Gdk.Types.Keysyms;          use Gdk.Types.Keysyms;

is "more readable" than simply

   use Gdk.Types.Keysyms;

I will agree that the former requires more reading. Is that what you
mean by "more readable"?

Well, my definition of "more readable" is not "requires more reading."
This may be controversial, but my definition of "more readable" is
"easier to read."

The latter form above is clearly easier to read because it requires
only *half* the amount of reading. And not only does it cut the
reading in half, it eliminates the need to cross check to be sure that
the two identical names are indeed indentical.

How any reasonable person could possibly assert with a straight face
that twice the reading is "more readable" is beyond me. Let me propose
a thought experiment. Make an extra copy of this post, then read both
copies and verify, character by character, that the two are identical.
Then tell me if that made it "more readable."

"When you're arguing with a fool, make sure he isn't doing the same
thing." --Anon



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

* Re: Clause "with and use"
  2003-11-08 20:08                               ` Russ
@ 2003-11-09  4:23                                 ` Alexandre E. Kopilovitch
  0 siblings, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-09  4:23 UTC (permalink / raw)
  To: comp.lang.ada

Russ wrote:

>It just occurrred to me that perhaps your definition of "readable"
>differs from mine.

It is normal and common thing, this difference. For example, if I have 1 hour
and entirely foreign program of 10K lines of code and I must try to diagnose
a bug in it and install a temporary hack - then I wish that program be in C/C++
(not in Ada) - just because both C and C++ are *better readable* than Ada.
But if I have 2 weeks and must provide robust permanent upgrade - then certainly
I wish it be in Ada - for the same reason: Ada is *better readable* that C or
C++. That's it.




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-11-07 22:46                                           ` Martin Dowie
@ 2003-11-09  6:49                                             ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-09  6:49 UTC (permalink / raw)


Martin Dowie wrote:

>> A more interesting question is that
>>obviously if A in A := B * C; is indefinite, you want it to get the
>>"right" constraint from the "*" function.  But what if the return value
>>is declared indefinite?  Can it take its constraints from the target
> 
> object?
> 
> Sorry, it is v.late, I'm not sure what you mean here... Do you mean
> 'what if "B" and "C" are functions returning indefinite values?'

No, you have to think about this in the sequence I stated:

A: Matrix := B * C;
-- In this case A is not constrained and must get its constraint from
-- the function return value.  This is expected and should be allowed.

A: Matrix(1..4;1..4) := B * C;
-- Here we have a constrained object, now let's look inside the
-- function:

    function "*" (L,R: Matrix) return Matrix is
      Result: return Maxtrix := (others => others => 0.0);
      -- here we have a result--with whatever the declaration syntax is
      -- is this declaration--where the bounds come from the target.
      -- Should this be legal?

      -- In the non-limited case, the answer seems to be "What are you,
      -- nuts?  Of course you can't do that.  But where the type of the
      -- result is limited, the answer isn't so clear.  The result is
      -- going to have to be "built in place" in storage passed by the
      -- caller.  Being able to query the attributes of the result
      -- object is not so crazy in that case.  But do we want the rules
      -- to differ based on whether or not the object is limited?

      -- Remember the view of the type at the place of the call could be
      -- different from inside the function.

      -- My answer is that any rules are going to have to depend on the
      -- status of the type at the point of the function declaration.

      -- But that rule starts to produce other anomalies.  A rule that
      -- peeks inside the private part of a package with a function
      -- limited return type is possible.
    begin
      some code;
    end "*";

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-07 20:31                                 ` Russ
  2003-11-07 22:59                                   ` Martin Dowie
@ 2003-11-09  6:59                                   ` Robert I. Eachus
  2003-11-09 14:27                                   ` Martin Dowie
  2 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-09  6:59 UTC (permalink / raw)


Russ wrote:

> I started to read it, but it's a bit too technical for me. Too many of
> those wierd vowels. 8^) I don't know if it solves the problem of
> efficient vector/matrix operations, but it if does, it sure looks a
> lot more complicated to me than "+=" (or ":+"). If you have time, I
> would appreciate an example of how it would be used for matrix
> addition, for example. Just the calling statement using an overloaded
> "+" will be sufficient.

You are beginning to see the light.  The rest of us see your proposal to 
  add "+=" to Ada as at least several "hard" AIs worth of work.  Way to 
much to even want to think about.  Adding a procedure (Inc) with no side 
effects is a much, much easier language change to even think about.

Or to try to mix it into your metaphor, it is like asking a programmer 
as part of a job interview to write a program in any ancient language 
other than Latin or Greek.  Or your potential newspaper employee about 
his speed in writing cuniform on clay tablets.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-07 20:31                                 ` Russ
  2003-11-07 22:59                                   ` Martin Dowie
  2003-11-09  6:59                                   ` Robert I. Eachus
@ 2003-11-09 14:27                                   ` Martin Dowie
  2 siblings, 0 replies; 385+ messages in thread
From: Martin Dowie @ 2003-11-09 14:27 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) wrote in message news:<bebbba07.0311071231.239981ea@posting.google.com>...
[snip]
> I never called anyone an idiot for not using "+=" (as your statement
> above implies), nor did I ever call anyone an idiot for opposing
> augmented assignment operators in Ada. As far as I can recall, all I
> said is that any professional programmer who has difficulty grasping
> the concept of "+=", or who considers it "unreadable," must be an
> idiot. I will add that I don't think anyone who is intelligent enough
> to become a professional programmer could possibly fall into that
> category.

For my part I don't find it unreadable, but I have found it _unreliable_
in languages like C/C++ (just yesterday, in fact!). Yesterdays bug was a
case of "i+-2" instead of "i+=2". Now that would clearly be caught by the
compiler with your proposal as it's changed a statement into an
expression. But I think it shows the 'baggage' that this sort of short
form comes with.

FUD.



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

* Re: Clause "with and use"
  2003-11-08 19:40                                 ` Russ
@ 2003-11-10  7:38                                   ` Preben Randhol
  2003-11-10 13:03                                     ` Marin David Condic
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-10  7:38 UTC (permalink / raw)


On 2003-11-08, Russ <18k11tm001@sneakemail.com> wrote:
>
> Once again, I agree completely. And I think that most of the people
> who disagree will reflexively defend the current Ada way no matter how
> solid your arguments. They are set in their ways. We can only hope
> that the people with the authority to change the language are more
> open minded.

And you are reflexively promoting any new change no matter what the
change is. Sure I don't want to have a lot of trivial non-important
changes to the language. Why? Because I want changes that really do
matter and which will make the language richer.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-06 18:52                             ` Russ
  2003-11-06 20:03                               ` Martin Dowie
@ 2003-11-10  7:47                               ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-10  7:47 UTC (permalink / raw)


Russ wrote:

>Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<bod0mk$1cg6bn$2@ID-175126.news.uni-berlin.de>...
>
>If you honestly find "+=" to be "unreadable," then I'd say that, yes,
>you are indeed an idiot.

Ok. So we have clarified this.

>I certainly would never hire a programmer who
>has to grapple with the meaning of "+=".

No problem. I don't take jobs where the job description says I have to
use "+=" under all circumstances.

>work to do. Would you hire such a person? If so, I can't imagine how
>you could get any significant amount of work done.

Funny. Have you perhaps noticed that the languages I am using mostly,
simply don't have a "+="?

>Having said that, I don't think
>for a second that anyone here *really* has trouble understanding "+=".

Precisely. I *know* what it is supposed to mean. That doesn't mean, I
am getting much excited from this so that I would like to (mis)use it
over and over again.

>That means that I don't really consider you idiots, I am just baffled
>as to why you insist on portraying yourselves as such. Now, if you
>quote me on this, please keep this entire paragraph intact.

Is that ok so? Does my quoting satisfy you needs?

BTW, someone who can't tell the difference between "I consider a
cosntruct unreadable" and "I can't understand the construct" must be
an idiot, too, because these are truly different things. So this
obviously applies to you, Russ. Or to say it in a different way: "I
consider C unreadable", doesn't mean, that I can't understand it.

Got it, dumbass?


Vinzent.



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

* Re: Clause "with and use"
  2003-11-10  7:38                                   ` Preben Randhol
@ 2003-11-10 13:03                                     ` Marin David Condic
  2003-11-10 13:19                                       ` Preben Randhol
  2003-11-11  7:20                                       ` Russ
  0 siblings, 2 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-10 13:03 UTC (permalink / raw)


Obviously, there are limited resources for modifying Ada compilers. 
Obviously, there is a large corpus of existing Ada code that must not be 
broken by language-rule changes. Just as obviously, there are 
implications that are not intuitively obvious to the casual observer 
when adding something like the infamous "+=" or now the "with and use". 
Hence, it ought to be obvious that any proposed language change had 
better have some significant food-value associated with it to make it 
worth the research time into implications, the compiler changes 
necessary and the possible risk to breaking any existing code. I don't 
see any big advantages in what has been proposed here - not enough to 
make it worth the effort.

It would be more productive to figure out if there is some major 
shortcoming in Ada or some major capabilities that Ada could use rather 
than worry about relatively trivial syntax changes that don't address 
some gaping hole in Ada's capabilities.

MDC

Preben Randhol wrote:
> 
> And you are reflexively promoting any new change no matter what the
> change is. Sure I don't want to have a lot of trivial non-important
> changes to the language. Why? Because I want changes that really do
> matter and which will make the language richer.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-10 13:03                                     ` Marin David Condic
@ 2003-11-10 13:19                                       ` Preben Randhol
  2003-11-10 13:38                                         ` Marin David Condic
  2003-11-11  7:20                                       ` Russ
  1 sibling, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-10 13:19 UTC (permalink / raw)


On 2003-11-10, Marin David Condic <nobody@noplace.com> wrote:
> Obviously, there are limited resources for modifying Ada compilers. 
> Obviously, there is a large corpus of existing Ada code that must not be 
> broken by language-rule changes. Just as obviously, there are 
> implications that are not intuitively obvious to the casual observer 
> when adding something like the infamous "+=" or now the "with and use". 
> Hence, it ought to be obvious that any proposed language change had 
> better have some significant food-value associated with it to make it 
> worth the research time into implications, the compiler changes 
> necessary and the possible risk to breaking any existing code. I don't 
> see any big advantages in what has been proposed here - not enough to 
> make it worth the effort.
>
> It would be more productive to figure out if there is some major 
> shortcoming in Ada or some major capabilities that Ada could use rather 
> than worry about relatively trivial syntax changes that don't address 
> some gaping hole in Ada's capabilities.

Exactly.

Preben
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-10 13:19                                       ` Preben Randhol
@ 2003-11-10 13:38                                         ` Marin David Condic
  0 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-10 13:38 UTC (permalink / raw)


I don't think Ada should slavishly start emulating whatever exists in 
some other languages, but its worth looking at what things like C++ or 
Java have that Ada doesn't in so far as it covers some significant 
*capability*. C++ has the STL - it would be worth trying to get 
something like that into Ada. Java has a large library with other 
capabilities - Ada ought to consider that as a possibility. If we're 
talking syntax/semantics, is there something similar - like having a 
more class-like package construct? I'd even be willing to debate the 
relative merits of something like the method->object versus 
objec->method syntax since it seems to at least be non-trivial (although 
I think it doesn't really add any *capability* - just a syntax that 
might be more expressive of a given idiom and hence, probably not worth 
the effort.)

In "Ada Letters (Vol XXIII, Num 3) Pascal Leroy outlined some of the 
changes expected in Ada and that shows some good examples of the kinds 
of things the ARG was willing to look into changing. Mutually dependent 
types, Type Stubs, Access To Private Units, etc. They seem to address 
some real limitation that makes it tough to express certain things in 
Ada. I don't see the "with and use" or the "+=" as being in the same 
category - they don't fix a hinderance to expressing something - except 
in a trivial way.

The point is, let's not over-burden the ARG & compiler vendors with 
things that are not going to give the programmer something they couldn't 
get in some similar way with a little extra typing.

MDC


Preben Randhol wrote:
> On 2003-11-10, Marin David Condic <nobody@noplace.com> wrote:
>>
>>It would be more productive to figure out if there is some major 
>>shortcoming in Ada or some major capabilities that Ada could use rather 
>>than worry about relatively trivial syntax changes that don't address 
>>some gaping hole in Ada's capabilities.
> 
> 
> Exactly.
> 
> Preben


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-10 13:03                                     ` Marin David Condic
  2003-11-10 13:19                                       ` Preben Randhol
@ 2003-11-11  7:20                                       ` Russ
  2003-11-11  8:12                                         ` Preben Randhol
                                                           ` (3 more replies)
  1 sibling, 4 replies; 385+ messages in thread
From: Russ @ 2003-11-11  7:20 UTC (permalink / raw)


Marin David Condic <nobody@noplace.com> wrote in message news:<3FAF8C99.5040201@noplace.com>...

> Obviously, there are limited resources for modifying Ada compilers. 
> Obviously, there is a large corpus of existing Ada code that must not be 
> broken by language-rule changes. Just as obviously, there are 
> implications that are not intuitively obvious to the casual observer 
> when adding something like the infamous "+=" or now the "with and use". 
> Hence, it ought to be obvious that any proposed language change had 
> better have some significant food-value associated with it to make it 
> worth the research time into implications, the compiler changes 
> necessary and the possible risk to breaking any existing code. I don't 
> see any big advantages in what has been proposed here - not enough to 
> make it worth the effort.
> 
> It would be more productive to figure out if there is some major 
> shortcoming in Ada or some major capabilities that Ada could use rather 
> than worry about relatively trivial syntax changes that don't address 
> some gaping hole in Ada's capabilities.

If the choice of programming languages in the real world were based
strictly on objective, rational considerations by language experts,
than what you say might be wise. Unfortunately, that just isn't how
the real world works, and I think your advice is extremely unwise.

Suppose you were selling a house. You hire an expert home inspector,
and he says you've got a leaky roof and some plumbing problems. Then
you hire a real estate agent. She comes out and advises you to remove
the clutter from the front yard and do some basic gardening work to
give it some "curb appeal."

Well, you don't have a lot of money, and you know what's important.
The leaky roof *must* be fixed, but the clutter in the yard is
"cosmetic" stuff, and it can take a back seat to the "important"
stuff. You have a limited budget, and you aren't about to waste it on
trivial cosmetic stuff.

I think that's a very good analogy to what you are saying. The
"context" section at the beginning of nearly every Ada file is like
the front yard of a home. It's the first thing anyone who reads the
file sees. If it's unnecessarily cluttered, people may not complain
about it, but it will leave a lasting first impression.

What you're saying is that we should forget about the cosmetic stuff,
but any competent real estate agent will tell you that is sheer folly.
Yes, fix the roof if it needs to be fixed, but for crying out loud
don't leave the junk piled in the front yard. The loss in market value
will *greatly* exceed the cost of removing the clutter -- even if you
hire the most expensive junk hauler in the country. Smart buyers will
love you, of course, because they will gladly remove the clutter
themselves -- it'll cost them about 5% of the $5000 they save on the
purchase price of the house.

Making "use" in a context clause imply "with" is not a great technical
challenge. For Pete's sake, I could probably write a Python script in
less than an hour to do the job (including a half hour to think about
it, and 15 minutes to test it). Yet it would not break any existing
code, and anyone who wants to continue doing it the old way would be
perfectly free to do so.

I have always been impressed with your level of technical knowledge of
Ada, but I am seriously concerned with your lack of "marketing" sense.
You said yourself in a recent post that languages are often chosen for
the "wrong" reasons, such as similarity to familiar languages.
Unnecessary clutter at the beginning of each file cannot possibly help
to sell Ada, but it can certainly hurt. And it might hurt much more
than you realize, because you're so used to the clutter you probably
don't even notice it anymore.



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

* Re: Clause "with and use"
  2003-11-11  7:20                                       ` Russ
@ 2003-11-11  8:12                                         ` Preben Randhol
  2003-11-11 19:43                                           ` Russ
  2003-11-11  8:31                                         ` Preben Randhol
                                                           ` (2 subsequent siblings)
  3 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-11  8:12 UTC (permalink / raw)


On 2003-11-11, Russ <18k11tm001@sneakemail.com> wrote:
> If the choice of programming languages in the real world were based
> strictly on objective, rational considerations by language experts,
> than what you say might be wise. Unfortunately, that just isn't how
> the real world works, and I think your advice is extremely unwise.

So what you are saying is: "C is a very popular language, therefore, we
must make Ada like C. C is not safe, so Ada shouldn't be either."

> I have always been impressed with your level of technical knowledge of
> Ada, but I am seriously concerned with your lack of "marketing" sense.

Oh? I think it is much better marketing strategy to get the imporant
things into the language than to run araound saying: "Hey! We now got +=
come and use the language!"


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11  7:20                                       ` Russ
  2003-11-11  8:12                                         ` Preben Randhol
@ 2003-11-11  8:31                                         ` Preben Randhol
  2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
  2003-11-11 14:35                                           ` Hyman Rosen
  2003-11-11 15:36                                         ` Robert I. Eachus
  2003-11-11 16:24                                         ` Vinzent 'Gadget' Hoefler
  3 siblings, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-11  8:31 UTC (permalink / raw)


On 2003-11-11, Russ <18k11tm001@sneakemail.com> wrote:
> Making "use" in a context clause imply "with" is not a great technical
> challenge. For Pete's sake, I could probably write a Python script in
> less than an hour to do the job (including a half hour to think about
> it, and 15 minutes to test it). Yet it would not break any existing
> code, and anyone who wants to continue doing it the old way would be
> perfectly free to do so.

But what is the point? What do you save by doing this? Absolutely
nothing. It took me 2 min to make two macros in vim which either add a
use unit or removes it.

If you are interested in fixing leaks in the roof (to use your analogy),
I suggest that is what you should worry about too. Not run around in
the shed reorganising the tools.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11  8:31                                         ` Preben Randhol
@ 2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
  2003-11-11 10:10                                             ` Marin David Condic
  2003-11-11 20:35                                             ` Russ
  2003-11-11 14:35                                           ` Hyman Rosen
  1 sibling, 2 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11  8:57 UTC (permalink / raw)


Preben Randhol wrote:

>If you are interested in fixing leaks in the roof (to use your analogy),
>I suggest that is what you should worry about too. Not run around in
>the shed reorganising the tools.

I guess, that's what Russ tried to point out. A typical manager would
reorganize the complete toolchain first. BTST.

So it seems that a whole bunch of Ada users have a hard time dealing
with manager's thinking and talking marketing speech. Oh, not that I
would actually miss that. :-P


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 10:10                                             ` Marin David Condic
  2003-11-11 10:49                                               ` Stephane Richard
                                                                 ` (2 more replies)
  2003-11-11 20:35                                             ` Russ
  1 sibling, 3 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-11 10:10 UTC (permalink / raw)


There isn't anything wrong with "marketing" per se. It serves a useful 
purpose. But it isn't done by some manager getting into his head that 
"XYZ is what the public will love, so let's make our product have XYZ in 
it..." Marketing is done with research and statistics, among other 
tools. You don't *assume* that your potential customers want XYZ - you 
go find out for sure what they want by asking them.

A fair approach would be to have a survey of some sample set of 
C/C++/Java users who had some familiarity with Ada and ask them if they 
would consider doing their next project in Ada if....... (fill in the 
blank with a number of possible changes) I'd imagine that doing so would 
likely reveal that either they'd not be willing to consider it at all, 
or they'd only consider it if there were such radical surgery on it that 
it basically stopped being Ada.

Guesswork is interesting in a newsgroup, but deadly when trying to make 
major decisions about a product in a business environment. You don't 
guess at what is going to make your existing customers happy. You 
respond to their requests for changes based on the priorities they set. 
You also don't guess about what would attract new business from 
potential customers. You ask them what they'd want in your product and 
try to address the highest priorities they set. To do otherwise will 
have you bankrupt very quickly.

MDC


Vinzent 'Gadget' Hoefler wrote:
> 
> So it seems that a whole bunch of Ada users have a hard time dealing
> with manager's thinking and talking marketing speech. Oh, not that I
> would actually miss that. :-P

-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-11 10:10                                             ` Marin David Condic
@ 2003-11-11 10:49                                               ` Stephane Richard
  2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
  2003-11-11 19:49                                               ` Russ
  2 siblings, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-11 10:49 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2928 bytes --]

Again to use Russ's analogy,

As we keep on saying, C++ didn't become popular because of it's syntax, I've
never seen a C/C++ advertisement campaign that bragged about how clear C is
ever, they pushed for power over clarity, at least in any commercial I've
seen (which weren't that many) in flyers, magazines and others again they
always talked about how powerful they were, bragged about averything else
but the syntax.

Maybe we shouldn't fix the roof leak or the plumbing and instead try to tell
then that with the pile of junk in the front yard, if used wisely, they can
create a  fix for the leak that can be adapted to the plumbing problem as
well?  ;-)

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FB0B57D.6070906@noplace.com...
> There isn't anything wrong with "marketing" per se. It serves a useful
> purpose. But it isn't done by some manager getting into his head that
> "XYZ is what the public will love, so let's make our product have XYZ in
> it..." Marketing is done with research and statistics, among other
> tools. You don't *assume* that your potential customers want XYZ - you
> go find out for sure what they want by asking them.
>
> A fair approach would be to have a survey of some sample set of
> C/C++/Java users who had some familiarity with Ada and ask them if they
> would consider doing their next project in Ada if....... (fill in the
> blank with a number of possible changes) I'd imagine that doing so would
> likely reveal that either they'd not be willing to consider it at all,
> or they'd only consider it if there were such radical surgery on it that
> it basically stopped being Ada.
>
> Guesswork is interesting in a newsgroup, but deadly when trying to make
> major decisions about a product in a business environment. You don't
> guess at what is going to make your existing customers happy. You
> respond to their requests for changes based on the priorities they set.
> You also don't guess about what would attract new business from
> potential customers. You ask them what they'd want in your product and
> try to address the highest priorities they set. To do otherwise will
> have you bankrupt very quickly.
>
> MDC
>
>
> Vinzent 'Gadget' Hoefler wrote:
> >
> > So it seems that a whole bunch of Ada users have a hard time dealing
> > with manager's thinking and talking marketing speech. Oh, not that I
> > would actually miss that. :-P
>
> -- 
> ======================================================================
> Marin David Condic
> I work for: http://www.belcan.com/
> My project is: http://www.jsf.mil/NSFrames.htm
>
> Send Replies To: m   o   d   c @ a   m   o   g
>                     c   n   i       c   .   r
>
>      "Trying is the first step towards failure."
>          --  Homer Simpson
>
> ======================================================================
>





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

* Re: Clause "with and use"
  2003-11-11 10:10                                             ` Marin David Condic
  2003-11-11 10:49                                               ` Stephane Richard
@ 2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
  2003-11-11 15:36                                                 ` Wes Groleau
  2003-11-12 11:55                                                 ` Marin David Condic
  2003-11-11 19:49                                               ` Russ
  2 siblings, 2 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 14:17 UTC (permalink / raw)


Marin David Condic wrote:

>There isn't anything wrong with "marketing" per se. It serves a useful 
>purpose. But it isn't done by some manager getting into his head that 
>"XYZ is what the public will love, so let's make our product have XYZ in 
>it..."

Well, actually that is the impression I get when it boils down to what
tools (programming languages) someone should use. "The others use
Java? So let's use it, too. It must be good."

Well, the H&R-people are similar, instead of asking you "Are you able
to build and maintain a large software-system" they ask you "Do you
know $LANGUAGE"? This is as much idiotic as asking someone "Do you
have at least five years experience with the medium-size-hammer from
$BRANDNAME?" instead of asking "Are able to simply put a nail into the
wall?"

Answer_1: "Oh yes, I have been trying to put a nail into the wall with
that hammer for seven years. Now still every seconds nail gets bended,
but that doesn't matter, I have enough nails."

Answer_2: "Well, not with that particular thing, but I did that with
the small-sized one, it better fits the job to be done. But now I know
how to handle that I think I can quickly learn how to handle the one
you want me to use."

Guess, who gets hired.

>Marketing is done with research and statistics, among other 
>tools. You don't *assume* that your potential customers want XYZ - you 
>go find out for sure what they want by asking them.

Quite true. If you were talking about the ideal approach, I even would
agree with you. But even then: the decision to use a programming
language has seldom to do with *any* of that.

>A fair approach would be to have a survey of some sample set of 
>C/C++/Java users who had some familiarity with Ada

It might be hard to find enough people so one could claim statistical
significance. Literally spoken, almost every idiot out there on the
street claims to have knowledge of C/C++/Java but if you ask them
about Ada the best response I'd ever get was something like "oh that's
the language from the eighties?" ... The same guy told me that Jython
is something similar and I would like it, because it would fit my
needs for a programming language like Ada. Huh? WTF is he talking
about?

>Guesswork is interesting in a newsgroup, but deadly when trying to make 
>major decisions about a product in a business environment.

Yes. But reality says, hell a *lot* of (especially software) projects
just went dead, so there might be a lot of guesswork involved (either
in the requirements, the schedule, ...).

>You don't 
>guess at what is going to make your existing customers happy.

Well, the customer usually wants a product and doesn't care about the
tool you used to develop the product with. But the customer will
probably care about the final price, so you should be able to make a
good decision to keep this price low. And usually you shouldn't care
about some initial costs, you should look further and see what's
better in the long run. Well, statistically I still have some years of
my life left to actually find a manager who really thinks this way, so
I just keep my hope. :->

These days I still wonder why all my deadlines are already scheduled
for yesterday. Even those for the projects which didn't even start
yet. ;-)

>You also don't guess about what would attract new business from 
>potential customers. You ask them what they'd want in your product and 
>try to address the highest priorities they set.

Yes. But I'd assume that the decision which tools you use to be able
to actually deliver the product to the customer has at least
*something* to do with management, hasn't it? Well, I think it should.
Unfortunately, a bunch of managers ouside there seem to have no clue
of *what* they are managing.

>To do otherwise will have you bankrupt very quickly.

Indeed. :->


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11  8:31                                         ` Preben Randhol
  2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 14:35                                           ` Hyman Rosen
  2003-11-11 15:04                                             ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Hyman Rosen @ 2003-11-11 14:35 UTC (permalink / raw)


Preben Randhol wrote:
> But what is the point? What do you save by doing this? Absolutely
> nothing. It took me 2 min to make two macros in vim which either add a
> use unit or removes it.

That's *not* the point. As is so often said around here,
Ada doesn't care about the convenience of the writer of
the code. Perhaps if you had written macros to tell the
reader of the code which withed packages were also used,
you would have demonstrated something useful.




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

* Re: Clause "with and use"
  2003-11-11 14:35                                           ` Hyman Rosen
@ 2003-11-11 15:04                                             ` Preben Randhol
  2003-11-11 20:01                                               ` Russ
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-11 15:04 UTC (permalink / raw)


On 2003-11-11, Hyman Rosen <hyrosen@mail.com> wrote:
> Preben Randhol wrote:
>> But what is the point? What do you save by doing this? Absolutely
>> nothing. It took me 2 min to make two macros in vim which either add a
>> use unit or removes it.
>
> That's *not* the point. As is so often said around here,
> Ada doesn't care about the convenience of the writer of
> the code. Perhaps if you had written macros to tell the
> reader of the code which withed packages were also used,
> you would have demonstrated something useful.

You misunderstood.

In my code I write:

with Ada.Text_IO; \au

The \au which is my shortcut (it could have been Ctrl-J or F4 etc...
depending on preference) will then make this line look like:

with Ada.Text_IO; use Ada.Text_IO;

and I can continue typing. 

It will work with any withed package as it simply copies what comes
after with until the ;. A shortcut \aU removes the use Package; from a
line.

There is no preprosessors involded. As I have said: the convenience of
the writer is the responsibility of the text editor (in my case vim) not
Ada.

As to telling the reader which packages are used, the source code will
say so and you cannot manage to make it much clearer IMHO.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 15:36                                                 ` Wes Groleau
  2003-11-11 16:08                                                   ` Preben Randhol
  2003-11-11 16:24                                                   ` Vinzent 'Gadget' Hoefler
  2003-11-12 11:55                                                 ` Marin David Condic
  1 sibling, 2 replies; 385+ messages in thread
From: Wes Groleau @ 2003-11-11 15:36 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler wrote:
> know $LANGUAGE"? This is as much idiotic as asking someone "Do you
> have at least five years experience with the medium-size-hammer from
> $BRANDNAME?" instead of asking "Are able to simply put a nail into the
> wall?"
> 
> Answer_1: "Oh yes, I have been trying to put a nail into the wall with
> that hammer for seven years. Now still every seconds nail gets bended,
> but that doesn't matter, I have enough nails."
> 
> Answer_2: "Well, not with that particular thing, but I did that with
> the small-sized one, it better fits the job to be done. But now I know
> how to handle that I think I can quickly learn how to handle the one
> you want me to use."
> 
> Guess, who gets hired.

No. 1 gets hired, because the above is only what he's thinking.
He has the marketing sense to actually _say_ "Oh, yes, I've
been pounding on nails with that hammer for seven years."

And the interviewer doesn't have the sense to ask,
"How many have you actually driven in?"

-- 
Wes Groleau
Alive and Well
http://freepages.religions.rootsweb.com/~wgroleau/




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

* Re: Clause "with and use"
  2003-11-11  7:20                                       ` Russ
  2003-11-11  8:12                                         ` Preben Randhol
  2003-11-11  8:31                                         ` Preben Randhol
@ 2003-11-11 15:36                                         ` Robert I. Eachus
  2003-11-11 19:46                                           ` Eachus' Measure of Goodness (was: Clause "with and use") Jeffrey Carter
  2003-11-13  6:37                                           ` Clause "with and use" Chad R. Meiners
  2003-11-11 16:24                                         ` Vinzent 'Gadget' Hoefler
  3 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-11 15:36 UTC (permalink / raw)


Russ wrote:

> I think that's a very good analogy to what you are saying. The
> "context" section at the beginning of nearly every Ada file is like
> the front yard of a home. It's the first thing anyone who reads the
> file sees. If it's unnecessarily cluttered, people may not complain
> about it, but it will leave a lasting first impression.

I think again you are missing the entire point.  Why is all that stuff 
you call junk in the front yard in the first place?  Because a lot of 
effort when into developing a set of requirements that specified where 
that "junk" goes.  Some of it doesn't look pretty, but burying it in the 
back yard to conceal it results in disaster.

The solution, as you point out, is to get someone to haul the junk away, 
to give your code better "curb appeal."  In C you can use nested 
includes to accomplish that.  In Ada, it takes a effort devoted to 
coherence and information hiding.  A package spec that has more than 
three or four with clauses is a clue that problems exist in the code. 
Ada was designed that way.

Package bodies often have as many as a dozen with clauses on large 
projects, but again, beyond that you have to wonder if it indicates a 
problem with the coherence of the package body.  Often use of generics, 
child packages, and separate bodies can reduce the clutter.  Sometimes 
the only way to "fix" the problem is to start the design over and 
refactor the problem differently.  (Note: putting an absolute maximum 
limit on the number of with clauses in the software coding standards 
fixes nothing.  If there is a problem it is in the design not the code, 
and it can't be fixed by coding standards.  Also the average number of 
with clauses will go up with the size of the project.

Don't say that too many with and use clauses produce clutter that 
reduces the appeal of Ada as a programming language.  Say instead that 
bad design in Ada results in cluttered looking with and use clauses.

If you want a single number to measure the "goodness" of the design, I 
have been comfortable with (2S + B)/(N * ln(N)) where N is the total 
number of compilation units and subunits, S is the number of with 
clauses on package specs (including generic package specs) and B is the 
number of with clauses on other units.  Some people may disagree with 
including separate subunits in N, but I seldom find designs abusing 
that.  There is a problem though is some compilation units are too 
small, so I get concerned when the average size of compilation units is 
outside the 100 to 1000 NCSLOC (non-comment source lines of code) range.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-11 15:36                                                 ` Wes Groleau
@ 2003-11-11 16:08                                                   ` Preben Randhol
  2003-11-11 16:24                                                   ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-11 16:08 UTC (permalink / raw)


On 2003-11-11, Wes Groleau <groleau@freeshell.org> wrote:
> No. 1 gets hired, because the above is only what he's thinking.
> He has the marketing sense to actually _say_ "Oh, yes, I've
> been pounding on nails with that hammer for seven years."

Adding, " and they are all black and blue now..."

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11 15:36                                                 ` Wes Groleau
  2003-11-11 16:08                                                   ` Preben Randhol
@ 2003-11-11 16:24                                                   ` Vinzent 'Gadget' Hoefler
  2003-11-12 12:01                                                     ` Marin David Condic
  1 sibling, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 16:24 UTC (permalink / raw)


Wes Groleau wrote:

>No. 1 gets hired, because the above is only what he's thinking.

Precisely.

>He has the marketing sense to actually _say_ "Oh, yes, I've
>been pounding on nails with that hammer for seven years."

"Marketing sense", yes. Some people would call it a lie. :-)

>And the interviewer doesn't have the sense to ask,
>"How many have you actually driven in?"

Bingo. You just earned 100 bonus points.

And now someone will tell me how proper and real-world marketing
differs from that. ;)


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11  7:20                                       ` Russ
                                                           ` (2 preceding siblings ...)
  2003-11-11 15:36                                         ` Robert I. Eachus
@ 2003-11-11 16:24                                         ` Vinzent 'Gadget' Hoefler
  2003-11-11 17:36                                           ` Stephane Richard
  3 siblings, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 16:24 UTC (permalink / raw)


Russ wrote:

>I think that's a very good analogy to what you are saying. The
>"context" section at the beginning of nearly every Ada file is like
>the front yard of a home. It's the first thing anyone who reads the
>file sees.

And sees what the house is basically made from?

>If it's unnecessarily cluttered,

it is a bad design. Simple as that.

>people may not complain
>about it, but it will leave a lasting first impression.

You mean, like - for example - the following real world snippet from
the first lines of a main.c?

|/* eventually we have to downgrade the driver */
|#if 0
|#  include <linux/config.h>
|#  include <linux/version.h>
|#endif /*0*/
|
|#include <linux/module.h>    /* for MOD_INC_USE_COUNT, automatic */
|                             /* module or kernel compilation */
|#if 0
|#  include <linux/types.h>
|#  include <linux/fs.h>
|#  include <linux/string.h>
|#  include <linux/ptrace.h>
|#  include <linux/mm.h>     /* for verify_area */
|#  include <linux/malloc.h>
|#  include <linux/errno.h>  /* for -EBUSY */
|#  include <linux/ioport.h> /* for check_region, request_region */
|#  include <linux/delay.h>  /* for loops_per_sec */
|#  include <asm/segment.h>  /* for put_user_byte */
|#  include <asm/io.h>       /* for inb_p, outb_p, inb, outb, etc. */
|#endif /*0*/
|
|#include <asm/uaccess.h>    /* for get_user, copy_from_user, etc. */
|
|#if 0
|#  include <linux/wait.h>       /* for wait_queue */
|#  include <linux/poll.h>       /* for POLLING, etc. */
|#  include <linux/miscdevice.h> /* for miscdevice */
|#endif /*0*/
|
|#include <linux/proc_fs.h>           /* for procfs functions */
|#include <linux/devfs_fs_kernel.h> /* for devfs functions */
|#include <linux/pci.h>             /* for new pci functions */
|
|#if 0
|#  include <linux/time.h>
|#  include <linux/timer.h>
|#  include <linux/delay.h>
|#endif /*0*/
|
|#if (LINUX_VERSION_CODE >= 131343)
|#  include <linux/init.h> /* for __init, module_{init,exit}; */
|                          /* automatic freeing of kernel code after */
|                          /* booting/loading */
|#else
|#  define __init
|#  define __initdata
|#endif

I won't tell you about the difference, but you can surely do that for
me. :->


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11 16:24                                         ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 17:36                                           ` Stephane Richard
  0 siblings, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-11 17:36 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1881 bytes --]

|/* eventually we have to downgrade the driver */
|#if 0
|#  include <linux/config.h>
|#  include <linux/version.h>
|#endif /*0*/
|
|#include <linux/module.h>    /* for MOD_INC_USE_COUNT, automatic */
|                             /* module or kernel compilation */
|#if 0
|#  include <linux/types.h>
|#  include <linux/fs.h>
|#  include <linux/string.h>
|#  include <linux/ptrace.h>
|#  include <linux/mm.h>     /* for verify_area */
|#  include <linux/malloc.h>
|#  include <linux/errno.h>  /* for -EBUSY */
|#  include <linux/ioport.h> /* for check_region, request_region */
|#  include <linux/delay.h>  /* for loops_per_sec */
|#  include <asm/segment.h>  /* for put_user_byte */
|#  include <asm/io.h>       /* for inb_p, outb_p, inb, outb, etc. */
|#endif /*0*/
|
|#include <asm/uaccess.h>    /* for get_user, copy_from_user, etc. */
|
|#if 0
|#  include <linux/wait.h>       /* for wait_queue */
|#  include <linux/poll.h>       /* for POLLING, etc. */
|#  include <linux/miscdevice.h> /* for miscdevice */
|#endif /*0*/
|
|#include <linux/proc_fs.h>           /* for procfs functions */
|#include <linux/devfs_fs_kernel.h> /* for devfs functions */
|#include <linux/pci.h>             /* for new pci functions */
|
|#if 0
|#  include <linux/time.h>
|#  include <linux/timer.h>
|#  include <linux/delay.h>
|#endif /*0*/
|
|#if (LINUX_VERSION_CODE >= 131343)
|#  include <linux/init.h> /* for __init, module_{init,exit}; */
|                          /* automatic freeing of kernel code after */
|                          /* booting/loading */
|#else
|#  define __init
|#  define __initdata
|#endif

I won't tell you about the difference, but you can surely do that for
me. :->

*** Well that is the C++ I'm used to seeing too :-).

Vinzent.



-- 
"To err is human.  To really screw up, you need C++!"

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-11  8:12                                         ` Preben Randhol
@ 2003-11-11 19:43                                           ` Russ
  2003-11-12 12:35                                             ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-11 19:43 UTC (permalink / raw)


Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote in message news:<slrnbr16ek.1qo.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no>...
> On 2003-11-11, Russ <18k11tm001@sneakemail.com> wrote:
> > If the choice of programming languages in the real world were based
> > strictly on objective, rational considerations by language experts,
> > than what you say might be wise. Unfortunately, that just isn't how
> > the real world works, and I think your advice is extremely unwise.
> 
> So what you are saying is: "C is a very popular language, therefore, we
> must make Ada like C. C is not safe, so Ada shouldn't be either."

If you can derive that from what I wrote above (or from anything I've
ever written on this forum) then it is clear to me that you are
obsessed with jealosy over the popularity of C. I did not even mention
C or language safety. You simply pulled that stuff out of your rear
end.

If you are going to obsess over something, why not make is something
"normal" like sex? Obsessing over the popularity of C is just strange.



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

* Eachus' Measure of Goodness (was: Clause "with and use")
  2003-11-11 15:36                                         ` Robert I. Eachus
@ 2003-11-11 19:46                                           ` Jeffrey Carter
  2003-11-12 16:08                                             ` Eachus' Measure of Goodness Robert I. Eachus
  2003-11-13  6:37                                           ` Clause "with and use" Chad R. Meiners
  1 sibling, 1 reply; 385+ messages in thread
From: Jeffrey Carter @ 2003-11-11 19:46 UTC (permalink / raw)


Robert I. Eachus wrote:

> If you want a single number to measure the "goodness" of the design, I 
> have been comfortable with (2S + B)/(N * ln(N)) where N is the total 
> number of compilation units and subunits, S is the number of with 
> clauses on package specs (including generic package specs) and B is the 
> number of with clauses on other units.  Some people may disagree with 
> including separate subunits in N, but I seldom find designs abusing 
> that.  There is a problem though is some compilation units are too 
> small, so I get concerned when the average size of compilation units is 
> outside the 100 to 1000 NCSLOC (non-comment source lines of code) range.

Interesting. What are good values of this metric, and what indicates a 
problem? How do you deal with Ada.*, System.*, and Interfaces.* units? 
What about other "standard" libraries?

For example, I have a simple program I run every day (it creates my 
signature file). It has a procedure body only, with 4 with clauses:

with Ada.Numerics.Discrete_Random;
with Ada.Text_IO;
with Gnat.OS_Lib;
with PragmARC.Get_Line;

What are S, B, and N for this example? Do I count the

with Ada.Text_IO;

on the spec of PragmARC.Get_Line? What about any with clauses for 
Gnat.OS_Lib? What about those units? Do I count the

with Ada.IO_Exceptions;

on the spec of Ada.Text_IO? What about the 3 other with clauses on the 
spec of the GNAT implementation of Ada.Text_IO?

To my mind this has S = 0, B = 4, and N = 1, giving G (for goodness) = 
4, but to another person N may be greater than 10, counting all the 
parent packages and following every path until you reach units with no 
with clauses.

Sorry for all the questions, but I like metrics, and always want to try 
out new ones.

-- 
Jeff Carter
"I would never want to belong to any club that
would have someone like me for a member."
Annie Hall
41




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

* Re: Clause "with and use"
  2003-11-11 10:10                                             ` Marin David Condic
  2003-11-11 10:49                                               ` Stephane Richard
  2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 19:49                                               ` Russ
  2 siblings, 0 replies; 385+ messages in thread
From: Russ @ 2003-11-11 19:49 UTC (permalink / raw)


Marin David Condic <nobody@noplace.com> wrote in message news:<3FB0B57D.6070906@noplace.com>...
> There isn't anything wrong with "marketing" per se. It serves a useful 
> purpose. But it isn't done by some manager getting into his head that 
> "XYZ is what the public will love, so let's make our product have XYZ in 
> it..." Marketing is done with research and statistics, among other 
> tools. You don't *assume* that your potential customers want XYZ - you 
> go find out for sure what they want by asking them.
> 
> A fair approach would be to have a survey of some sample set of 
> C/C++/Java users who had some familiarity with Ada and ask them if they 
> would consider doing their next project in Ada if....... (fill in the 
> blank with a number of possible changes) I'd imagine that doing so would 
> likely reveal that either they'd not be willing to consider it at all, 
> or they'd only consider it if there were such radical surgery on it that 
> it basically stopped being Ada.
> 
> Guesswork is interesting in a newsgroup, but deadly when trying to make 
> major decisions about a product in a business environment. You don't 
> guess at what is going to make your existing customers happy. You 
> respond to their requests for changes based on the priorities they set. 
> You also don't guess about what would attract new business from 
> potential customers. You ask them what they'd want in your product and 
> try to address the highest priorities they set. To do otherwise will 
> have you bankrupt very quickly.

OK, let me see if got this right. We have limited resources, so rather
than just removing the clutter from the front yard before we sell the
house, we should perform a marketing study to see if it will be a wise
investment. I give up.



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

* Re: Clause "with and use"
  2003-11-11 15:04                                             ` Preben Randhol
@ 2003-11-11 20:01                                               ` Russ
  2003-11-12 12:41                                                 ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-11 20:01 UTC (permalink / raw)


Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote in message news:<slrnbr1ujb.74s.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no>...
> On 2003-11-11, Hyman Rosen <hyrosen@mail.com> wrote:
> > Preben Randhol wrote:
> >> But what is the point? What do you save by doing this? Absolutely
> >> nothing. It took me 2 min to make two macros in vim which either add a
> >> use unit or removes it.
> >
> > That's *not* the point. As is so often said around here,
> > Ada doesn't care about the convenience of the writer of
> > the code. Perhaps if you had written macros to tell the
> > reader of the code which withed packages were also used,
> > you would have demonstrated something useful.
> 
> You misunderstood.
> 
> In my code I write:
> 
> with Ada.Text_IO; \au
> 
> The \au which is my shortcut (it could have been Ctrl-J or F4 etc...
> depending on preference) will then make this line look like:
> 
> with Ada.Text_IO; use Ada.Text_IO;
> 
> and I can continue typing. 
> 
> It will work with any withed package as it simply copies what comes
> after with until the ;. A shortcut \aU removes the use Package; from a
> line.
> 
> There is no preprosessors involded. As I have said: the convenience of
> the writer is the responsibility of the text editor (in my case vim) not
> Ada.
> 
> As to telling the reader which packages are used, the source code will
> say so and you cannot manage to make it much clearer IMHO.

And you *still* miss the point, even after Mr. Rosen spoonfeeds it to
you. The point is *not* that redundant "with" and "use" clauses
require extra typing. The point is that the poor *reader* of your code
still has to *read* your cluttered code. In your reply you did not
even consider the *reader*. The *reader* doesn't give a hoot how many
keystrokes you used to generate the code. All I can say is that I'm
darn glad I'll never have to read your code.



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

* Re: Clause "with and use"
  2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
  2003-11-11 10:10                                             ` Marin David Condic
@ 2003-11-11 20:35                                             ` Russ
  2003-11-11 22:06                                               ` Mark Lorenzen
  2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
  1 sibling, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-11 20:35 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<boq8bm$1g79l6$1@ID-175126.news.uni-berlin.de>...
> Preben Randhol wrote:
> 
> >If you are interested in fixing leaks in the roof (to use your analogy),
> >I suggest that is what you should worry about too. Not run around in
> >the shed reorganising the tools.
> 
> I guess, that's what Russ tried to point out. A typical manager would
> reorganize the complete toolchain first. BTST.

This is amazing. My analogy was between redundant "with/use" clauses
and clutter in the front yard of a house for sale. What in the
frickin' world does that have to do with reorganizing a tool shed?

Look, you are free to create your own analogies, but please don't
twist mine beyond recognition and then imagine that they are still my
analogies. It's unethical. Got that, little boy?

> So it seems that a whole bunch of Ada users have a hard time dealing
> with manager's thinking and talking marketing speech. Oh, not that I
> would actually miss that. :-P

I really feel sorry for all you poor guys with the clueless PHBs. My
managers are fairly reasonable for the most part.

My job is as about as far from marketing and management as you can
get, but I am mature enough to understand that managers have an
important job to do. For starters, without them, I would get no
funding for my work. And they are wise enough to give me lots of
discretion on how I do my work.

You seem to have nothing but disdain for your managers. Well, maybe
they earned it, but judging by your attitude, I'll bet that you are
simply too immature to appreciate their responsibilities. If they're
pinheads, then I'd say they deserve you and you deserve them. You
deserve each other. Maybe someday you'll grow up, little boy.



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

* Re: Clause "with and use"
  2003-11-11 20:35                                             ` Russ
@ 2003-11-11 22:06                                               ` Mark Lorenzen
  2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Mark Lorenzen @ 2003-11-11 22:06 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) writes:

> Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<boq8bm$1g79l6$1@ID-175126.news.uni-berlin.de>...
>> Preben Randhol wrote:
>> 
>> >If you are interested in fixing leaks in the roof (to use your analogy),
>> >I suggest that is what you should worry about too. Not run around in
>> >the shed reorganising the tools.
>> 
>> I guess, that's what Russ tried to point out. A typical manager would
>> reorganize the complete toolchain first. BTST.
>
> This is amazing. My analogy was between redundant "with/use" clauses
> and clutter in the front yard of a house for sale. What in the
> frickin' world does that have to do with reorganizing a tool shed?
>
> Look, you are free to create your own analogies, but please don't
> twist mine beyond recognition and then imagine that they are still my
> analogies. It's unethical. Got that, little boy?
>
>> So it seems that a whole bunch of Ada users have a hard time dealing
>> with manager's thinking and talking marketing speech. Oh, not that I
>> would actually miss that. :-P
>
> I really feel sorry for all you poor guys with the clueless PHBs. My
> managers are fairly reasonable for the most part.
>
> My job is as about as far from marketing and management as you can
> get, but I am mature enough to understand that managers have an
> important job to do. For starters, without them, I would get no

Russ, this is the first time you have made me laugh. At least until I
realized that you actually mean, what you wrote in the paragraph
above. I'm sorry to burst your bubble, but the pointy haired boss from
Dilbert is not a fictional figure. *A lot* of S/W engineering people
are working for such a boss.

> funding for my work. And they are wise enough to give me lots of
> discretion on how I do my work.
>
> You seem to have nothing but disdain for your managers. Well, maybe
> they earned it, but judging by your attitude, I'll bet that you are
> simply too immature to appreciate their responsibilities. If they're
> pinheads, then I'd say they deserve you and you deserve them. You
> deserve each other. Maybe someday you'll grow up, little boy.

They have no responsibilities. Only idiotic excuses and insane
ideas. Every time a project fails miserably, who do you see stand in
line in front of a sink, washing their hands? That's right -
managers. Try to read a book like "Software failure: Management
failure" and feel the pain of those working for idiotic managers. I
clearly remember a paragraph from the post-morten report made after
the complete failure of the London Ambulance Service project:
"Management initially tried to deflect blame onto staff".

- Mark Lorenzen



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

* Re: Clause "with and use"
  2003-11-11 20:35                                             ` Russ
  2003-11-11 22:06                                               ` Mark Lorenzen
@ 2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
  2003-11-11 22:20                                                 ` Gautier Write-only
  2003-11-11 22:30                                                 ` Stephane Richard
  1 sibling, 2 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 22:08 UTC (permalink / raw)


Russ wrote:

>Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<boq8bm$1g79l6$1@ID-175126.news.uni-berlin.de>...
>
>This is amazing. My analogy was between redundant "with/use" clauses
>and clutter in the front yard of a house for sale.

For *sale*. Exactly. BTW, I still don't understand what is redundant
on with and use. I don't use "use" (well, at least not globally).

>Look, you are free to create your own analogies, but please don't
>twist mine beyond recognition and then imagine that they are still my
>analogies. It's unethical. Got that, little boy?

So WTF have you tried to point out, old man? We have to clear the
with's and uses to make Ada more business-compatible or what? Don't
you understand your own analogies?

>I really feel sorry for all you poor guys with the clueless PHBs. My
>managers are fairly reasonable for the most part.

Feel lucky, baby.

>My job is as about as far from marketing and management as you can
>get, but I am mature enough to understand that managers have an
>important job to do.

Well, of course they have. For instance, the job of telling the big
boss that everything already works whilst the engineers are still
struggling getting a beta system to run?

I understand that marketing is very often based on lies, they call
this advertisement, I think. But some things get far above that.

>For starters, without them, I would get no
>funding for my work. And they are wise enough to give me lots of
>discretion on how I do my work.

Great. Mine do that too. You know why? Because they don't understand
what I am doing.

Well, they do that as long as I deliver what they want in time, of
course. Wanna hear a funny real life story? Here it is:

Last Wednesday I was told by one of these "pinheads" that we need a
specific feature - we dropped the idea months before because it would
be much too hard to implement. The system shipped on Friday. - All in
all, I got one and a half day to implement it? Sorry, such things I
can't get out of my head just in a weekend. I'm not drinking *that*
much.

Well, I have to admit that not all of these people are that way.
Sometimes they even drop by and ask me before they sell.

Now guess, who the asshole will be when the customer complains?

>You seem to have nothing but disdain for your managers.

Call it experience. :)

>Well, maybe
>they earned it, but judging by your attitude,

You call it attitude if I want them to deliver *working* systems?

Well, call me arrogant, cynic, sarcastic, ironic, ... whatever. But I
know what I am doing. And still I can laugh. That helps.

>I'll bet that you are
>simply too immature to appreciate their responsibilities.

Oh, I was standing nearby when this particular manager talked to
potential customers. What a luck that I had the decency to keep quiet.
:) At least he kept the lies to a minimum.

>If they're
>pinheads, then I'd say they deserve you and you deserve them. You
>deserve each other.

More than that: We love each other. :) They give me hell a lot of
interesting work to do. I always loved to push systems to their
limits.

>Maybe someday you'll grow up, little boy.

Maybe, but I doubt it. I love the child in me and the day it dies will
be the same day I die.
But please, don't underestimate me. When it comes to software I am a
fucking serious person. I want reliably working systems. The "five
nines" are not just some figures.


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
@ 2003-11-11 22:20                                                 ` Gautier Write-only
  2003-11-11 22:38                                                   ` Vinzent 'Gadget' Hoefler
  2003-11-11 22:30                                                 ` Stephane Richard
  1 sibling, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-11 22:20 UTC (permalink / raw)


> >This is amazing. My analogy was between redundant "with/use" clauses
> >and clutter in the front yard of a house for sale.

Vinzent 'Gadget' Hoefler:

> For *sale*. Exactly. BTW, I still don't understand what is redundant
> on with and use. I don't use "use" (well, at least not globally).

In this case, effectively, you are not likely to see a redundance.
In your place I wouldn't worry at all about this proposal.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-08 11:35                                 ` Preben Randhol
@ 2003-11-11 22:28                                   ` Gautier Write-only
  2003-11-12 12:42                                     ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-11 22:28 UTC (permalink / raw)


Preben Randhol:

[...]
> No, I wouldn't actually for these reasons:
> 
>    1. It doesn't become more readable.
>    2. It doesn't make it easier to change a with-ed package to a
>       with and use (or only use) package.
>    3. It isn't a feature which will imporve the language IMHO.
>    4. I find the way I wrote the wit and use more readable and easier to
>       modify (cut'n'paste, for example)
>    5. It would totally break with Ada 95 (if use implicitly with a unit)

If you mean that an Ada 95 couldn't compile an Ada 0Y-with-"[with and ]use"
source, you are right. It is in the nature of improvements...
There are still good Ada 83 compilers around that are unable to compile
the least Ada 95 code with "Ada.Text_IO" etc., and we can live with it.

>    6. Reason as stated in my signature.
> 
> Now I'll continue my ada-suit for vim so I can share it to other vim
> users as soon as possible.
> 
> I'll make the with use macro now ;-)

The writeability problem is small (since you can make a macro) compared
to the readability and maintanability issue of the current syntax.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
  2003-11-11 22:20                                                 ` Gautier Write-only
@ 2003-11-11 22:30                                                 ` Stephane Richard
  2003-11-11 22:54                                                   ` Vinzent 'Gadget' Hoefler
  1 sibling, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-11 22:30 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3736 bytes --]

You like the sweet side of frosted shredded wheats right?

Me too ;-).

"To err is human.  To really screw up, you need C++!"

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com


"Vinzent 'Gadget' Hoefler" <ada.rocks@jlfencey.com> wrote in message
news:bormns$1i4d87$1@ID-175126.news.uni-berlin.de...
Russ wrote:

>Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message
news:<boq8bm$1g79l6$1@ID-175126.news.uni-berlin.de>...
>
>This is amazing. My analogy was between redundant "with/use" clauses
>and clutter in the front yard of a house for sale.

For *sale*. Exactly. BTW, I still don't understand what is redundant
on with and use. I don't use "use" (well, at least not globally).

>Look, you are free to create your own analogies, but please don't
>twist mine beyond recognition and then imagine that they are still my
>analogies. It's unethical. Got that, little boy?

So WTF have you tried to point out, old man? We have to clear the
with's and uses to make Ada more business-compatible or what? Don't
you understand your own analogies?

>I really feel sorry for all you poor guys with the clueless PHBs. My
>managers are fairly reasonable for the most part.

Feel lucky, baby.

>My job is as about as far from marketing and management as you can
>get, but I am mature enough to understand that managers have an
>important job to do.

Well, of course they have. For instance, the job of telling the big
boss that everything already works whilst the engineers are still
struggling getting a beta system to run?

I understand that marketing is very often based on lies, they call
this advertisement, I think. But some things get far above that.

>For starters, without them, I would get no
>funding for my work. And they are wise enough to give me lots of
>discretion on how I do my work.

Great. Mine do that too. You know why? Because they don't understand
what I am doing.

Well, they do that as long as I deliver what they want in time, of
course. Wanna hear a funny real life story? Here it is:

Last Wednesday I was told by one of these "pinheads" that we need a
specific feature - we dropped the idea months before because it would
be much too hard to implement. The system shipped on Friday. - All in
all, I got one and a half day to implement it? Sorry, such things I
can't get out of my head just in a weekend. I'm not drinking *that*
much.

Well, I have to admit that not all of these people are that way.
Sometimes they even drop by and ask me before they sell.

Now guess, who the asshole will be when the customer complains?

>You seem to have nothing but disdain for your managers.

Call it experience. :)

>Well, maybe
>they earned it, but judging by your attitude,

You call it attitude if I want them to deliver *working* systems?

Well, call me arrogant, cynic, sarcastic, ironic, ... whatever. But I
know what I am doing. And still I can laugh. That helps.

>I'll bet that you are
>simply too immature to appreciate their responsibilities.

Oh, I was standing nearby when this particular manager talked to
potential customers. What a luck that I had the decency to keep quiet.
:) At least he kept the lies to a minimum.

>If they're
>pinheads, then I'd say they deserve you and you deserve them. You
>deserve each other.

More than that: We love each other. :) They give me hell a lot of
interesting work to do. I always loved to push systems to their
limits.

>Maybe someday you'll grow up, little boy.

Maybe, but I doubt it. I love the child in me and the day it dies will
be the same day I die.
But please, don't underestimate me. When it comes to software I am a
fucking serious person. I want reliably working systems. The "five
nines" are not just some figures.


Vinzent.





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

* Re: Clause "with and use"
  2003-11-11 22:20                                                 ` Gautier Write-only
@ 2003-11-11 22:38                                                   ` Vinzent 'Gadget' Hoefler
  2003-11-12 12:46                                                     ` Preben Randhol
  2003-11-13  7:26                                                     ` Russ
  0 siblings, 2 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 22:38 UTC (permalink / raw)


Gautier Write-only wrote:

>Vinzent 'Gadget' Hoefler:
>
>> For *sale*. Exactly. BTW, I still don't understand what is redundant
>> on with and use. I don't use "use" (well, at least not globally).
>
>In this case, effectively, you are not likely to see a redundance.

Hmm. True. Good point. :-)

>In your place I wouldn't worry at all about this proposal.

Hey, it's still *my* language! Or so. ;)

Ok, seriously, being able to use "use" without its corresponding with
in one case and differently in another looks inconsistent for me.

To bring it to the point and the way I see it: "with" is for
thecompiler/linker to state dependencies, use is for the programmer.
For me that's two different things and I wouldn't like them to get
mixed up.

For me it's pretty much the same for record types and their
corresponding aspect clauses, they can get quite lengthy some time
(even for a small 8 bit register).
But there one part is for the programmer, the other part for the
compiler. Hopefully nobody would seriously suggest that we could mix
that up, too.

Small (maybe I now stretch it a little bit far) example:

|   type Count is (Binary, BCD);
|
|   for  Count use (Binary => 0, BCD => 1);
|
|   for  Count'Size use 1;

could then look something like this:

|type Count is (Binary => 0, BCD => 1) for Size use 1;

Still looks quite pretty at the first glance. But it mixes things up
that shouldn't be mixed up, IMO.


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11 22:30                                                 ` Stephane Richard
@ 2003-11-11 22:54                                                   ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-11 22:54 UTC (permalink / raw)


Stephane Richard wrote:

>You like the sweet side of frosted shredded wheats right?

Hmm. I never thought about that. But now when you ask, yes. They're
*not* "both good". ;)

>Me too ;-).

Hmm. Does that mean anything?


Vinzent.



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

* Re: Clause "with and use"
  2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
  2003-11-11 15:36                                                 ` Wes Groleau
@ 2003-11-12 11:55                                                 ` Marin David Condic
  2003-11-12 13:10                                                   ` Vinzent 'Gadget' Hoefler
  1 sibling, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-12 11:55 UTC (permalink / raw)


It seems you have confused my point about marketing with some point 
about language selection. I was trying to observe that the keepers of 
Ada (or any other language) are managing a *product* they expect to 
persuade people to use. Anyone selling a *product* to a *customer* has 
to be terribly concerned with giving the customer what they want as best 
they can. Its the job of marketing to figure that out.

You seem to be focusing in on a manager *selecting* some programming 
language - possibly for all sorts of reasons that are highly 
unscientific. This is the bozo that the marketing guys have to try to 
understand and try to tailor the product to his needs. Sometimes, what 
persuades the manager-bozo is some sort of technical superiority. 
Sometimes it has to do with costs, project demands, etc. Sometimes its 
the "Everybody else is using it" syndrome - which, BTW, is a *really* 
legitimate argument for a large variety of reasons. But that manager has 
needs and the guy who comes to market with him in mind and finds out how 
to address his needs is going to succeed.

On the "Everyone else is doing it" syndrome (which I think can be a good 
reason, but we can debate that) - don't worry if that is good or bad. 
Accept it as *reality* and figure out how to use it. If you had 
"Everybody else is using Ada for XYZ type of things" working in your 
favor, that gives you a sales pitch to the manager concerned with XYZ, 
doesn't it? Get "everybody else" using Ada and some of those big 
commercial and government ventures will start coming back to Ada.

MDC


Vinzent 'Gadget' Hoefler wrote:
> Marin David Condic wrote:
> 
> 
>>There isn't anything wrong with "marketing" per se. It serves a useful 
>>purpose. But it isn't done by some manager getting into his head that 
>>"XYZ is what the public will love, so let's make our product have XYZ in 
>>it..."
> 
> 
> Well, actually that is the impression I get when it boils down to what
> tools (programming languages) someone should use. "The others use
> Java? So let's use it, too. It must be good."
> 
> Well, the H&R-people are similar, instead of asking you "Are you able
> to build and maintain a large software-system" they ask you "Do you
> know $LANGUAGE"? This is as much idiotic as asking someone "Do you
> have at least five years experience with the medium-size-hammer from
> $BRANDNAME?" instead of asking "Are able to simply put a nail into the
> wall?"
> 
> Answer_1: "Oh yes, I have been trying to put a nail into the wall with
> that hammer for seven years. Now still every seconds nail gets bended,
> but that doesn't matter, I have enough nails."
> 
> Answer_2: "Well, not with that particular thing, but I did that with
> the small-sized one, it better fits the job to be done. But now I know
> how to handle that I think I can quickly learn how to handle the one
> you want me to use."
> 
> Guess, who gets hired.
> 
> 
>>Marketing is done with research and statistics, among other 
>>tools. You don't *assume* that your potential customers want XYZ - you 
>>go find out for sure what they want by asking them.
> 
> 
> Quite true. If you were talking about the ideal approach, I even would
> agree with you. But even then: the decision to use a programming
> language has seldom to do with *any* of that.
> 
> 
>>A fair approach would be to have a survey of some sample set of 
>>C/C++/Java users who had some familiarity with Ada
> 
> 
> It might be hard to find enough people so one could claim statistical
> significance. Literally spoken, almost every idiot out there on the
> street claims to have knowledge of C/C++/Java but if you ask them
> about Ada the best response I'd ever get was something like "oh that's
> the language from the eighties?" ... The same guy told me that Jython
> is something similar and I would like it, because it would fit my
> needs for a programming language like Ada. Huh? WTF is he talking
> about?
> 
> 
>>Guesswork is interesting in a newsgroup, but deadly when trying to make 
>>major decisions about a product in a business environment.
> 
> 
> Yes. But reality says, hell a *lot* of (especially software) projects
> just went dead, so there might be a lot of guesswork involved (either
> in the requirements, the schedule, ...).
> 
> 
>>You don't 
>>guess at what is going to make your existing customers happy.
> 
> 
> Well, the customer usually wants a product and doesn't care about the
> tool you used to develop the product with. But the customer will
> probably care about the final price, so you should be able to make a
> good decision to keep this price low. And usually you shouldn't care
> about some initial costs, you should look further and see what's
> better in the long run. Well, statistically I still have some years of
> my life left to actually find a manager who really thinks this way, so
> I just keep my hope. :->
> 
> These days I still wonder why all my deadlines are already scheduled
> for yesterday. Even those for the projects which didn't even start
> yet. ;-)
> 
> 
>>You also don't guess about what would attract new business from 
>>potential customers. You ask them what they'd want in your product and 
>>try to address the highest priorities they set.
> 
> 
> Yes. But I'd assume that the decision which tools you use to be able
> to actually deliver the product to the customer has at least
> *something* to do with management, hasn't it? Well, I think it should.
> Unfortunately, a bunch of managers ouside there seem to have no clue
> of *what* they are managing.
> 
> 
>>To do otherwise will have you bankrupt very quickly.
> 
> 
> Indeed. :->
> 
> 
> Vinzent.


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-11 16:24                                                   ` Vinzent 'Gadget' Hoefler
@ 2003-11-12 12:01                                                     ` Marin David Condic
  2003-11-12 13:07                                                       ` Vinzent 'Gadget' Hoefler
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-12 12:01 UTC (permalink / raw)


Don't get marketing confused with advertising or sales. Marketing is 
supposed to find out what the customer wants and try to design products 
that will fit that need. Advertising and sales can be part of that 
effort, but is an after-the-fact add-on. People often confuse "Sales" 
with "Marketing" and the two are not the same.

Yes, people will *lie* in sales and advertising - or at least attempt to 
mislead. That doesn't make it right, but lets at least give some credit 
to the people who do it well. Marketing, sales, advertising, etc., are 
all essential parts of running an effective business. It takes people 
with special skills and special training to do it - just like software 
designers, they are professionals too. If Ada had a better team and 
bigger budget to do this, it could be a dominant force in the language wars.

MDC

Vinzent 'Gadget' Hoefler wrote:
> 
> And now someone will tell me how proper and real-world marketing
> differs from that. ;)
> 
> 
> Vinzent.


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-11 19:43                                           ` Russ
@ 2003-11-12 12:35                                             ` Preben Randhol
  0 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-12 12:35 UTC (permalink / raw)


On 2003-11-11, Russ <18k11tm001@sneakemail.com> wrote:
>
> If you can derive that from what I wrote above (or from anything I've
> ever written on this forum) then it is clear to me that you are
> obsessed with jealosy over the popularity of C. I did not even mention
> C or language safety. You simply pulled that stuff out of your rear
> end.

No, I'm not jealous. I'm scared for the future when more tasks and
informations are online and we are more or less 100% dependent on
computers.

> If you are going to obsess over something, why not make is something
> "normal" like sex? Obsessing over the popularity of C is just strange.

? It is you that are obsessing about all the features from C we should
add to Ada, not me.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11 20:01                                               ` Russ
@ 2003-11-12 12:41                                                 ` Preben Randhol
  2003-11-13  6:27                                                   ` Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-12 12:41 UTC (permalink / raw)


On 2003-11-11, Russ <18k11tm001@sneakemail.com> wrote:
> And you *still* miss the point, even after Mr. Rosen spoonfeeds it to
> you. The point is *not* that redundant "with" and "use" clauses
> require extra typing. The point is that the poor *reader* of your code
> still has to *read* your cluttered code. 

And this is cluttered how?

> In your reply you did not even consider the *reader*. The *reader*
> doesn't give a hoot how many keystrokes you used to generate the code.
> All I can say is that I'm darn glad I'll never have to read your
> code.

WHAT!? 

Please explain to me how I don't care about the reader? What I was
saying is that you do not need to tell the reader in any additional way
which package that are used and which are not as the source code is
plain and clear. And please explain how you would write.

with Ada.Text_IO; use Ada.Text_IO;

in another way in Ada95.

How do you care about the reader when you are writing code that isn't
Ada95 and has to be run through a preprosessor to become Ada95 code?

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11 22:28                                   ` Gautier Write-only
@ 2003-11-12 12:42                                     ` Preben Randhol
  0 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-12 12:42 UTC (permalink / raw)


On 2003-11-11, Gautier Write-only <gautier@fakeaddress.nil> wrote:
> The writeability problem is small (since you can make a macro) compared
> to the readability and maintanability issue of the current syntax.

How is it a maintainability problem?


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-11 22:38                                                   ` Vinzent 'Gadget' Hoefler
@ 2003-11-12 12:46                                                     ` Preben Randhol
  2003-11-13  7:26                                                     ` Russ
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-12 12:46 UTC (permalink / raw)


On 2003-11-11, Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote:
> Gautier Write-only wrote:
> Small (maybe I now stretch it a little bit far) example:
>
>|   type Count is (Binary, BCD);
>|
>|   for  Count use (Binary => 0, BCD => 1);
>|
>|   for  Count'Size use 1;
>
> could then look something like this:
>
>|type Count is (Binary => 0, BCD => 1) for Size use 1;
>
> Still looks quite pretty at the first glance. But it mixes things up
> that shouldn't be mixed up, IMO.

I must say I agree with you here.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-12 12:01                                                     ` Marin David Condic
@ 2003-11-12 13:07                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-13 12:12                                                         ` Marin David Condic
  0 siblings, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-12 13:07 UTC (permalink / raw)


Marin David Condic wrote:

>Don't get marketing confused with advertising or sales.

It's not me. ;)

>all essential parts of running an effective business. It takes people 
>with special skills and special training to do it - just like software 
>designers, they are professionals too. If Ada had a better team and 
>bigger budget to do this, it could be a dominant force in the language wars.

Yes. I agree with you here. But that is what scares me a little bit.
Why do you need a bigger budget if you already have the better
product?


Vinzent.



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

* Re: Clause "with and use"
  2003-11-12 11:55                                                 ` Marin David Condic
@ 2003-11-12 13:10                                                   ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-12 13:10 UTC (permalink / raw)


Marin David Condic wrote:

>It seems you have confused my point about marketing with some point 
>about language selection.

Well, yes. Not really confused, I just got a little way off track.

>On the "Everyone else is doing it" syndrome (which I think can be a good 
>reason, but we can debate that) - don't worry if that is good or bad.

I'm not in the position to change that anyway.
 
>Accept it as *reality* and figure out how to use it. If you had 
>"Everybody else is using Ada for XYZ type of things" working in your 
>favor, that gives you a sales pitch to the manager concerned with XYZ, 
>doesn't it?

Could happen. Let's see. Fortunately I am currently doing some
embedded stuff in Ada. My new boss doesn't like C either and Java
isn't just the right choice for this task. So what's left? :)


Vinzent.



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

* Re: Eachus' Measure of Goodness
  2003-11-11 19:46                                           ` Eachus' Measure of Goodness (was: Clause "with and use") Jeffrey Carter
@ 2003-11-12 16:08                                             ` Robert I. Eachus
  2003-11-12 17:24                                               ` Stephane Richard
  2003-11-12 17:37                                               ` tmoran
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-12 16:08 UTC (permalink / raw)


Jeffrey Carter wrote:

> For example, I have a simple program I run every day (it creates my 
> signature file). It has a procedure body only, with 4 with clauses... 
> To my mind this has S = 0, B = 4, and N = 1, giving G (for goodness) = 
> 4, but to another person N may be greater than 10, counting all the 
> parent packages and following every path until you reach units with no 
> with clauses.

That's the way I count it too.  If you want, you can analyze the (say) 
GNAT library packages if you want, but that gives you a number for GNAT.

As for what is a good number, anything below 5 seems to be good, and 
over 10 is bad.  In practice there are very few results in between those 
numbers. ;-)  I remember one horrible example with around 100 packages 
(N around 250) where the average package spec had 10 withs, and the 
average body 63!

> Sorry for all the questions, but I like metrics, and always want to try 
> out new ones.

Hmmm.  If you want to experiment with this, the "interesting" question I 
haven't resolved is which logrithm to use.  Base 2 is too generous and 
base 10 may be too conservative, but e was just chosen because it was 
there.  The right way to find the proper base is to use regression on a 
sample of "good" libraries.

So I had better get back to work on my registry project! ;-)

Seriously, things slowed down because I wanted to use the new version 
XMLAda, so I installed GNAT 3.15a, and started recompiling everything to 
insure there are no version skew problems.  I have a lot of directories 
of Ada code--mine and others--on my PC...

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Eachus' Measure of Goodness
  2003-11-12 16:08                                             ` Eachus' Measure of Goodness Robert I. Eachus
@ 2003-11-12 17:24                                               ` Stephane Richard
  2003-11-12 17:37                                               ` tmoran
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-12 17:24 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 622 bytes --]


>
> So I had better get back to work on my registry project! ;-)

*** I think that's an EXCELLENT Idea ;-).

>
> Seriously, things slowed down because I wanted to use the new version
> XMLAda, so I installed GNAT 3.15a, and started recompiling everything to
> insure there are no version skew problems.  I have a lot of directories
> of Ada code--mine and others--on my PC...
>
*** A good reason for the slow down :-)

> -- 
>                                            Robert I. Eachus
>
> 100% Ada, no bugs--the only way to create software.
>


-- 

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com





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

* Re: Eachus' Measure of Goodness
  2003-11-12 16:08                                             ` Eachus' Measure of Goodness Robert I. Eachus
  2003-11-12 17:24                                               ` Stephane Richard
@ 2003-11-12 17:37                                               ` tmoran
  2003-11-13  3:04                                                 ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: tmoran @ 2003-11-12 17:37 UTC (permalink / raw)


>> have been comfortable with (2S + B)/(N * ln(N)) where N is the total
>> number of compilation units and subunits, S is the number of with
>> clauses on package specs (including generic package specs) and B is the
>> number of with clauses on other units.
> As for what is a good number, anything below 5 seems to be good, and
  Does that mean that in a 50 package system, the average package
should have under 10 "with"s in its spec or 20 in its body or some
combination?  And a 400 package system could average 50% more?



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

* Re: Eachus' Measure of Goodness
  2003-11-12 17:37                                               ` tmoran
@ 2003-11-13  3:04                                                 ` Robert I. Eachus
  2003-11-13  5:17                                                   ` Jeffrey Carter
  2003-11-13  9:53                                                   ` Alexandre E. Kopilovitch
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-13  3:04 UTC (permalink / raw)


tmoran@acm.org wrote:

>   Does that mean that in a 50 package system, the average package
> should have under 10 "with"s in its spec or 20 in its body or some
> combination?  And a 400 package system could average 50% more?

Something like that.  But I try to avoid the word should and must is out 
of the question.  The better the design, the lower the number.  So it is 
really a measure of how both how well the system design partitions 
functionality, and the coherence of the actual code.  Also of course, 
the lower the number, the lower the coupling of the various modules.

I could refer you to some papers--some of them from MITRE--on coupling 
and cohesion measures.  The problem is that they require a good ASIS 
implementation (or in the case of the MITRE work, DIANA), and a lot of 
support tools.  This is if you will, a poor man's measure of coupling 
and cohesion that can be done fairly easily.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Eachus' Measure of Goodness
  2003-11-13  3:04                                                 ` Robert I. Eachus
@ 2003-11-13  5:17                                                   ` Jeffrey Carter
  2003-11-13  6:28                                                     ` Mark A. Biggar
  2003-11-13  9:53                                                   ` Alexandre E. Kopilovitch
  1 sibling, 1 reply; 385+ messages in thread
From: Jeffrey Carter @ 2003-11-13  5:17 UTC (permalink / raw)


I guess I misread the equation. Dividing by N ln N, G is undefined for N 
= 1.

-- 
Jeff Carter
"If you don't get the President of the United States on that
phone, ... you're going to have to answer to the Coca-Cola
Company."
Dr. Strangelove
32




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

* Re: Clause "with and use"
  2003-11-12 12:41                                                 ` Preben Randhol
@ 2003-11-13  6:27                                                   ` Chad R. Meiners
  2003-11-13  7:32                                                     ` Anders Wirzenius
  0 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-13  6:27 UTC (permalink / raw)



"Preben Randhol" <randhol+valid_for_reply_from_news@pvv.org> wrote in
message
news:slrnbr4aj9.6f3.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no...
>> Please explain to me how I don't care about the reader? What I was
> saying is that you do not need to tell the reader in any additional way
> which package that are used and which are not as the source code is
> plain and clear. And please explain how you would write.
>
> with Ada.Text_IO; use Ada.Text_IO;

First note that I am not saying that your way is cluttered, but I prefer

with Ada.Text_IO;
with Ada.Integer_Text_IO;

use  Ada.Text_IO;
use  Ada.Integer_Text_IO;

because I like keeping the two in separate regions of my code and the lines
shorter.  Anyway I prefer that the context clause sticks because it helps
the readers familiarize themselves with the code base.  There is nothing
more annoying than jumping into a project's code and not being able to
figure out the main dependencies.  So in response to Russ's claim that
context clause are ugly lawn junk, I suggest he play around with visual
basic a little bit.  VB modules do not list their dependencies in the source
code so working on other people's code is a major pain.  Java is almost as
bad since import clauses are optional.  C headers are annoying to read due
to all the preprocessor crud embedded in them.  Give me context clauses and
package specifications any day.   They are more like having a well designed
landscape for a yard.

-CRM





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

* Re: Eachus' Measure of Goodness
  2003-11-13  5:17                                                   ` Jeffrey Carter
@ 2003-11-13  6:28                                                     ` Mark A. Biggar
  0 siblings, 0 replies; 385+ messages in thread
From: Mark A. Biggar @ 2003-11-13  6:28 UTC (permalink / raw)


Jeffrey Carter wrote:

> I guess I misread the equation. Dividing by N ln N, G is undefined for N 
> = 1.

If you only have 1 compliation unit the either it doesn't matter how
many with clauses you have or the N = 1 case is impossible as you should
count the all the packages in your partition, including Standard and
any other LRM defined library package you use.


-- 
mark@biggar.org
mark.a.biggar@comcast.net




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

* Re: Clause "with and use"
  2003-11-11 15:36                                         ` Robert I. Eachus
  2003-11-11 19:46                                           ` Eachus' Measure of Goodness (was: Clause "with and use") Jeffrey Carter
@ 2003-11-13  6:37                                           ` Chad R. Meiners
  2003-11-13 19:11                                             ` tmoran
  1 sibling, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-13  6:37 UTC (permalink / raw)



"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:7KWdnct0w8mEnyyiRVn-hA@comcast.com...
> If you want a single number to measure the "goodness" of the design, I
> have been comfortable with (2S + B)/(N * ln(N)) where N is the total
> number of compilation units and subunits, S is the number of with
> clauses on package specs (including generic package specs) and B is the
> number of with clauses on other units.  Some people may disagree with
> including separate subunits in N, but I seldom find designs abusing
> that.  There is a problem though is some compilation units are too
> small, so I get concerned when the average size of compilation units is
> outside the 100 to 1000 NCSLOC (non-comment source lines of code) range.

So if you write one package that pramga imports all of your required
functions and write your entire project in a single procedure that with's
only that package, you get a goodness of 1/2?  ;-) ;-)





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

* Re: Clause "with and use"
  2003-11-11 22:38                                                   ` Vinzent 'Gadget' Hoefler
  2003-11-12 12:46                                                     ` Preben Randhol
@ 2003-11-13  7:26                                                     ` Russ
  2003-11-13 19:59                                                       ` Chad R. Meiners
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-13  7:26 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote in message news:<borog2$1fpdhl$1@ID-175126.news.uni-berlin.de>...
> Gautier Write-only wrote:
> 
> >Vinzent 'Gadget' Hoefler:
> >
> >> For *sale*. Exactly. BTW, I still don't understand what is redundant
> >> on with and use. I don't use "use" (well, at least not globally).

> >In this case, effectively, you are not likely to see a redundance.
> 
> Hmm. True. Good point. :-)

I say it's redundant because it doesn't make sense to have "use"
without a corresponding "with". Let's say "with" is level 1, and "use"
is level 2. If you're at level 2, that implies you're already past
level 1, so specifying both level 1 and level 2 is redundant. It's
like saying that the Florida Marlins won the World Series, then also
saying that they won the NL Championship. The former implies the
latter and is therefore redundant. It belongs in the Department of
Redundancy Department.

I appreciate your discipline in shunning "use," but I assume the
language provides it for a good reason. For basic I/O and math, for
example, I think "use" is perfectly appropriate. I'm sorry, but "sin"
and "cos" will always be just "sin" and "cos" to me, and I prefer to
see them that way. (I gave an example on this forum a few months ago
of great-circle equations involving no less than 10 math function
calls in a single expression.)

> >In your place I wouldn't worry at all about this proposal.
> 
> Hey, it's still *my* language! Or so. ;)
> 
> Ok, seriously, being able to use "use" without its corresponding with
> in one case and differently in another looks inconsistent for me.

I think the cleanest approach is to let "use" imply "with". What does
that mean? If the compiler sees "use x", but x is not yet "in scope",
let the compiler simply pretend that the line "use x" had been
preceded by "with x".

Now, admittedly, that involves some semantic subtleties because the
"withed" package spec need be identical to the "used" spec (due to the
conventions for child packages). I suspect that any potential
ambiguity is easily resolvable with simple conventions, but I could be
wrong. OK, suppose I am wrong. Then the fallback position is to allow
"with and use x" or "with/use x", as previously suggested. That
removes all semantic ambiguity, and is logically equivalent to
separate "with" and "use" clauses, but without the repetitious
clutter.

> To bring it to the point and the way I see it: "with" is for
> thecompiler/linker to state dependencies, use is for the programmer.
> For me that's two different things and I wouldn't like them to get
> mixed up.

Well yes, but ... "with" tells the compiler which packages will be
used (ironically), and "use" tells the compiler how the elements of a
package will be referred to, so it's for the compiler too.

For those who insist that this whole issue is "minor" or even
"trivial", here's what I have to say to you. You're all idiots and
dumbsh*ts. Relax, I'm just kidding. You are completely right. It *is*
trivial. But as I said before, it's like the clutter in the front yard
of a house for sale: it can do harm to the market value of Ada, and
it's trivial to clean up too. For crying out loud, just do it and be
done with it.



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

* Re: Clause "with and use"
  2003-11-13  6:27                                                   ` Chad R. Meiners
@ 2003-11-13  7:32                                                     ` Anders Wirzenius
  2003-11-13 12:29                                                       ` Marin David Condic
                                                                         ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Anders Wirzenius @ 2003-11-13  7:32 UTC (permalink / raw)



"Chad R. Meiners" <crmeiners@hotmail.com> wrote in message
news:bov88d$217c$1@msunews.cl.msu.edu...
> First note that I am not saying that your way is cluttered, but I
prefer
>
> with Ada.Text_IO;
> with Ada.Integer_Text_IO;
>
> use  Ada.Text_IO;
> use  Ada.Integer_Text_IO;
>
> because I like keeping the two in separate regions of my code and
the lines

What had the "Ada community" (present and potential) lost if the
use_clause had not been allowed in the context_clause (ARM 10.1.2)?
What if the use_clause had to be put in a declarative part?
I often see code which have the "with aaa; use aaa;" in the beginning
of the code and the only place where the aaa is needed is way down in
the code. Shouldn�t a proper place for the use_close be (like Chad
writes), in the (separate) region where it is needed? The with_clause
stays at the beginning of the code to declare the context.

Anders




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

* Re: Eachus' Measure of Goodness
  2003-11-13  3:04                                                 ` Robert I. Eachus
  2003-11-13  5:17                                                   ` Jeffrey Carter
@ 2003-11-13  9:53                                                   ` Alexandre E. Kopilovitch
  1 sibling, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-13  9:53 UTC (permalink / raw)
  To: comp.lang.ada

Robert I. Eachus wrote:

>I could refer you to some papers--some of them from MITRE--on coupling 
>and cohesion measures.

It is interesting - if those papers are accessible. Although I am rather
sceptical about software metrices, but I guess that for Ada language it makes
more sense then for other programming languages that I have seen, and MITRE
possibly had relatively good data for experimenting with metrics (somehow less
wild code - both in its purpose and in its style, comparing with general
situation) and had enough that data.




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Clause "with and use"
  2003-11-12 13:07                                                       ` Vinzent 'Gadget' Hoefler
@ 2003-11-13 12:12                                                         ` Marin David Condic
  2003-11-13 17:49                                                           ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
  2003-11-13 22:04                                                           ` Clause "with and use" Wes Groleau
  0 siblings, 2 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-13 12:12 UTC (permalink / raw)


Ever heard of hiding a lamp under a bushel basket? You can have the 
greatest technology in the world, but if you can't effectively 
*communicate* that to a wide number of people how are they going to know 
about it or be inspired to try it out? Ada has been one public-relations 
disaster after another from its inception. People felt it was being 
rammed down their throats. They had the perception it was slow, buggy 
and way too expensive. They didn't think it addressed their problems and 
that it would not work. We can stand here all day and say "That's not 
true!!!" but effectively, that message did not get sent to the wide 
range of potential users. Marketing, advertising and sales might have 
helped that a lot.

Even more recently, we had a major language revision come out in 1995 - 
pretty close to the time that Sun was starting to hawk Java. Java had 
merits. Sun wanted to make sure the world knew about those merits. 
(Please don't deny that Java had some merits - it *was* an improvement 
over other things and provided capabilities not found with other 
languages - like portable executables across the net and a large 
library.) Sun made sure that there were ads in magazines, radio spots, 
interviews and "Puff Pieces" on various radio shows (I recall hearing 
one on NPR & I think there were probably others). Ada95 had merits - 
like high integrity, portability and object oriented programming. What 
did you hear about it anywhere except within the confines of places 
frequented by the already-converted? Was there any publicity? Any hype? 
Any stories about how wonderful it was getting planted in the press?

So we've got another language revision coming out. The problem is it is 
more of an "incremental" revision - relatively minor enhancements to the 
language rather than anything new and big with respect to capabilities. 
If Ada had some revolutionary new thing to offer, it might have 
something to hype within the media. (Like if it had a library that went 
beyond what people traditionally expect?) If it had something *new* to 
hype that might interest the general media, and it had someone running 
an advertizing campaign, chances are, it could get some interest and 
stories done about it. If it had some vision for the future - rather 
than essentially some "Me Too!!!" kinds of capabilities - it might get 
some good press. If it had a large institutional backer, it might have 
some money to place some ads in journals and get the word out that Ada 
is cool.

People don't conduct scientific studies to find out what is the best 
technology to apply when it comes to tools. They buy the tools based on 
what they have heard about and what seems to address their problems the 
best. That's just human nature. Who goes to the hardware store to buy a 
set of socket wrenches and  conducts a study on the strengths and 
weaknesses of every different brand available at every store? Nobody. 
You find a brand that has a good reputation, is available at a 
reasonable cost and looks like it meets your needs. People buy 
"Craftsman" or "Snap-On" because they are good quality, meet the needs 
and are generally available at a reasonable price. Maybe there's "Fred's 
Hand Tools" out there with *superior* products - but who ever heard of 
them to even know about investigating them?

That's why all that marketing, sales and advertising is really important 
for Ada. Perhaps instead of trying to come up with an all-volunteer, 
freebie library, we should have an all-volunteer, freebie advertising 
blitz? :-)

MDC


Vinzent 'Gadget' Hoefler wrote:
> 
> Yes. I agree with you here. But that is what scares me a little bit.
> Why do you need a bigger budget if you already have the better
> product?
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-13  7:32                                                     ` Anders Wirzenius
@ 2003-11-13 12:29                                                       ` Marin David Condic
  2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
  2003-11-14 12:37                                                       ` Georg Bauhaus
  2 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-13 12:29 UTC (permalink / raw)


Assuming for a minute that it was a mistake, there is no way to change 
that now. There is way too much code out there that would be brokent by 
doing that.

I agree that it is good style (in general) to scope the use clause to 
just where it si needed. However, there are occasions when I might want 
something to simply appear as if it were a part of the language and then 
the more global use clause might be acceptable. Its a judgement call and 
we've had that whole debate numerous times. Given that the issue *is* 
debatable, its best to leave the capability there.

MDC

Anders Wirzenius wrote:
> 
> What had the "Ada community" (present and potential) lost if the
> use_clause had not been allowed in the context_clause (ARM 10.1.2)?
> What if the use_clause had to be put in a declarative part?
> I often see code which have the "with aaa; use aaa;" in the beginning
> of the code and the only place where the aaa is needed is way down in
> the code. Shouldn�t a proper place for the use_close be (like Chad
> writes), in the (separate) region where it is needed? The with_clause
> stays at the beginning of the code to declare the context.
> 
> Anders
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-13 12:12                                                         ` Marin David Condic
@ 2003-11-13 17:49                                                           ` Warren W. Gay VE3WWG
  2003-11-14  5:00                                                             ` Robert I. Eachus
  2003-11-17  2:31                                                             ` Russ
  2003-11-13 22:04                                                           ` Clause "with and use" Wes Groleau
  1 sibling, 2 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-13 17:49 UTC (permalink / raw)


Marin David Condic wrote:
> Ever heard of hiding a lamp under a bushel basket? You can have the 
> greatest technology in the world, but if you can't effectively 
> *communicate* that to a wide number of people how are they going to know 
> about it or be inspired to try it out? Ada has been one public-relations 
> disaster after another from its inception. People felt it was being 
> rammed down their throats. They had the perception it was slow, buggy 
> and way too expensive. They didn't think it addressed their problems and 
> that it would not work. We can stand here all day and say "That's not 
> true!!!" but effectively, that message did not get sent to the wide 
> range of potential users. Marketing, advertising and sales might have 
> helped that a lot.
> 
...
> 
> So we've got another language revision coming out. The problem is it is 
> more of an "incremental" revision - relatively minor enhancements to the 
> language rather than anything new and big with respect to capabilities. 
> If Ada had some revolutionary new thing to offer, it might have 
> something to hype within the media. (Like if it had a library that went 
> beyond what people traditionally expect?) If it had something *new* to 

I think most of us would agree that Ada was ahead of its time
when it came out. By 1995, I believe the "market" had probably
already accepted C/C++ as the dominant language, largely due to
its widespread use in operating systems (UNIX + NT), and major
applications. Even in 1995 (including up to present) the kind of
thing you hear now is "I remember Ada". Immediatly the association
is that it is "old", even though C is just as old (younger folks
often havn't even heard of it, unless the University taught it).

Even though Ada has been updated, and going through
another update, people seem to remember it as a "once was"
technology.

Or they remember it was too big, or too slow. People tend
to see C as lean and mean, and C++ not much different.
The Ada compiler technology was a challenge for ancient hardware,
but people seem to fail to realize that even though applications,
O/S's have bloated over the years and CPUs have kept pace,
that Ada translaters are no longer "huge" burdens on todays
hardware. Witness the speed that GNAT runs on a laptop. Witness
the small disk footprint of GNAT on a 120GB hard drive ;-)

I think one possible prong of a concerted new Ada marketing
campaign needs to be:

   "Ada is still ahead of its time"

or perhaps something like:

   "Ada is still ahead of the pack"

or some such.

Somehow we have to shake this impression that Ada is old,
outdated, fat or ugly.

I have said this before, if Ada was marketed by a company,
the best approach might be to rename the technology with
some improvements. Then in the fine print say something
along the lines of "The X language was based primarily
upon the lessons learned from Ada".  Then the press,
might view this as an exciting new technology and get
the printing presses rolling again.

As it stands now, the press too often remembers it as
a "has been". Any technical writers are often too steeped
in C/C++, to give it any credit, which also works against it.

Just my $0.02 for today.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-13  7:32                                                     ` Anders Wirzenius
  2003-11-13 12:29                                                       ` Marin David Condic
@ 2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
  2003-11-14  8:32                                                         ` Dmitry A. Kazakov
  2003-11-14  9:05                                                         ` Anders Wirzenius
  2003-11-14 12:37                                                       ` Georg Bauhaus
  2 siblings, 2 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-13 17:51 UTC (permalink / raw)


Anders Wirzenius wrote:

> "Chad R. Meiners" <crmeiners@hotmail.com> wrote in message
> news:bov88d$217c$1@msunews.cl.msu.edu...
> 
>>First note that I am not saying that your way is cluttered, but I
> 
> prefer
> 
>>with Ada.Text_IO;
>>with Ada.Integer_Text_IO;
>>
>>use  Ada.Text_IO;
>>use  Ada.Integer_Text_IO;
>>
>>because I like keeping the two in separate regions of my code and
> 
> the lines
> 
> What had the "Ada community" (present and potential) lost if the
> use_clause had not been allowed in the context_clause (ARM 10.1.2)?
> What if the use_clause had to be put in a declarative part?
> I often see code which have the "with aaa; use aaa;" in the beginning
> of the code and the only place where the aaa is needed is way down in
> the code. Shouldn�t a proper place for the use_close be (like Chad
> writes), in the (separate) region where it is needed? The with_clause
> stays at the beginning of the code to declare the context.
> 
> Anders

I agree with this whole-heartedly for anything more than
a simple "hello world" program. This keeps the name
clashes to a minimum, and it prevents unintended
references to functions/procedures in the wrong package.
There may be some exceptions to this, but these should be
kept to a bare minimum, IMHO.
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-13  6:37                                           ` Clause "with and use" Chad R. Meiners
@ 2003-11-13 19:11                                             ` tmoran
  2003-11-14  4:57                                               ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: tmoran @ 2003-11-13 19:11 UTC (permalink / raw)


>> have been comfortable with (2S + B)/(N * ln(N)) where N is the total
  Given an N package system, with "goodness" G, and the opportunity to
split one package, A, into two, A1 and A2:  Everyplace that 'with'ed A
now needs to 'with' either A1 or A2 or both.  If the number of bodies that
will need both (ie, experience a net increase in 'with's), plus twice the
number of specs that will need both, is less than G*ln(N), you should do
the split.
  So in a 150 package system with goodness 5, if a package can be split
with no more than 8 specs that will need to 'with' *both* A1 and A2, and
no more than 9 such bodies, doing the split will make the system "better".
  Does a similar metric - limiting the context necessary for some
piece of code - apply to the size of a procedure or its number of
variables, or the number of first-level components of a record, etc?



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

* Re: Clause "with and use"
  2003-11-13  7:26                                                     ` Russ
@ 2003-11-13 19:59                                                       ` Chad R. Meiners
  2003-11-14  5:09                                                         ` Robert I. Eachus
  2003-11-14  5:45                                                         ` Russ
  0 siblings, 2 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-13 19:59 UTC (permalink / raw)


----- Original Message ----- 
From: "Russ" <18k11tm001@sneakemail.com>
Newsgroups: comp.lang.ada
Sent: Thursday, November 13, 2003 2:26 AM
Subject: Re: Clause "with and use"

> I say it's redundant because it doesn't make sense to have "use"
> without a corresponding "with". Let's say "with" is level 1, and "use"
> is level 2. If you're at level 2, that implies you're already past
> level 1, so specifying both level 1 and level 2 is redundant. It's
> like saying that the Florida Marlins won the World Series, then also
> saying that they won the NL Championship. The former implies the
> latter and is therefore redundant. It belongs in the Department of
> Redundancy Department.

Your analogy is bad.

with Ada.Text_IO;
-- I want to be able to reference Ada.Text_IO in this unit.

use  Ada.Text_IO;
-- I want Ada.Text_IO's components to be placed into the current scoping
block.
(does it make sense to use a withed procedure?)

> I appreciate your discipline in shunning "use," but I assume the
> language provides it for a good reason. For basic I/O and math, for
> example, I think "use" is perfectly appropriate. I'm sorry, but "sin"
> and "cos" will always be just "sin" and "cos" to me, and I prefer to
> see them that way. (I gave an example on this forum a few months ago
> of great-circle equations involving no less than 10 math function
> calls in a single expression.)

Well you can always place the use clauses in the great-circle function then.

>
> I think the cleanest approach is to let "use" imply "with". What does
> that mean? If the compiler sees "use x", but x is not yet "in scope",
> let the compiler simply pretend that the line "use x" had been
> preceded by "with x".

So you would you want a use clause that is nested within a function to imply
a withed package?  In my opinion that is practically as bad as Java allowing
you to reference any class from any point in your class.  Both cases make it
very difficult to find all the referenced packages.

> Now, admittedly, that involves some semantic subtleties because the
> "withed" package spec need be identical to the "used" spec (due to the
> conventions for child packages). I suspect that any potential
> ambiguity is easily resolvable with simple conventions, but I could be
> wrong. OK, suppose I am wrong. Then the fallback position is to allow
> "with and use x" or "with/use x", as previously suggested. That
> removes all semantic ambiguity, and is logically equivalent to
> separate "with" and "use" clauses, but without the repetitious
> clutter.

with's and use's for the most part belong in different regions of the code.
Providing syntax to couple then together would be a determent to anyone
learning the language.

> For those who insist that this whole issue is "minor" or even
> "trivial", here's what I have to say to you. You're all idiots and
> dumbsh*ts. Relax, I'm just kidding.

I wonder how often you call the people you work with idiots and dumbsh*ts to
their face and then say, "Relax, I'm just kidding".  As you might realize,
they won't believe the second part; why should we believe you here.  You
have already shown that the only opinion and information that you value are
those that support your ideas.  Statements like the above just reinforce
everyone's opinion that this is true.

> You are completely right. It *is*
> trivial. But as I said before, it's like the clutter in the front yard
> of a house for sale: it can do harm to the market value of Ada, and
> it's trivial to clean up too. For crying out loud, just do it and be
> done with it.

But it isn't clutter; with and use serve two different purposes so they
shouldn't be combined.





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

* Re: Clause "with and use"
  2003-11-13 12:12                                                         ` Marin David Condic
  2003-11-13 17:49                                                           ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
@ 2003-11-13 22:04                                                           ` Wes Groleau
  2003-11-14  4:16                                                             ` Marin David Condic
  1 sibling, 1 reply; 385+ messages in thread
From: Wes Groleau @ 2003-11-13 22:04 UTC (permalink / raw)


Marin David Condic wrote:
> pretty close to the time that Sun was starting to hawk Java. Java had 
> merits. Sun wanted to make sure the world knew about those merits. 
> (Please don't deny that Java had some merits - it *was* an improvement 
> over other things and provided capabilities not found with other 
> languages - like portable executables across the net and a large 
> library.) Sun made sure that there were ads in magazines, radio spots, 
> interviews and "Puff Pieces" on various radio shows (I recall hearing 
> one on NPR & I think there were probably others). Ada95 had merits - 

Indeed they did.  I couldn't help but notice Sun's
feature checklists comparing Java to several other
languages.  They never mentioned Ada--and I don't
believe it was out of ignorance.  I think they
made a conscious decision to NOT show anyone how
Java compared with Ada.  :-)

-- 
Wes Groleau
   "Grant me the serenity to accept those I cannot change;
    the courage to change the one I can;
    and the wisdom to know it's me."
                                -- unknown




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

* Re: Clause "with and use"
  2003-11-13 22:04                                                           ` Clause "with and use" Wes Groleau
@ 2003-11-14  4:16                                                             ` Marin David Condic
  0 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-14  4:16 UTC (permalink / raw)


Maybe so. Just notice that a) Java had something new (sort of) to offer 
and b) Sun did a superb job of getting that message out. The lesson to 
learn is that if Ada wanted to try to gain some market dominance that it 
a) needs to have something *new* to offer and b) needs to do a superb 
job of getting that message out. You can't simply rely on it being a 
"superior technology". Build a better mousetrap and you *still* need to 
tell people about it or they'll never beat a path to your door.

MDC

Wes Groleau wrote:
> 
> Indeed they did.  I couldn't help but notice Sun's
> feature checklists comparing Java to several other
> languages.  They never mentioned Ada--and I don't
> believe it was out of ignorance.  I think they
> made a conscious decision to NOT show anyone how
> Java compared with Ada.  :-)
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-13 19:11                                             ` tmoran
@ 2003-11-14  4:57                                               ` Robert I. Eachus
  2003-11-14  7:05                                                 ` tmoran
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14  4:57 UTC (permalink / raw)


tmoran@acm.org wrote:

> So in a 150 package system with goodness 5, if a package can be split
> with no more than 8 specs that will need to 'with' *both* A1 and A2, and
> no more than 9 such bodies, doing the split will make the system "better".

You forgot the with clauses on package A.  Of course, you could get 
tricky and create a child package for A.  But then again, if there is a 
part of A where spliting part of A into child package increases 
cohesion, why shouldn't the measure recognize that?  In fact if you do a 
good job of restructuring an application using child packages you may be 
able to reduce the goodness measure substantially.  Is that wrong? 
Probably not.  But like all software engineering statistics you can 
probably abuse this one.

 > Does a similar metric - limiting the context necessary for some
 > piece of code - apply to the size of a procedure or its number of
 > variables, or the number of first-level components of a record, etc?

You will have to look at some of the MITRE papers to see measures like 
that.  I did some work on it. Chris Byrnes implemented DIANA Query 
Language (DQL) that allowed some measurements to be done on actual Ada 
code.  This may be a paper on some additional MITRE work on coherence 
and coupling: Dharma, H. 1995, Quantitative Models of Cohesion and 
Coupling in Software, J. Systems Software, Vol. 29, Elsevier Science 
Inc., NY, NY, 65-74.  (The name, time and title look right, but I don't 
have a copy and can't find one on-line.)

The real conclusion I took away from all that was that measuring 
coupling and cohesion at the subprogram level in Ada is wrong.  Or 
rather you might want to measure coupling from subprograms, but the 
target should always be packages.  In other words, a procedure in Ada 
that only references one external package has good cohesion, a procedure 
that references ten packages has poor cohesion.

If type declarations and operations on those types are well organized in 
Ada, this is the level of cohesion and coupling you see.  It seems silly 
to count calls to "*" and "+" in a package separately, and similarly any 
method that favors making a variable visible instead of Get and Set 
operations should be looked on suspiciously...

The measure I wrote about earlier is a "poor man's" way of getting this 
information.  Since you only have to look at the with clauses, it is 
easy to write a program that gives you the "raw" data as well as compute 
a statistic for any library.  Hmmm.  I'd better get back to work...

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-13 17:49                                                           ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
@ 2003-11-14  5:00                                                             ` Robert I. Eachus
  2003-11-17  2:31                                                             ` Russ
  1 sibling, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14  5:00 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:

> I have said this before, if Ada was marketed by a company,
> the best approach might be to rename the technology with
> some improvements. Then in the fine print say something
> along the lines of "The X language was based primarily
> upon the lessons learned from Ada".  Then the press,
> might view this as an exciting new technology and get
> the printing presses rolling again.

Like SPARK and VHDL? ;-)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-13 19:59                                                       ` Chad R. Meiners
@ 2003-11-14  5:09                                                         ` Robert I. Eachus
  2003-11-14  6:47                                                           ` Chad R. Meiners
  2003-11-14  5:45                                                         ` Russ
  1 sibling, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14  5:09 UTC (permalink / raw)


Chad R. Meiners wrote:

> But it isn't clutter; with and use serve two different purposes so they
> shouldn't be combined.

As I have said before, what has come out of this discussion that is very 
worthwhile is the idea of adding, "use all {package name}" to the 
language.  There are places where having a single use clause instead of 
a series of them would be a big improvement.

It would be nice to allow 'use all' to apply to generic instances.  But 
I think that in practice, a 'use all' that was the equivalent of a use 
clause for all child packages of a package would encourage people to 
make generic instantiations child units where appropriate.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-13 19:59                                                       ` Chad R. Meiners
  2003-11-14  5:09                                                         ` Robert I. Eachus
@ 2003-11-14  5:45                                                         ` Russ
  2003-11-14  7:51                                                           ` Chad R. Meiners
                                                                             ` (2 more replies)
  1 sibling, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-14  5:45 UTC (permalink / raw)


"Chad R. Meiners" <crmeiners@hotmail.com> wrote in message news:<bp0nqn$afi$1@msunews.cl.msu.edu>...
> ----- Original Message ----- 
> From: "Russ" <18k11tm001@sneakemail.com>
> Newsgroups: comp.lang.ada
> Sent: Thursday, November 13, 2003 2:26 AM
> Subject: Re: Clause "with and use"

> > I appreciate your discipline in shunning "use," but I assume the
> > language provides it for a good reason. For basic I/O and math, for
> > example, I think "use" is perfectly appropriate. I'm sorry, but "sin"
> > and "cos" will always be just "sin" and "cos" to me, and I prefer to
> > see them that way. (I gave an example on this forum a few months ago
> > of great-circle equations involving no less than 10 math function
> > calls in a single expression.)
> 
> Well you can always place the use clauses in the great-circle function then.

Yes, but I don't want to repeat it in every function or procedure that
needs it. And there is no good reason to limit Ada.Text_IO to
individual functions and procedures. As far as I'm concerned, that's
obsessive/compulsive.

> > I think the cleanest approach is to let "use" imply "with". What does
> > that mean? If the compiler sees "use x", but x is not yet "in scope",
> > let the compiler simply pretend that the line "use x" had been
> > preceded by "with x".
> 
> So you would you want a use clause that is nested within a function to imply
> a withed package?

No, absolutely not. The implied "with" would apply only to "use"
clauses in the context section at the top of the file. You need
something at the top of the file to let the reader (and the compiler)
know what external packages will be used.

> In my opinion that is practically as bad as Java allowing
> you to reference any class from any point in your class.  Both cases make it
> very difficult to find all the referenced packages.

I agree.

> > Now, admittedly, that involves some semantic subtleties because the
> > "withed" package spec need be identical to the "used" spec (due to the
> > conventions for child packages). I suspect that any potential
> > ambiguity is easily resolvable with simple conventions, but I could be
> > wrong. OK, suppose I am wrong. Then the fallback position is to allow
> > "with and use x" or "with/use x", as previously suggested. That
> > removes all semantic ambiguity, and is logically equivalent to
> > separate "with" and "use" clauses, but without the repetitious
> > clutter.

> > For those who insist that this whole issue is "minor" or even
> > "trivial", here's what I have to say to you. You're all idiots and
> > dumbsh*ts. Relax, I'm just kidding.
> 
> I wonder how often you call the people you work with idiots and dumbsh*ts to
> their face and then say, "Relax, I'm just kidding".  As you might realize,

No, I don't. But then again, I didn't say *anything* to anyone's
"face" here, did I. Not to mention the fact that nobody here has the
power to terminate my employment. By the way, have you been keeping
track of what *I* have been called here? I get a lot more respect at
work than I get here.

> they won't believe the second part; why should we believe you here.  You
> have already shown that the only opinion and information that you value are
> those that support your ideas.  Statements like the above just reinforce
> everyone's opinion that this is true.

Lighten up, dude. It was a little joke based on some recent posts on
this thread and others.

> > You are completely right. It *is*
> > trivial. But as I said before, it's like the clutter in the front yard
> > of a house for sale: it can do harm to the market value of Ada, and
> > it's trivial to clean up too. For crying out loud, just do it and be
> > done with it.
> 
> But it isn't clutter; with and use serve two different purposes so they
> shouldn't be combined.

So what that they serve two different purposes? Ever heard of "killing
two birds with one stone"?

Repeating the same package name twice at the top of a file is clutter.
Even if the proposal is adopted, you would still be fully able to use
"use" in the way you consider appropriate and/or correct. Nobody is
trying to take anything away from anyone here.



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

* Re: Clause "with and use"
  2003-11-14  5:09                                                         ` Robert I. Eachus
@ 2003-11-14  6:47                                                           ` Chad R. Meiners
  0 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-14  6:47 UTC (permalink / raw)



"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:75qdnZeRyrHs_imiRVn-sQ@comcast.com...
> Chad R. Meiners wrote:
>
> > But it isn't clutter; with and use serve two different purposes so they
> > shouldn't be combined.
>
> As I have said before, what has come out of this discussion that is very
> worthwhile is the idea of adding, "use all {package name}" to the
> language.  There are places where having a single use clause instead of
> a series of them would be a big improvement.

I agree. I just don't want to see use's implying with's





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

* Re: Clause "with and use"
  2003-11-14  4:57                                               ` Robert I. Eachus
@ 2003-11-14  7:05                                                 ` tmoran
  2003-11-14 15:06                                                   ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: tmoran @ 2003-11-14  7:05 UTC (permalink / raw)


>> So in a 150 package system with goodness 5, if a package can be split
>> with no more than 8 specs that will need to 'with' *both* A1 and A2, and
>> no more than 9 such bodies, doing the split will make the system "better".
>
>You forgot the with clauses on package A.
  Huh?  The old system had a package A, but package A has been eliminated
from the new system.  Instead there are two new packages A1 and A2.  Some
places that used to say "with A;" now say "with A1;" or "with A2;", so
their total number of "with"s is unchanged.  But some that used to say
"with A;" now have to have "with A1, A2;" so the number of "with"s (the
numerator) has increased.  OTOH, the number of packages (the denominator)
has increased also.  In the 150 package example, N*ln(N) was 751.65,
Goodness was 5, so 2*S+B = 3758.  After splitting A, we have 2*S+B =
3758+2*8+9= 3783 and 151*ln(151)= 757.57 so the new Goodness is 4.994, an
improvement.



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

* Re: Clause "with and use"
  2003-11-14  5:45                                                         ` Russ
  2003-11-14  7:51                                                           ` Chad R. Meiners
  2003-11-14  7:51                                                           ` Chad R. Meiners
@ 2003-11-14  7:51                                                           ` Chad R. Meiners
  2 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-14  7:51 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311132145.58a4541e@posting.google.com...
> Yes, but I don't want to repeat it in every function or procedure that
> needs it. And there is no good reason to limit Ada.Text_IO to
> individual functions and procedures.

Sure there is.  In most cases it improves code readability by reminding the
reader about which packages are being used.

> As far as I'm concerned, that's obsessive/compulsive.

It is not obsessive/compulsive; it is putting the information where it
should be as opposed to doing what is convenient.  I have always found
comments about obsessive/compulsiveness interesting as that are almost
always use as an insult towards people that display an usual amount of
discipline in an activity.  My "favorite situation" is when people make
obsessive/compulsive comments about safety procedures (He/she is
obsessive/compulsive about wearing safety goggles when working with that
wood lathe).  Strangle enough, your comment sort of falls into that
category.  Code readability is a safety issue.

> > > I think the cleanest approach is to let "use" imply "with". What does
> > > that mean? If the compiler sees "use x", but x is not yet "in scope",
> > > let the compiler simply pretend that the line "use x" had been
> > > preceded by "with x".
> >
> > So you would you want a use clause that is nested within a function to
imply
> > a withed package?
>
> No, absolutely not. The implied "with" would apply only to "use"
> clauses in the context section at the top of the file. You need
> something at the top of the file to let the reader (and the compiler)
> know what external packages will be used.

Which would imply that use clauses would have very different semantics based
upon the scope in which they are placed.  That would really help people
misunderstand the language's semantics.

> > I wonder how often you call the people you work with idiots and
dumbsh*ts to
> > their face and then say, "Relax, I'm just kidding".  As you might
realize,
>
> No, I don't. But then again, I didn't say *anything* to anyone's
> "face" here, did I. Not to mention the fact that nobody here has the
> power to terminate my employment. By the way, have you been keeping
> track of what *I* have been called here? I get a lot more respect at
> work than I get here.

I see.  Perhaps you get a lot more respect because you are being civil.

> > they won't believe the second part; why should we believe you here.  You
> > have already shown that the only opinion and information that you value
are
> > those that support your ideas.  Statements like the above just reinforce
> > everyone's opinion that this is true.
>
> Lighten up, dude. It was a little joke based on some recent posts on
> this thread and others.

When you speak in public, you are expected to remain civil.   To do
otherwise is simply a negative statement about your character, but I will
let you worry about your public image.

> > But it isn't clutter; with and use serve two different purposes so they
> > shouldn't be combined.
>
> So what that they serve two different purposes? Ever heard of "killing
> two birds with one stone"?

Yes, I have.  I also know that this statement applies to exceptional cases.
You are misusing the phrase as a virtue.

> Repeating the same package name twice at the top of a file is clutter.

This rule is nonsense.  I have seen plenty of exceptions to this rule. Do
you have enough experience with Ada code to be able to support your rule?

> Even if the proposal is adopted, you would still be fully able to use
> "use" in the way you consider appropriate and/or correct. Nobody is
> trying to take anything away from anyone here.

They would be taking away the orthogonality of the two statements.





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

* Re: Clause "with and use"
  2003-11-14  5:45                                                         ` Russ
  2003-11-14  7:51                                                           ` Chad R. Meiners
@ 2003-11-14  7:51                                                           ` Chad R. Meiners
  2003-11-14  7:51                                                           ` Chad R. Meiners
  2 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-14  7:51 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311132145.58a4541e@posting.google.com...
> Yes, but I don't want to repeat it in every function or procedure that
> needs it. And there is no good reason to limit Ada.Text_IO to
> individual functions and procedures.

Sure there is.  In most cases it improves code readability by reminding the
reader about which packages are being used.

> As far as I'm concerned, that's obsessive/compulsive.

It is not obsessive/compulsive; it is putting the information where it
should be as opposed to doing what is convenient.  I have always found
comments about obsessive/compulsiveness interesting as that are almost
always use as an insult towards people that display an usual amount of
discipline in an activity.  My "favorite situation" is when people make
obsessive/compulsive comments about safety procedures (He/she is
obsessive/compulsive about wearing safety goggles when working with that
wood lathe).  Strangle enough, your comment sort of falls into that
category.  Code readability is a safety issue.

> > > I think the cleanest approach is to let "use" imply "with". What does
> > > that mean? If the compiler sees "use x", but x is not yet "in scope",
> > > let the compiler simply pretend that the line "use x" had been
> > > preceded by "with x".
> >
> > So you would you want a use clause that is nested within a function to
imply
> > a withed package?
>
> No, absolutely not. The implied "with" would apply only to "use"
> clauses in the context section at the top of the file. You need
> something at the top of the file to let the reader (and the compiler)
> know what external packages will be used.

Which would imply that use clauses would have very different semantics based
upon the scope in which they are placed.  That would really help people
misunderstand the language's semantics.

> > I wonder how often you call the people you work with idiots and
dumbsh*ts to
> > their face and then say, "Relax, I'm just kidding".  As you might
realize,
>
> No, I don't. But then again, I didn't say *anything* to anyone's
> "face" here, did I. Not to mention the fact that nobody here has the
> power to terminate my employment. By the way, have you been keeping
> track of what *I* have been called here? I get a lot more respect at
> work than I get here.

I see.  Perhaps you get a lot more respect because you are being civil.

> > they won't believe the second part; why should we believe you here.  You
> > have already shown that the only opinion and information that you value
are
> > those that support your ideas.  Statements like the above just reinforce
> > everyone's opinion that this is true.
>
> Lighten up, dude. It was a little joke based on some recent posts on
> this thread and others.

When you speak in public, you are expected to remain civil.   To do
otherwise is simply a negative statement about your character, but I will
let you worry about your public image.

> > But it isn't clutter; with and use serve two different purposes so they
> > shouldn't be combined.
>
> So what that they serve two different purposes? Ever heard of "killing
> two birds with one stone"?

Yes, I have.  I also know that this statement applies to exceptional cases.
You are misusing the phrase as a virtue.

> Repeating the same package name twice at the top of a file is clutter.

This rule is nonsense.  I have seen plenty of exceptions to this rule. Do
you have enough experience with Ada code to be able to support your rule?

> Even if the proposal is adopted, you would still be fully able to use
> "use" in the way you consider appropriate and/or correct. Nobody is
> trying to take anything away from anyone here.

They would be taking away the orthogonality of the two statements.





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

* Re: Clause "with and use"
  2003-11-14  5:45                                                         ` Russ
@ 2003-11-14  7:51                                                           ` Chad R. Meiners
  2003-11-14 23:23                                                             ` Russ
  2003-11-15 16:40                                                             ` Gautier Write-only
  2003-11-14  7:51                                                           ` Chad R. Meiners
  2003-11-14  7:51                                                           ` Chad R. Meiners
  2 siblings, 2 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-14  7:51 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311132145.58a4541e@posting.google.com...
> Yes, but I don't want to repeat it in every function or procedure that
> needs it. And there is no good reason to limit Ada.Text_IO to
> individual functions and procedures.

Sure there is.  In most cases it improves code readability by reminding the
reader about which packages are being used.

> As far as I'm concerned, that's obsessive/compulsive.

It is not obsessive/compulsive; it is putting the information where it
should be as opposed to doing what is convenient.  I have always found
comments about obsessive/compulsiveness interesting as that are almost
always use as an insult towards people that display an usual amount of
discipline in an activity.  My "favorite situation" is when people make
obsessive/compulsive comments about safety procedures (He/she is
obsessive/compulsive about wearing safety goggles when working with that
wood lathe).  Strangle enough, your comment sort of falls into that
category.  Code readability is a safety issue.

> > > I think the cleanest approach is to let "use" imply "with". What does
> > > that mean? If the compiler sees "use x", but x is not yet "in scope",
> > > let the compiler simply pretend that the line "use x" had been
> > > preceded by "with x".
> >
> > So you would you want a use clause that is nested within a function to
imply
> > a withed package?
>
> No, absolutely not. The implied "with" would apply only to "use"
> clauses in the context section at the top of the file. You need
> something at the top of the file to let the reader (and the compiler)
> know what external packages will be used.

Which would imply that use clauses would have very different semantics based
upon the scope in which they are placed.  That would really help people
misunderstand the language's semantics.

> > I wonder how often you call the people you work with idiots and
dumbsh*ts to
> > their face and then say, "Relax, I'm just kidding".  As you might
realize,
>
> No, I don't. But then again, I didn't say *anything* to anyone's
> "face" here, did I. Not to mention the fact that nobody here has the
> power to terminate my employment. By the way, have you been keeping
> track of what *I* have been called here? I get a lot more respect at
> work than I get here.

I see.  Perhaps you get a lot more respect because you are being civil.

> > they won't believe the second part; why should we believe you here.  You
> > have already shown that the only opinion and information that you value
are
> > those that support your ideas.  Statements like the above just reinforce
> > everyone's opinion that this is true.
>
> Lighten up, dude. It was a little joke based on some recent posts on
> this thread and others.

When you speak in public, you are expected to remain civil.   To do
otherwise is simply a negative statement about your character, but I will
let you worry about your public image.

> > But it isn't clutter; with and use serve two different purposes so they
> > shouldn't be combined.
>
> So what that they serve two different purposes? Ever heard of "killing
> two birds with one stone"?

Yes, I have.  I also know that this statement applies to exceptional cases.
You are misusing the phrase as a virtue.

> Repeating the same package name twice at the top of a file is clutter.

This rule is nonsense.  I have seen plenty of exceptions to this rule. Do
you have enough experience with Ada code to be able to support your rule?

> Even if the proposal is adopted, you would still be fully able to use
> "use" in the way you consider appropriate and/or correct. Nobody is
> trying to take anything away from anyone here.

They would be taking away the orthogonality of the two statements.





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

* Re: Clause "with and use"
  2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
@ 2003-11-14  8:32                                                         ` Dmitry A. Kazakov
  2003-11-14 14:51                                                           ` Warren W. Gay VE3WWG
  2003-11-14 20:44                                                           ` Robert I. Eachus
  2003-11-14  9:05                                                         ` Anders Wirzenius
  1 sibling, 2 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-14  8:32 UTC (permalink / raw)


On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
<ve3wwg@cogeco.ca> wrote:

>I agree with this whole-heartedly for anything more than
>a simple "hello world" program. This keeps the name
>clashes to a minimum, and it prevents unintended
>references to functions/procedures in the wrong package.
>There may be some exceptions to this, but these should be
>kept to a bare minimum, IMHO.

Does anybody a statistics of name clashes in Ada?

What percent is caused by the language design problems:

A. "renames" actually does not rename, but creates a new, possibly
conflicting view. A naive user would expect no conflict there.

B. "subtype" used as a substitute for non-existing type renaming
causes conflicts when "use"-d.

I have a feeling that hatred towards "use" is largely caused by
outside reasons like A. and B.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Clause "with and use"
  2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
  2003-11-14  8:32                                                         ` Dmitry A. Kazakov
@ 2003-11-14  9:05                                                         ` Anders Wirzenius
  1 sibling, 0 replies; 385+ messages in thread
From: Anders Wirzenius @ 2003-11-14  9:05 UTC (permalink / raw)



"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
news:mwPsb.8015$fB3.463973@news20.bellglobal.com...
> Anders Wirzenius wrote:
>
> > What had the "Ada community" (present and potential) lost if the
> > use_clause had not been allowed in the context_clause (ARM
10.1.2)?
> > What if the use_clause had to be put in a declarative part?
> > I often see code which have the "with aaa; use aaa;" in the
beginning
> > of the code and the only place where the aaa is needed is way down
in
> > the code. Shouldn�t a proper place for the use_close be (like Chad
> > writes), in the (separate) region where it is needed? The
with_clause
> > stays at the beginning of the code to declare the context.
> >
> > Anders
>
> I agree with this whole-heartedly for anything more than
> a simple "hello world" program. This keeps the name

Examples in text books are most often short programs like "hello
world". The majority of those seems to have a "with aaa; use aaa;" at
the beginning. The examples in text books have a heavy influence on
the readers coding habits. I would prefer the examples to have the use
clause down in the code, even if it looks like crossing the river to
get some water.

Anders




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

* Re: Clause "with and use"
  2003-11-13  7:32                                                     ` Anders Wirzenius
  2003-11-13 12:29                                                       ` Marin David Condic
  2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
@ 2003-11-14 12:37                                                       ` Georg Bauhaus
  2003-11-14 15:18                                                         ` Robert I. Eachus
  2 siblings, 1 reply; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-14 12:37 UTC (permalink / raw)


Anders Wirzenius <anders.wirzenius@pp.qnet.fi> wrote:
: I often see code which have the "with aaa; use aaa;" in the beginning
: of the code and the only place where the aaa is needed is way down in
: the code. Shouldn?t a proper place for the use_close be (like Chad
: writes), in the (separate) region where it is needed? The with_clause
: stays at the beginning of the code to declare the context.

I'm wondering whether a "use" deep down might indicate that this
piece of code doesn't really belong in this unit?
(I like this feature, but do I like something here that I shouldn't?)


-- Georg



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

* Re: Clause "with and use"
  2003-11-14  8:32                                                         ` Dmitry A. Kazakov
@ 2003-11-14 14:51                                                           ` Warren W. Gay VE3WWG
  2003-11-17  9:22                                                             ` Dmitry A. Kazakov
  2003-11-14 20:44                                                           ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-14 14:51 UTC (permalink / raw)


Dmitry A. Kazakov wrote:
> On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
> <ve3wwg@cogeco.ca> wrote:
> 
>>I agree with this whole-heartedly for anything more than
>>a simple "hello world" program. This keeps the name
>>clashes to a minimum, and it prevents unintended
>>references to functions/procedures in the wrong package.
>>There may be some exceptions to this, but these should be
>>kept to a bare minimum, IMHO.
> 
> Does anybody a statistics of name clashes in Ada?

I don't have statistics to offer, but here is one that
I regularly run into (and there are others like this
one):

USE ADA.STRINGS;

If this is done in the wrong place (like at the top), then
then the names Left and Right come into conflict (ie.
Ada.Strings.Left). Left and Right are perfectly acceptable
names to use in programming.

 >What percent is caused by the language design problems:
...
 >I have a feeling that hatred towards "use" is largely caused by
 >outside reasons like A. and B.

I think we have to remember that USE is primarily a language
construct for convenience. It is strictly unnecessary for
writing a program successfully. It only saves the program
writer (and reader) from having to specify (or read) the entire
hierarchical name.

Misuse that convenience, and you'll experience problems.
Conclusion: there is nothing wrong with the language
feature, but only the application thereof. ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-14  7:05                                                 ` tmoran
@ 2003-11-14 15:06                                                   ` Robert I. Eachus
  2003-11-14 15:15                                                     ` Robert Spooner
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14 15:06 UTC (permalink / raw)




tmoran@acm.org wrote:

>>You forgot the with clauses on package A.
> 
>   Huh?  The old system had a package A, but package A has been eliminated
> from the new system.  Instead there are two new packages A1 and A2.  Some
> places that used to say "with A;" now say "with A1;" or "with A2;", so
> their total number of "with"s is unchanged.  But some that used to say
> "with A;" now have to have "with A1, A2;" so the number of "with"s (the
> numerator) has increased.  OTOH, the number of packages (the denominator)
> has increased also.  In the 150 package example, N*ln(N) was 751.65,
> Goodness was 5, so 2*S+B = 3758.  After splitting A, we have 2*S+B =
> 3758+2*8+9= 3783 and 151*ln(151)= 757.57 so the new Goodness is 4.994, an
> improvement.

If there were NO with clauses on A, you would be right.  But say the 
spec of A withs B, C, D, and E, and the body has withs for F, G, H, and 
I.  If A1 and A2, need the same withs, you add four more with clauses on 
specs, four more on bodies and the goodness number increases (actual 
goodness decreases).  If A1 spec needs only with B and C, A1 body needs 
F and G and A2 spec needs only with D and E while A2 body needs withs 
for H and I, then your goodness has improved, and it should.  A1 and A2 
should have been separate packages in the first place.

In reality, there are very few cases that are that clear.  Incidently a 
tool that finds withs on the spec that could be moved to the body, or 
withs that are not needed at all is very useful.  But in practice on 
good code, you end up moving only a few withs, and eliminating maybe one.
-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-14 15:06                                                   ` Robert I. Eachus
@ 2003-11-14 15:15                                                     ` Robert Spooner
  2003-11-14 15:54                                                       ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Robert Spooner @ 2003-11-14 15:15 UTC (permalink / raw)


Robert,

Perhaps you should call it an entropy number rather than a goodness 
number. :)

Robert I. Eachus wrote:
> 
> 
> ...  If A1 and A2, need the same withs, you add four more with clauses on 
> specs, four more on bodies and the goodness number increases (actual 
> goodness decreases).
-- 
                             Robert L. Spooner
                      Registered Professional Engineer
                        Associate Research Engineer
                   Intelligent Control Systems Department

          Applied Research Laboratory        Phone: (814) 863-4120
          The Pennsylvania State University  FAX:   (814) 863-7841
          P. O. Box 30
          State College, PA 16804-0030       rls19@psu.edu




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

* Re: Clause "with and use"
  2003-11-14 12:37                                                       ` Georg Bauhaus
@ 2003-11-14 15:18                                                         ` Robert I. Eachus
  2003-11-15 13:04                                                           ` Marin David Condic
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14 15:18 UTC (permalink / raw)


Georg Bauhaus wrote:

> I'm wondering whether a "use" deep down might indicate that this
> piece of code doesn't really belong in this unit?
> (I like this feature, but do I like something here that I shouldn't?)

It can, but it doesn't always.  A good example is a group of ADTs that 
have display operations.   The display operations belong in the package 
with the other operations on the same type, but they may be the only 
operation that needs to use Text_IO or some graphics packages.

You can organize things using child packages to segregate the I/O 
operations, but you end up with the display operation being the only one 
to use the child package.

Instead I usually end up with a generic package that handles the display 
operations in a data independent manner, and the individual display 
operations instantiate that package.  Now the use clause is for a local 
generic instance, but it is still there.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-14 15:15                                                     ` Robert Spooner
@ 2003-11-14 15:54                                                       ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14 15:54 UTC (permalink / raw)


Robert Spooner wrote:

> Perhaps you should call it an entropy number rather than a goodness 
> number. :)

Actually my name for it is a coupling measure.  The higher the number, 
the more tightly coupled a system is.  In Ada high coupling for systems 
is bad, but high coupling within a subsystem can be good if it results 
in low coupling elsewhere.

Also that is why I refer to it as a measure of design quality rather 
than code quality.  It is possible to do a bad job of implementing a 
design, and it is also possible in Ada for code to have lots of 
unnecessary with clauses.  But the reality does seem to be that for 
decent code the coupling measure is determined by the design, not how 
well or poorly the code itself is written.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-14  8:32                                                         ` Dmitry A. Kazakov
  2003-11-14 14:51                                                           ` Warren W. Gay VE3WWG
@ 2003-11-14 20:44                                                           ` Robert I. Eachus
  1 sibling, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-14 20:44 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> Does anybody a statistics of name clashes in Ada?

Let me tell you a funny story about that.  Right after Ada became an 
ANSI standard in 1983, I was talking to Dan Eilers and Jean Ichbiah in 
the Irvine Compiler suite at a SIGAda meeting in San Diego.  Jean had 
asked what I thought of the new standard--I had a copy with me, and this 
was fairly early days, February 1983.

I said that there was one change from the Printer's Proof edition that 
troubled me.  Name and System_Name in System had been reversed, making 
Name the type and System_Name a constant.  I said I had considered a 
recommendation that Name become a function instead of a constant, so it 
could be overloaded, but that this was much worse.

"Why?" Ichbiah asked.

"Well, Name is going to occur often as a function name, in fact there is 
a function Name in Text_IO.  This creates a surprising "Gotcha!" that 
there was no real need for."

"Never happen in a million years," Ichbiah replied.  "That would require 
a program to have use clauses for both Text_IO and System, and then try 
to get the name of a file."

A few minutes later Robert Dewar came over and interrupted.  "Dan, I 
think I found a bug in your compiler.  I wrote a little test program, 
and it won't let me call Name in Text_IO.  Says it isn't visible."

"Do you have a use clause for Text_IO?" I asked.

"Of course," said Robert Dewar looking puzzled.

"And a use clause for System?"

"As a matter of fact, yes," Robert said, and then looked on in 
astonishment and Dan and I burst out laughing.

I had to explain that the joke wasn't on him, but on Jean Ichbiah, and 
that little glitch was in the language for good.  (In case you are 
wondering, it is still in the language twenty years later.)  Has it 
bitten anyone else in the twenty years since?  Probably.  This is just 
one reason why the ARG is careful to fully examine ALL the consequences 
of a langauge change.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-14  7:51                                                           ` Chad R. Meiners
@ 2003-11-14 23:23                                                             ` Russ
  2003-11-15  4:39                                                               ` Chad R. Meiners
  2003-11-15 15:19                                                               ` Robert I. Eachus
  2003-11-15 16:40                                                             ` Gautier Write-only
  1 sibling, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-14 23:23 UTC (permalink / raw)


"Chad R. Meiners" <crmeiners@hotmail.com> wrote in message news:<bp22op$1ltd$1@msunews.cl.msu.edu>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311132145.58a4541e@posting.google.com...
> > Yes, but I don't want to repeat it in every function or procedure that
> > needs it. And there is no good reason to limit Ada.Text_IO to
> > individual functions and procedures.
> 
> Sure there is.  In most cases it improves code readability by reminding the
> reader about which packages are being used.
> 
> > As far as I'm concerned, that's obsessive/compulsive.
> 
> It is not obsessive/compulsive; it is putting the information where it
> should be as opposed to doing what is convenient.  I have always found
> comments about obsessive/compulsiveness interesting as that are almost
> always use as an insult towards people that display an usual amount of
> discipline in an activity.  My "favorite situation" is when people make
> obsessive/compulsive comments about safety procedures (He/she is
> obsessive/compulsive about wearing safety goggles when working with that
> wood lathe).  Strangle enough, your comment sort of falls into that
> category.  Code readability is a safety issue.

Yes, but if you wear safety goggles when you watch TV (because you
never know when your TV tube might explode), that is
obsessive/compulsive. I can make up irrelevant examples as well as you
can. By the way, mild obsessive/compulsive disorder is very common and
is not necessarily a major character flaw. I suffer from a bit of it
myself.

> > > > I think the cleanest approach is to let "use" imply "with". What does
> > > > that mean? If the compiler sees "use x", but x is not yet "in scope",
> > > > let the compiler simply pretend that the line "use x" had been
> > > > preceded by "with x".
> > >
> > > So you would you want a use clause that is nested within a function to
>  imply
> > > a withed package?
> >
> > No, absolutely not. The implied "with" would apply only to "use"
> > clauses in the context section at the top of the file. You need
> > something at the top of the file to let the reader (and the compiler)
> > know what external packages will be used.
> 
> Which would imply that use clauses would have very different semantics based
> upon the scope in which they are placed.  That would really help people
> misunderstand the language's semantics.

Nonsense. In Python, I can write "import math", which is equivalent to
Ada's "with", or I can write "from math import *", which is equivalent
to "use". And if I use the latter, I don't need to precede it by the
former. Yet nobody misunderstands anything.

This whole line about "with" and "use" having different meanings is
completely irrelevant. I don't care if "with" sends a mouse to the
moon and "use" massages my feet. The simple fact is that "use" implies
"with," whether you like it or not. Just try to use "use" without
"with", and the compiler will tell you so. If I say, "use a hammer,"
do I need to precede it with, "obtain a hammer"? Of course not. You
cannot possibly "use" a hammer if one is not available.

You are confusing two different issues here. One issue is what *you*
consider good programming practice, and the other issue is what the
language allows or should allow. *You* don't think that "use" should
ever be used in the context section at the top of a file. Sorry, Ada
allows it, and many excellent programmers consider it perfectly
acceptable in many cases.

But since you don't like that particular feature, you want to keep it
as inconvenient as possible to use. Well, isn't that just a bit
self-centered? I and others would like to be able to use this
officially blessed language feature, but we don't want to have to jump
through unnecessary hoops to use it.

Neglecting to floss your teeth is bad practice. Maybe hotels should
not let you check in unless you show them that you are carrying dental
floss. What harm could it do? I'll tell you what harm it could do. It
could drive away clients, even ones who carry dental floss, because
people don't like to be micro-managed.

<cut>

> When you speak in public, you are expected to remain civil.   To do
> otherwise is simply a negative statement about your character, but I will
> let you worry about your public image.

Where were you when I was called an "idiot" and a "dumbass" without
provocation, right here on this forum? I could have used your wisdom
then.



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

* Re: Clause "with and use"
  2003-11-14 23:23                                                             ` Russ
@ 2003-11-15  4:39                                                               ` Chad R. Meiners
  2003-11-15 11:35                                                                 ` Stephane Richard
  2003-11-15 22:12                                                                 ` Russ
  2003-11-15 15:19                                                               ` Robert I. Eachus
  1 sibling, 2 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-15  4:39 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311141523.3c523f8c@posting.google.com...
> Yes, but if you wear safety goggles when you watch TV (because you
> never know when your TV tube might explode), that is
> obsessive/compulsive. I can make up irrelevant examples as well as you
> can.

It wasn't an irrelevant example.  I was demonstrating the type of practice
that these people considered obsessive/compulsive.

> > Which would imply that use clauses would have very different semantics
based
> > upon the scope in which they are placed.  That would really help people
> > misunderstand the language's semantics.
>
> Nonsense. In Python, I can write "import math", which is equivalent to
> Ada's "with", or I can write "from math import *", which is equivalent
> to "use". And if I use the latter, I don't need to precede it by the
> former. Yet nobody misunderstands anything.

But use clauses can appear in declaration sections too.  That is the
inconsistency.

> This whole line about "with" and "use" having different meanings is
> completely irrelevant. I don't care if "with" sends a mouse to the
> moon and "use" massages my feet. The simple fact is that "use" implies
> "with," whether you like it or not. Just try to use " without
> "with", and the compiler will tell you so. If I say, "use a hammer,"
> do I need to precede it with, "obtain a hammer"? Of course not. You
> cannot possibly "use" a hammer if one is not available.

If the use clauses couldn't be used in declaration section, I wouldn't
object to having use clauses imply with clauses.
As is, doing so will add an inconsistency to the language.

> You are confusing two different issues here. One issue is what *you*
> consider good programming practice, and the other issue is what the
> language allows or should allow. *You* don't think that "use" should
> ever be used in the context section at the top of a file. Sorry, Ada
> allows it, and many excellent programmers consider it perfectly
> acceptable in many cases.

Ha! You don't know my opinion on use clauses in context sections.  I never
said that people should not put them in the context section of a unit.   I
said that if people use them in their appropriate(using rational judgment)
place (which can be at the top of the file).

Nice use of begging the question!

> But since you don't like that particular feature, you want to keep it
> as inconvenient as possible to use. Well, isn't that just a bit
> self-centered? I and others would like to be able to use this
> officially blessed language feature, but we don't want to have to jump
> through unnecessary hoops to use it.

Ah, here comes the unwarranted character assassination that follows the
begging of the question ;)

> Neglecting to floss your teeth is bad practice. Maybe hotels should
> not let you check in unless you show them that you are carrying dental
> floss. What harm could it do? I'll tell you what harm it could do. It
> could drive away clients, even ones who carry dental floss, because
> people don't like to be micro-managed.
>

Come on.  I was trying to have a rational argument with you; however, I see
that this is unlikely.

All I am saying is that allowing use clauses in context clause to imply with
clauses creates an inconsistency in the language.   The designers of Ada did
a very good job of keeping inconsistencies out of the language, which I one
of the characteristics I enjoy about Ada.  In my opinion reducing of a
potential clutter idea(of which I am still not convinced is a clutter
issue), is not worth introducing an inconsistency to the language.

>
> > When you speak in public, you are expected to remain civil.   To do
> > otherwise is simply a negative statement about your character, but I
will
> > let you worry about your public image.
>
> Where were you when I was called an "idiot" and a "dumbass" without
> provocation, right here on this forum? I could have used your wisdom
> then.

I was elsewhere.  Of course my statement applies to those who might have
been uncivil to you.  However, I would note that when I browse through this
newsgroup , your lack of civility sticks out like a sore thumb.

Let's look at the facts (as written in the newsgroups):

You proclaimed that you do not program as a profession.
You proclaimed that you have not written a serious project in Ada.

Yet you proclaim that you know best for a language in which you have not
spent a serious effort to understand and appreciate.  I asked you how you
were qualified to determine when use clause are clutter. and  you failed to
answer that important question.  Since few of your argument are supportable,
I ask you again.  What are your qualification to comment on clutter in Ada?





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

* Re: Clause "with and use"
  2003-11-15  4:39                                                               ` Chad R. Meiners
@ 2003-11-15 11:35                                                                 ` Stephane Richard
  2003-11-15 12:53                                                                   ` Marin David Condic
  2003-11-16  0:19                                                                   ` Russ
  2003-11-15 22:12                                                                 ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-15 11:35 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2659 bytes --]


>
> Let's look at the facts (as written in the newsgroups):
>
> You proclaimed that you do not program as a profession.
> You proclaimed that you have not written a serious project in Ada.
>
> Yet you proclaim that you know best for a language in which you have not
> spent a serious effort to understand and appreciate.  I asked you how you
> were qualified to determine when use clause are clutter. and  you failed
to
> answer that important question.  Since few of your argument are
supportable,
> I ask you again.  What are your qualification to comment on clutter in
Ada?
>
>
*** Ada is not like C++.  And he seems to be convinced that C++'s semantics
and syntax is what made it popular.  The first thing that made C/C++ ever
worth looking at is that it was free with UNIX (Sure Unix wasn't free, but
C++ was included, just as Basic was included with DOS). So All Unix, Mimix,
and the rest of the gang users woudl go the C way, and DOS users went the
BASIC way because it was included with the OS.


*** When I first learned C/C++ back in school.  We were a class of 35
students.  Out of those 35 students (ranging from different programming
backgrounds and some introduced to programming with C and C++)., 28 of them
wonder what the hell the { and } were doing there, thinking they were typoes
or something.  When they were explained that it was C's start and end of a
contruct, and they did understand what that meant, they said "how lazy can
you get?"  they weren't overwhelmed by the genius who decided to put those
symbols to start and end a construct or multiple lined If statement or
switch case.  But it was freely available so most of them dealt with the {
and }. The other 7 people dealt with it cause it was a low level language
and they liked that feature, not the syntax, the capacity to access low
level system calls.  There was 2 other classes that just like mine started
in C/C++ and with a couple student difference, it was pretty much the same
numbers, the majority weren't pleased with the syntax, but it was free so
they dealt with it, basically.  and back then, languages cost a pretty penny
to buy at the stores.

*** My take on this is that if Ada would have been bundled with Unix instead
of C, well C wouldn't be what it is today.  First people used C because it
was freely available, the other people used C because it was being used by
others, that's how I explain my "monkey see monkey do" theory.  Last time I
didn't mention C being freely available to start the big wheel turning,
Marin put me back on track with this ;-), it was the first reason.

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-15 11:35                                                                 ` Stephane Richard
@ 2003-11-15 12:53                                                                   ` Marin David Condic
  2003-11-16  0:36                                                                     ` Russ
  2003-11-16  0:19                                                                   ` Russ
  1 sibling, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-15 12:53 UTC (permalink / raw)


"Free" was a really important characteristic in a time when someone 
charging $10,000 and up for a compiler would not have been laughed at. 
Even compilers for the PC were outrageously expensive. When you had 
Borland Pascal hit the stands at around a $30 price tag (IIRC, its 
initial price was around there) that really made it a popular choice. Of 
course, it was hard for Borland Pascal to compete with "Free" Basic, but 
it did very well and made that company a major success.

And in the computer business, Success breeds Success. Once you had all 
those free C compilers out there and a really inexpensive OS 
(Universities were paying something like $200 for a source code license 
for Unix at the time, I believe.) it made a breeding ground for more C 
code. C++ was just riding on the success of C - upward compatibility, 
large installed base of code, knowledge base, etc. From there, languages 
like Java and Python had to go about looking something like C/C++ in 
order to capitalize on familiarity.

I see no evidence that anyone made a language popular because of its 
syntax. If Unix had been written in Ada and the same circumstances 
applied, you'd probably see everyone speaking Ada now and some C 
newsgroup would be having a debate about "Why doesn't C change its 
assignment statement to ":=" so it can be more popular?!?!?!". The 
motivating factors here are largely economic.

MDC


Stephane Richard wrote:
> 
> *** My take on this is that if Ada would have been bundled with Unix instead
> of C, well C wouldn't be what it is today.  First people used C because it
> was freely available, the other people used C because it was being used by
> others, that's how I explain my "monkey see monkey do" theory.  Last time I
> didn't mention C being freely available to start the big wheel turning,
> Marin put me back on track with this ;-), it was the first reason.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-14 15:18                                                         ` Robert I. Eachus
@ 2003-11-15 13:04                                                           ` Marin David Condic
  2003-11-18 22:45                                                             ` Georg Bauhaus
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-15 13:04 UTC (permalink / raw)


I tend to like a use clause for things similar to dispatching on a 
tagged record. Dispatching would be a joke if you *always* had to 
specify which package you wanted to reference, right? So there must be 
something "good" about the "use" clause.

If I had some sort of "display (float)" and a "display (integer)" I'd 
like to just say "Display (Object)" and the compiler sorts it out. The 
"use" clause seems to be useful where you want something to appear as a 
primitive/intrinsic operation of some kind. At other times, I want to 
make it clear that I am referencing something external to the local 
context - lack of "use" makes that clear. I don't know that I could 
formulate a hard-and-fast rule as to when it is good and when it is bad, 
but I think the language designers had something similar to this in mind 
when creating it: "Sometimes you want it to look 'intrinsic' and other 
times you want it explicit that something is external. Hence we added 
the 'use' when the 'with' alone is really all that is needed."

MDC


Robert I. Eachus wrote:
> 
> It can, but it doesn't always.  A good example is a group of ADTs that 
> have display operations.   The display operations belong in the package 
> with the other operations on the same type, but they may be the only 
> operation that needs to use Text_IO or some graphics packages.
> 
> You can organize things using child packages to segregate the I/O 
> operations, but you end up with the display operation being the only one 
> to use the child package.
> 
> Instead I usually end up with a generic package that handles the display 
> operations in a data independent manner, and the individual display 
> operations instantiate that package.  Now the use clause is for a local 
> generic instance, but it is still there.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-14 23:23                                                             ` Russ
  2003-11-15  4:39                                                               ` Chad R. Meiners
@ 2003-11-15 15:19                                                               ` Robert I. Eachus
  2003-11-15 16:15                                                                 ` Gautier Write-only
  2003-11-16  5:55                                                                 ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-15 15:19 UTC (permalink / raw)


Russ wrote:

> This whole line about "with" and "use" having different meanings is
> completely irrelevant. I don't care if "with" sends a mouse to the
> moon and "use" massages my feet. The simple fact is that "use" implies
> "with," whether you like it or not. Just try to use "use" without
> "with", and the compiler will tell you so. If I say, "use a hammer,"
> do I need to precede it with, "obtain a hammer"? Of course not. You
> cannot possibly "use" a hammer if one is not available.

Bzzzt! Wrong Answer, try again.  A use clasue in Ada does NOT imply that 
there is a with around somewhere.  Try compiling:

procedure Junk is
   use Ascii;
begin null; end Junk;

If you have any doubts about that.

Ascii is somewhat special, but fairly common is:

package Outer is...
    package Inner is...

end Outer;

package body Outer is
   use Inner;
   ...
end Outer;

Again a use clause without a with clause in sight.  Another common case 
is a generic package instance.  The use clause refers to the local 
instance rather than to any external unit.

You really do need to study the language and start using (ouch!) it 
correctly before you make ex cathedra statements like that.

> You are confusing two different issues here. One issue is what *you*
> consider good programming practice, and the other issue is what the
> language allows or should allow. *You* don't think that "use" should
> ever be used in the context section at the top of a file. Sorry, Ada
> allows it, and many excellent programmers consider it perfectly
> acceptable in many cases.

Fine, it is perfectly acceptable in many cases, but it still says two 
separate and separable things.  If you want to argue for a language 
change to add "with and use" as a context clause feel free.  I tend to 
think of that as a text editor issue, but different opinions are possible.

However drop the shrill tone when people are patiently trying to explain 
something to you.  With and use currently have two very different 
meanings in Ada.  Confusing the meaning of use by having it sometimes 
mean with and use would be a possible language change.  Such a change is 
highly unlikely since it violates the "-ilities" that Ada is designed to 
promote.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-15 15:19                                                               ` Robert I. Eachus
@ 2003-11-15 16:15                                                                 ` Gautier Write-only
  2003-11-15 19:44                                                                   ` Frank J. Lhota
  2003-11-16  0:02                                                                   ` Robert I. Eachus
  2003-11-16  5:55                                                                 ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-15 16:15 UTC (permalink / raw)


Robert I. Eachus:

> Bzzzt! Wrong Answer, try again.  A use clasue in Ada does NOT imply that
> there is a with around somewhere.  Try compiling:
> 
> procedure Junk is
>    use Ascii;
> begin null; end Junk;
> 
> If you have any doubts about that.
> 
> Ascii is somewhat special, but fairly common is:
> 
> package Outer is...
>     package Inner is...
> 
> end Outer;
> 
> package body Outer is
>    use Inner;
>    ...
> end Outer;
> 
> Again a use clause without a with clause in sight.

Both "use" you cite are not context clauses -> OT, sorry !

BTW, your mention of ASCII is interesting.
* Ada 83 (and later) implies a non-written "with Standard; use Standard;"
  - ASCII is subpackage of Standard.
* Ada 95 (and later) implies a non-written "with Ada, Ada.Strings;" when you
  just write "with Ada.Strings.Maps;". Same for all children 

-> things are not at all 100% explicit in the present standard.

* The "[with and ]use" proposal offers the possibility of writing once
  the name of a package instead of twice when you use "use" in a context clause.

-> this feature doesn't reduce from 1 to 0 the appearance of a package name
   like both mentioned above, but from 2 to 1. When the feature is used, the
   names remain explicit, but without redundance.

Clearly the contestation about this proposal is just because this is an evolution.
Existing elements are by default sacred, improvements are by default suscpicious...
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-14  7:51                                                           ` Chad R. Meiners
  2003-11-14 23:23                                                             ` Russ
@ 2003-11-15 16:40                                                             ` Gautier Write-only
  2003-11-16  0:25                                                               ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Gautier Write-only @ 2003-11-15 16:40 UTC (permalink / raw)


Russ:

> > No, absolutely not. The implied "with" would apply only to "use"
> > clauses in the context section at the top of the file. You need
> > something at the top of the file to let the reader (and the compiler)
> > know what external packages will be used.

Chad R. Meiners:

> Which would imply that use clauses would have very different semantics based
> upon the scope in which they are placed.

This is not a problem, because they are *already* very different.

To take Robert examples,

  use ASCII;
  procedure Junk is
  begin null; end Junk;

(won't compile) is not at all the same as

  procedure Junk is
    use ASCII;
  begin null; end Junk;

(meaningful). 

The example Outer / Inner is interesting.

  package Outer is
    package Inner is end;
    procedure Dummy;  
  end Outer;

  use Outer.Inner;
  package body Outer is
    procedure Dummy is
    begin
      null;
    end Dummy;
  end Outer;

is accepted by GNAT 3.15p but rejected by ObjectAda 7.2.2 !
At least it could speak for the "with and use" syntax of the
proposal.

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-15 16:15                                                                 ` Gautier Write-only
@ 2003-11-15 19:44                                                                   ` Frank J. Lhota
  2003-11-16  0:02                                                                   ` Robert I. Eachus
  1 sibling, 0 replies; 385+ messages in thread
From: Frank J. Lhota @ 2003-11-15 19:44 UTC (permalink / raw)


One quick correction:

> * Ada 83 (and later) implies a non-written "with Standard; use Standard;"
>   - ASCII is subpackage of Standard.

Actually, all library level units are treated as part of the Standard
package. As a result, every Ada identifier can be written in a fully
qualified form starting with "Standard".

Other than the naming convention, however, the presence of a unit in the
Standard package is mostly equivalent to having "With Standard; use
Standard;" in front of the library unit.





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

* Re: Clause "with and use"
  2003-11-15  4:39                                                               ` Chad R. Meiners
  2003-11-15 11:35                                                                 ` Stephane Richard
@ 2003-11-15 22:12                                                                 ` Russ
  2003-11-16  2:29                                                                   ` Chad R. Meiners
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-15 22:12 UTC (permalink / raw)


"Chad R. Meiners" <crmeiners@hotmail.com> wrote in message news:<bp4dnh$r7q$1@msunews.cl.msu.edu>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311141523.3c523f8c@posting.google.com...

> If the use clauses couldn't be used in declaration section, I wouldn't
> object to having use clauses imply with clauses.
> As is, doing so will add an inconsistency to the language.

I don't see any inconsistency. The rule would be simple: "use" implies
"with" if it is in the context section, otherwise it doesn't. Or, to
put it another way, "use" implies "with", but any externally
referenced package must appear in the context section in either a
"use" or a "with" statement. Where is the inconsistency?

If I wanted to be unreasonable, I could claim that the current Ada
rules are inconsistent because both "with" and "use" are allowed in
the context section, but only "use" is allowed after the context
section. That's superficially inconsistent, but it's not significantly
inconsistent because, as you said yourself, "with" and "use" have
different purposes.

> > You are confusing two different issues here. One issue is what *you*
> > consider good programming practice, and the other issue is what the
> > language allows or should allow. *You* don't think that "use" should
> > ever be used in the context section at the top of a file. Sorry, Ada
> > allows it, and many excellent programmers consider it perfectly
> > acceptable in many cases.
> 
> Ha! You don't know my opinion on use clauses in context sections.  I never
> said that people should not put them in the context section of a unit.   I
> said that if people use them in their appropriate(using rational judgment)
> place (which can be at the top of the file).

So I misunderstood your position or mistook it for that of someone
else. It was an honest mistake.

> Nice use of begging the question!
> 
> > But since you don't like that particular feature, you want to keep it
> > as inconvenient as possible to use. Well, isn't that just a bit
> > self-centered? I and others would like to be able to use this
> > officially blessed language feature, but we don't want to have to jump
> > through unnecessary hoops to use it.
> 
> Ah, here comes the unwarranted character assassination that follows the
> begging of the question ;)

Character assassination? The simple fact is that my proposal would not
force you to do anything you don't want to do. Neither you nor anyone
else would need to change a single character in any of Ada source
file. But your insistence of the status quo would prevent me and
others from writing less-cluttered code.

> > Neglecting to floss your teeth is bad practice. Maybe hotels should
> > not let you check in unless you show them that you are carrying dental
> > floss. What harm could it do? I'll tell you what harm it could do. It
> > could drive away clients, even ones who carry dental floss, because
> > people don't like to be micro-managed.
> >
> 
> Come on.  I was trying to have a rational argument with you; however, I see
> that this is unlikely.

Oh, I see. What was that about "character assassination" again?

> All I am saying is that allowing use clauses in context clause to imply with
> clauses creates an inconsistency in the language.   The designers of Ada did
> a very good job of keeping inconsistencies out of the language, which I one
> of the characteristics I enjoy about Ada.  In my opinion reducing of a
> potential clutter idea(of which I am still not convinced is a clutter
> issue), is not worth introducing an inconsistency to the language.
> 
> >
> > > When you speak in public, you are expected to remain civil.   To do
> > > otherwise is simply a negative statement about your character, but I
>  will
> > > let you worry about your public image.
> >
> > Where were you when I was called an "idiot" and a "dumbass" without
> > provocation, right here on this forum? I could have used your wisdom
> > then.
> 
> I was elsewhere.  Of course my statement applies to those who might have
> been uncivil to you.  However, I would note that when I browse through this
> newsgroup , your lack of civility sticks out like a sore thumb.

Thank you for the lecture in civility, Saint Chad. I'm happy to know
that you will be there to chastise the next person who insults me.
Just for the record, I have apologized for my admittedly rude remarks
in the past, but nobody has apologized to me for equally offensive
remarks.

> Let's look at the facts (as written in the newsgroups):
> 
> You proclaimed that you do not program as a profession.
> You proclaimed that you have not written a serious project in Ada.

Oh, I see. Only professional Ada programmers are competent to comment
on Ada, eh? No, I am not a programmer or software engineer by
training, but you better believe that I have done significant
programming and been paid for it. I am one of those rare non-Ada
programmers who recognizes the value of Ada, and look at how much
respect I get from you and others, Saint Chad.

> Yet you proclaim that you know best for a language in which you have not
> spent a serious effort to understand and appreciate.  I asked you how you
> were qualified to determine when use clause are clutter. and  you failed to
> answer that important question.  Since few of your argument are supportable,
> I ask you again.  What are your qualification to comment on clutter in Ada?

I have read much (most?) of Cohen's encyclopedic book on Ada (in my
spare time), and I have written some small but non-trivial Ada
programs just to familiarize myself with the language. Also, about ten
years ago, I led the development of an experimental real-time DGPS/INS
precision landing guidance system in C++. As far as I am concerned,
that way overqualifies me to comment on "with" and "use".

Tell me, Saint Chad, what qualifications you think I need to make such
comments? And next time I post, I'll be sure to check with you.



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

* Re: Clause "with and use"
  2003-11-15 16:15                                                                 ` Gautier Write-only
  2003-11-15 19:44                                                                   ` Frank J. Lhota
@ 2003-11-16  0:02                                                                   ` Robert I. Eachus
  2003-11-16 10:41                                                                     ` Gautier Write-only
  2003-11-17  9:04                                                                     ` Dmitry A. Kazakov
  1 sibling, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-16  0:02 UTC (permalink / raw)


Gautier Write-only wrote:

> Both "use" you cite are not context clauses -> OT, sorry !

Not off topic.  You can have a use Ascii in a context clause without a 
with for Ascii, in fact you CAN'T have a with clause for Ascii.  (Back 
in 1983 a lot of compilers got tripped up on that special case, but 
those bugs are long gone.)  In Ada 83 a context clause had to contain a 
with clause. But in Ada 95 the syntax has changed, so you should be able 
to compile:

use Ascii;
package Foo is
   Bar: Character := Percent;
end Foo;

If not, complain to your compiler vendor.  (Although I think putting the 
use clause inside Foo looks better.)

> BTW, your mention of ASCII is interesting.
> * Ada 83 (and later) implies a non-written "with Standard; use Standard;"
>   - ASCII is subpackage of Standard.

NO! This is almost as bad as what Russ was saying.  There is no implicit 
with clause for Standard.  Try to create a library unit named Integer. 
You can't.   This is because all library units are explicitly nested 
directly within Standard.  This gives names in Standard a preferential 
visibility.  They can't be hidden by a library unit.  And also there is 
no USE visibility for names in Standard, the visibility is direct.  If 
you have a use clause for a package containing a type named Integer, it 
will not become USE visible due to the direct visibility of the Integer 
in Standard.

> * Ada 95 (and later) implies a non-written "with Ada, Ada.Strings;" when you
>   just write "with Ada.Strings.Maps;". Same for all children 
> -> things are not at all 100% explicit in the present standard.

Ask why, or look at the ARG and Ada 9X DR discussions, etc., and you 
will understand why it was done this way.  First there should be no 
confusion about whether there is a with clause for Ada.Strings. You are 
looking at it.  But consider another case:

package Ada.Strings.Maps is... -- A.4.2(3)

In this case, there is an implicit with of Ada.Strings, and with good 
reason.  To make the language easy to use, we need direct visibility of 
names in Ada.Strings within Ada.Strings.Maps.  That is pretty hard for 
the compiler to do correctly without having Ada.Strings as part of the 
context.  But it is not part of the context clause, because of the 
direct visibility issue, just like Standard.  Ada.Strings.Maps is 
conceptually declared within Ada.Strings, which is within Ada, which is 
within Standard.  Direct visibility all the way, and nary a hint of a 
with or use clause.
> 
> * The "[with and ]use" proposal offers the possibility of writing once
>   the name of a package instead of twice when you use "use" in a context clause.

As I said, not a problem, go ahead and push for "with and use" if you 
like it.  But having a use imply a with breaks things.  That model could 
be fixed, but why even try.  If you currently have a text editor macro 
that maps #wau Foo into "with Foo; use Foo;" you can change it to 
generate "with and use Foo;" if the change is approved.  I don't see it 
as a big deal, but different opinions are allowed and expected.

> -> this feature doesn't reduce from 1 to 0 the appearance of a package name
>    like both mentioned above, but from 2 to 1. When the feature is used, the
>    names remain explicit, but without redundance.
> 
> Clearly the contestation about this proposal is just because this is an evolution.
> Existing elements are by default sacred, improvements are by default suscpicious...

No I look at the "with implies use" proposal and get a splitting 
headache when thinking about how it could be worded.  Answer me just one 
little problem, and I might think about it:

use Foo; use Bar;
package...

Now if there is a package Foo and it contains a package Bar, and there 
is a package Bar in the compilation environment, which one do you get if 
any, and why?  If you don't understand the issue, create the specified 
packages and try it with your current Ada compiler.  Then read RM 8.4(6) 
to see why it works the way it does now, and try to rewrite 8.4(6) to 
match the use implies with proposal.  Now do you see why I have a headache?

This is the reason I often seem to say "Yeah, that's nice, why don't you 
propose it," about some proposals and "Forget it, it won't fly," about 
others.  I can be wrong, if someone finds a way to express things.  Some 
ARG members, especially Tucker, are trying to fit earliest deadline 
first scheduling within a priority based model without 
incompatibilities.  It looks like they are pulling it off.  This is very 
nice because, if it works it will allow some tasks (and priority levels) 
to be used for EDF scheduling and other priority levels for ordinary 
priority based scheduing.  But it is a lot of work that may never be 
visible to most Ada users.  The theory will be there, the few 
implementors who need to will understand it, and enough ARG members will 
understand the model to fix it if it breaks.  For something like that, 
it is worth the pain.  To shorten "with and use" to "use"?  No way!

But in this case, "with and use" is simple and seems to address the 
problem without monkeying with the scope of use clauses.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-15 11:35                                                                 ` Stephane Richard
  2003-11-15 12:53                                                                   ` Marin David Condic
@ 2003-11-16  0:19                                                                   ` Russ
  2003-11-16  1:41                                                                     ` Stephane Richard
  2003-11-16 13:56                                                                     ` Hyman Rosen
  1 sibling, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-16  0:19 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> wrote in message news:<hcotb.24224$hB5.13577@nwrdny02.gnilink.net>...

> *** Ada is not like C++.  And he seems to be convinced that C++'s semantics
> and syntax is what made it popular.  The first thing that made C/C++ ever
> worth looking at is that it was free with UNIX (Sure Unix wasn't free, but
> C++ was included, just as Basic was included with DOS). So All Unix, Mimix,
> and the rest of the gang users woudl go the C way, and DOS users went the
> BASIC way because it was included with the OS.

No, I am not "convinced that C++'s semantics and syntax is what made
it popular." I've made this abundantly clear in the past, but let me
clarify it again. What I *am* convinced of is that C++'s syntax did
not stand in its way of gaining popularity. Like the vast majority of
the other popular languages around today, C++ has a "standard"
assignment operator, for example. And like C, Java, Perl, and Python,
it has augmented assignment operators.

As fundamentally sound as Ada is, it is cursed with a non-standard
assignment operator, a lack of augmented assignment operators, and
unnecessary clutter at the beginning of many files. It's like a good
woman who is cursed with warts on her face. Just think of me as a
caring friend who is suggesting that the warts be removed as much as
possible. Don't take it as an insult. And please, don't tell me that I
think some other woman is popular *only* because she doesn't have
warts on her face.

> *** My take on this is that if Ada would have been bundled with Unix instead
> of C, well C wouldn't be what it is today.  First people used C because it
> was freely available, the other people used C because it was being used by
> others, that's how I explain my "monkey see monkey do" theory.  Last time I
> didn't mention C being freely available to start the big wheel turning,
> Marin put me back on track with this ;-), it was the first reason.

The fact that Unix and its progeny were and are written in C, and C
was bundled for free, was certainly an important factor. That is
undeniable. But that doesn't explain the popularity of C for three
decades, and its continued popularity for Linux and many of its
applications. It certainly could have been supplanted somewhere along
the way if it really rubbed developers wrong. Apparently it didn't.
I'm not sure that would have been true for Ada.



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

* Re: Clause "with and use"
  2003-11-15 16:40                                                             ` Gautier Write-only
@ 2003-11-16  0:25                                                               ` Robert I. Eachus
  2003-11-16  1:20                                                                 ` Wes Groleau
  2003-11-16 10:19                                                                 ` Gautier Write-only
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-16  0:25 UTC (permalink / raw)


Gautier wrote:

> This is not a problem, because they are *already* very different.
> 
> To take Robert examples,
> 
>   use ASCII;
>   procedure Junk is
>   begin null; end Junk;
> 
> (won't compile) is not at all the same as
> 
>   procedure Junk is
>     use ASCII;
>   begin null; end Junk;
> 
> (meaningful). 
> 
> The example Outer / Inner is interesting.
> 
>   package Outer is
>     package Inner is end;
>     procedure Dummy;  
>   end Outer;
> 
>   use Outer.Inner;
>   package body Outer is
>     procedure Dummy is
>     begin
>       null;
>     end Dummy;
>   end Outer;
> 
> is accepted by GNAT 3.15p but rejected by ObjectAda 7.2.2 !
> At least it could speak for the "with and use" syntax of the
> proposal.

Wow! That was fast, my code sample was only up for a short time and at 
least two bug reports resulted.  I used to say that I had two modes of 
writing Ada, in one I expected to write tens of thousands of lines 
between compiler bug reports.  In the language lawyer mode, if I didn't 
generate one bug report per every twenty lines or so, I was slacking.

Saying use Ascii; in a context clause is almost cheating in the second 
mode.  It is such a special case, probably never occurs in "real" code, 
and takes a lot of work by compiler developers to get right. (If you do 
send in a bug report, please! don't mention my name.  As far as I am 
concerned this is a pathological case.)

The "use Outer.Inner" case is a bit more troubling.  If the compiler 
also breaks on "with Outer; use Outer.Inner; package Foo is..." then I 
think it is worth a bug report.
-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-15 12:53                                                                   ` Marin David Condic
@ 2003-11-16  0:36                                                                     ` Russ
  2003-11-16  2:38                                                                       ` Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-16  0:36 UTC (permalink / raw)


Marin David Condic <nobody@noplace.com> wrote in message news:<3FB621AE.8040902@noplace.com>...

> And in the computer business, Success breeds Success. Once you had all 
> those free C compilers out there and a really inexpensive OS 
> (Universities were paying something like $200 for a source code license 
> for Unix at the time, I believe.) it made a breeding ground for more C 
> code. C++ was just riding on the success of C - upward compatibility, 
> large installed base of code, knowledge base, etc. From there, languages 
> like Java and Python had to go about looking something like C/C++ in 
> order to capitalize on familiarity.

No quarrel here.

> I see no evidence that anyone made a language popular because of its 
> syntax. If Unix had been written in Ada and the same circumstances 
> applied, you'd probably see everyone speaking Ada now and some C 
> newsgroup would be having a debate about "Why doesn't C change its 
> assignment statement to ":=" so it can be more popular?!?!?!". The 
> motivating factors here are largely economic.

Did I get something mixed up, or did the same person really write both
of the paragraphs above? In the first paragraph, you wrote, "From
there, languages like Java and Python had to go about looking
something like C/C++ in  order to capitalize on familiarity." Then in
the second paragraph, you wrote,"I see no evidence that anyone made a
language popular because of its syntax."

Well, which is it? Did C++ benefit from the syntactic similarity to C,
or didn't it? Did Java benefit from the syntactic similarity to Java,
or didn't it? If they did, doesn't that mean that syntax does indeed
have an effect on the popularity of a language?

I am going to restate something I have said before regarding the
negative effect bad syntax can have on the popularity of a language.
Just because programmers are not explicitly complaining about the
syntax, that does *not* mean it has no effect on their language
preferences. The effect may be subconscious, or it may be conscious
but deliberately concealed for fear of appearing "shallow." Similarly,
women are much more likely to reject a short man in favor of a tall
man, even if the tall man is a jerk and the short man is the nicest
guy around. I could give many other examples, of course.



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

* Re: Clause "with and use"
  2003-11-16  0:25                                                               ` Robert I. Eachus
@ 2003-11-16  1:20                                                                 ` Wes Groleau
  2003-11-16 14:59                                                                   ` Gautier Write-only
  2003-11-16 10:19                                                                 ` Gautier Write-only
  1 sibling, 1 reply; 385+ messages in thread
From: Wes Groleau @ 2003-11-16  1:20 UTC (permalink / raw)


Robert I. Eachus wrote:
> Wow! That was fast, my code sample was only up for a short time and at 
> least two bug reports resulted.  I used to say that I had two modes of 
> writing Ada, in one I expected to write tens of thousands of lines 
> between compiler bug reports.  In the language lawyer mode, if I didn't 
> generate one bug report per every twenty lines or so, I was slacking.

However, it wasn't your sample that found the bug.

You posted

   package body Outer is
     use Inner;

He changed it to

   use Outer.Inner;
   package body Outer is

-- 
Wes Groleau
-----------
Curmudgeon's Complaints on Courtesy:
http://www.onlinenetiquette.com/courtesy1.html
(Not necessarily my opinion, but worth reading)




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

* Re: Clause "with and use"
  2003-11-16  0:19                                                                   ` Russ
@ 2003-11-16  1:41                                                                     ` Stephane Richard
  2003-11-16  2:11                                                                       ` Frank J. Lhota
                                                                                         ` (2 more replies)
  2003-11-16 13:56                                                                     ` Hyman Rosen
  1 sibling, 3 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-16  1:41 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5550 bytes --]


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311151619.400e3b6f@posting.google.com...
> "Stephane Richard" <stephane.richard@verizon.net> wrote in message
news:<hcotb.24224$hB5.13577@nwrdny02.gnilink.net>...
>
> No, I am not "convinced that C++'s semantics and syntax is what made
> it popular." I've made this abundantly clear in the past, but let me
> clarify it again. What I *am* convinced of is that C++'s syntax did
> not stand in its way of gaining popularity. Like the vast majority of
> the other popular languages around today, C++ has a "standard"
> assignment operator, for example. And like C, Java, Perl, and Python,
> it has augmented assignment operators.
>
*** You're right, the syntax didn't stand in the way of it's popularity,
What I'm saying is if Ada, was used instead of C/C++ to develop and bundled
free with it, Things would have been different.  and Ada's syntax would not
have stood in the way of it's popularity either.  In the DOS world, C wasn't
as popular back then because a BASIC was the language supplied free.  and
people didn't complain about the syntax of BASIC either.

> As fundamentally sound as Ada is, it is cursed with a non-standard
> assignment operator, a lack of augmented assignment operators, and
> unnecessary clutter at the beginning of many files. It's like a good
> woman who is cursed with warts on her face. Just think of me as a
> caring friend who is suggesting that the warts be removed as much as
> possible. Don't take it as an insult. And please, don't tell me that I
> think some other woman is popular *only* because she doesn't have
> warts on her face.

*** Well, selling houses didn't work, now we're choosing brides ?  :-)  (no
pun intended).  I see your analogy Russ.  Let's talk about that clutter at
the beginning of the file.  As you know Ada, much like Pascal dialects, do
not require a namespace, names being isolated by package names (of course
providing there's no conflict in package names but if there is, Ada will
report it). In C++ today it's not enough to compare With and Use with C++'s
#include statement.

With Ada.Text_IO; USE Ada.Text_IO;

Isn't like saying
#include <libraryname.h>

It's more like saying

#include <LibraryName>
using namespace <NameSpace>;

If you have a namespace defined for a given library, and you don't include
the "using namespace <>" clause the only way to access that function will
be: "NameSpace.FunctionName()", if you are using the "using namespace <>"
clause then you can just call FunctionName() because the NameSpace is
resolved by the statement.

In C++ even for standard cout and cin functions you need to use the std name
space or you'll have to write std::cout everytime you need to output
something to the standard output.

I think you can view With and Use pretty much like the #include and using
namespace statements in C++.

> The fact that Unix and its progeny were and are written in C, and C
> was bundled for free, was certainly an important factor. That is
> undeniable. But that doesn't explain the popularity of C for three
> decades, and its continued popularity for Linux and many of its
> applications. It certainly could have been supplanted somewhere along
> the way if it really rubbed developers wrong. Apparently it didn't.
> I'm not sure that would have been true for Ada.

It explains it's popularity for any time period before OpenSource
existed...afterwards..seems no one made a free basic, but there was a free
form of pascal compiler available and that definitally gave it a good boost.
What was the price of COBOL back in the early 80s?  Like I said, the trigger
was C bundled freely with these OS ... afterwards, it's either laziness, or
monkey see monkey do.  As in:

Note that these are situations I've lived first hand, they may not be a
majority, but I doubt it :-).  but these explanation reasons below were told
to me as is without editing :-).  and I'm sure that they weren't the only
ones to think one of these following ways.

Commercial reasons
" Well we got all these code we wrote in C or C++. Too late to change now,
it would cost us an arm and a leg"

Lazy Reason:
" Well I don't wanna redo it (and that's even if he knew it would have been
much better) back then C was not the answer to every problem, still had it's
mark to make. Today well we'd need to restart the comparisons."

Monkey See Monkey Do (usually in the case of a Team with a New project, but
I've seen code being rewritten to another language for this same reason:
" Project X does This, This other company (competitor or not) used C/C++ to
do it, maybe they know something we don't" and they wouldn't research the
issue, go get C++ and start coding.

I'm not saying no one at all did the research and didn't come up with a
reason other than the preceding three to use C++.  Far from it, but I'm
saying that all these reasons helped C/C++'s popularity not just the power
and flexibility of the language because today, with every language
attempting to acheive general purpose language status, that gap between
other language sand C's low level features is breaking.  with Ada, but with
other languages too.

And finally I can tell you that I've heard of many companies start to regret
their choice of using C/C++ both.  And starting to say "Maybe I should have
studied the issue more" not publically of course cause it would cost them
their jobs ;-).  Again I'm not saying everyone is regretting, but some
definitaly are.

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-16  1:41                                                                     ` Stephane Richard
@ 2003-11-16  2:11                                                                       ` Frank J. Lhota
  2003-11-16  2:28                                                                         ` Stephane Richard
  2003-11-16 14:04                                                                         ` Hyman Rosen
  2003-11-16  6:15                                                                       ` Russ
  2003-11-16 14:00                                                                       ` Hyman Rosen
  2 siblings, 2 replies; 385+ messages in thread
From: Frank J. Lhota @ 2003-11-16  2:11 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> wrote in message
news:tBAtb.26703$hB5.10383@nwrdny02.gnilink.net...
> In C++ even for standard cout and cin functions you need to use the std
name
> space or you'll have to write std::cout everytime you need to output
> something to the standard output.

I've done that a lot in my C++ code. In the C++ community, the "using"
declaration is even more controversial than the "use" clause is in the Ada
community. I have programmed for groups where using "using" is prohibited
unless absolutely necessary.

You can do stream program without "using", but that involves writing
std::cout, std::flush, std::endl, etc., not to mention appending std to
every identifier from the STL.

If Russ dislikes the clutter caused by matching "with" and "use" clauses in
Ada, he'd be appalled at what often goes on in the C++ community!





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

* Re: Clause "with and use"
  2003-11-16  2:11                                                                       ` Frank J. Lhota
@ 2003-11-16  2:28                                                                         ` Stephane Richard
  2003-11-16 14:04                                                                         ` Hyman Rosen
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-16  2:28 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 780 bytes --]


"Frank J. Lhota" <NOSPAM.FrankLho@rcn.com> wrote in message
news:bp6mcr$2uc$1@bob.news.rcn.net...
>
> I've done that a lot in my C++ code. In the C++ community, the "using"
> declaration is even more controversial than the "use" clause is in the Ada
> community. I have programmed for groups where using "using" is prohibited
> unless absolutely necessary.
>
> You can do stream program without "using", but that involves writing
> std::cout, std::flush, std::endl, etc., not to mention appending std to
> every identifier from the STL.
>
> If Russ dislikes the clutter caused by matching "with" and "use" clauses
in
> Ada, he'd be appalled at what often goes on in the C++ community!
>
>
I hear ya :-).

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-15 22:12                                                                 ` Russ
@ 2003-11-16  2:29                                                                   ` Chad R. Meiners
  2003-11-16  7:01                                                                     ` Russ
  0 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-16  2:29 UTC (permalink / raw)



"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311151412.6bf52757@posting.google.com...
> "Chad R. Meiners" <crmeiners@hotmail.com> wrote in message
news:<bp4dnh$r7q$1@msunews.cl.msu.edu>...
> > "Russ" <18k11tm001@sneakemail.com> wrote in message
> > news:bebbba07.0311141523.3c523f8c@posting.google.com...
>
> > If the use clauses couldn't be used in declaration section, I wouldn't
> > object to having use clauses imply with clauses.
> > As is, doing so will add an inconsistency to the language.
>
> I don't see any inconsistency. The rule would be simple: "use" implies
> "with" if it is in the context section, otherwise it doesn't. Or, to
> put it another way, "use" implies "with", but any externally
> referenced package must appear in the context section in either a
> "use" or a "with" statement. Where is the inconsistency?

The above rule, when in isolation, is not inconsistent.  When it is merge
with theobjectives(you can find some very good description of these in some
of Robert Eachus's posts) of Ada, it becomes inconsistent.

> If I wanted to be unreasonable, I could claim that the current Ada
> rules are inconsistent because both "with" and "use" are allowed in
> the context section, but only "use" is allowed after the context
> section. That's superficially inconsistent, but it's not significantly
> inconsistent because, as you said yourself, "with" and "use" have
> different purposes.

Not really, because both with and use have very specific meanings.
Secondly, with clauses do not depend upon use clauses; therefore, their
placement can be limited compared to the use clause.

> > > You are confusing two different issues here. One issue is what *you*
> > > consider good programming practice, and the other issue is what the
> > > language allows or should allow. *You* don't think that "use" should
> > > ever be used in the context section at the top of a file. Sorry, Ada
> > > allows it, and many excellent programmers consider it perfectly
> > > acceptable in many cases.
> >
> > Ha! You don't know my opinion on use clauses in context sections.  I
never
> > said that people should not put them in the context section of a unit.
I
> > said that if people use them in their appropriate(using rational
judgment)
> > place (which can be at the top of the file).
>
> So I misunderstood your position or mistook it for that of someone
> else. It was an honest mistake.

Okay that's fine.  It is a pity we don't have formal inflection symbols for
text ;)

> > Nice use of begging the question!
> >
> > > But since you don't like that particular feature, you want to keep it
> > > as inconvenient as possible to use. Well, isn't that just a bit
> > > self-centered? I and others would like to be able to use this
> > > officially blessed language feature, but we don't want to have to jump
> > > through unnecessary hoops to use it.
> >
> > Ah, here comes the unwarranted character assassination that follows the
> > begging of the question ;)
>
> Character assassination?

Okay, when someone intentionally begs a question, it is usually to perform
character assassination.  For example, the question, "Have you stopped
beating your dog?".

> The simple fact is that my proposal would not
> force you to do anything you don't want to do. Neither you nor anyone
> else would need to change a single character in any of Ada source
> file.

I understand this, but ...

> But your insistence of the status quo would prevent me and
> others from writing less-cluttered code.

my insistence for the status quo is because the design of Ada is
really--really helpful to people (especially students) when they program.
The best way to express this difference is that you (en)code in C/C++ and
you program in Ada.  The result of this difference is that Ada is ground
that is very fertile for though and abstraction.

> > > Neglecting to floss your teeth is bad practice. Maybe hotels should
> > > not let you check in unless you show them that you are carrying dental

> > > floss. What harm could it do? I'll tell you what harm it could do. It
> > > could drive away clients, even ones who carry dental floss, because
> > > people don't like to be micro-managed.
> > >
> >
> > Come on.  I was trying to have a rational argument with you; however, I
see
> > that this is unlikely.
>
> Oh, I see. What was that about "character assassination" again?

Well it seemed (in an observable way) that you were being intentionally,
'stubborn'.

> Thank you for the lecture in civility, Saint Chad. I'm happy to know
> that you will be there to chastise the next person who insults me.
> Just for the record, I have apologized for my admittedly rude remarks
> in the past, but nobody has apologized to me for equally offensive
> remarks.

I never claimed to be a saint nor do I aspire to become one.  Just for the
record you have apologized for only some of you rude remarks.  ;-)

> > Let's look at the facts (as written in the newsgroups):
> >
> > You proclaimed that you do not program as a profession.
> > You proclaimed that you have not written a serious project in Ada.
>
> Oh, I see. Only professional Ada programmers are competent to comment
> on Ada, eh? No, I am not a programmer or software engineer by
> training, but you better believe that I have done significant
> programming and been paid for it.

Deduction and reasoning is not a replacement for experience.  The believe so
is the source of hubris.  You are free to comment on Ada, but it would be
wise to listen to the counterarguments and comments of those that have
actual experience in working with Ada.  Remember scientific a hypothesis
must be supported by experienced behavior.  The same is true about all
rational discussions about languages.

> I am one of those rare non-Ada
> programmers who recognizes the value of Ada, and look at how much
> respect I get from you and others, Saint Chad.

I have treated you with basic civility and respect.

> > What are your qualification to comment on clutter in Ada?
>
> I have read much (most?) of Cohen's encyclopedic book on Ada (in my
> spare time), and I have written some small but non-trivial Ada
> programs just to familiarize myself with the language. Also, about ten
> years ago, I led the development of an experimental real-time DGPS/INS
> precision landing guidance system in C++. As far as I am concerned,
> that way overqualifies me to comment on "with" and "use".
> Tell me, Saint Chad, what qualifications you think I need to make such
> comments? And next time I post, I'll be sure to check with you.

First, your experience with prior programming languages is secondary.  It is
useful for comparing against the experience you had in Ada.  Second, you
should have experience with some large code base of Ada.  I would suggest
the source code for GNAT.  This will put you into the position of the reader
as oppose to a writer.  I have found the GNAT source very easy to dive right
into, and furthermore, I didn't find the with-use combo to be cluttering at
all.  I will give you the benifit of the doubt that your learning projects
involved something more than just transcribing programs you wrote earlier.
Furthermore, I asked you for your qualifications because you were not
properly supporting your arguments.   You were simply asserting an opinion.
Therefore, if you want your opinion to carry the weight that you feel it
ought to, you should provide some qualifications.  There is nothing wrong
with me asking for your qualifications; it is the responsible course of
action when your assertions appear contrary to observed experience.  Their
is no need to get upset over being asked.





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

* Re: Clause "with and use"
  2003-11-16  0:36                                                                     ` Russ
@ 2003-11-16  2:38                                                                       ` Chad R. Meiners
  0 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-16  2:38 UTC (permalink / raw)



"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311151636.472a9aa7@posting.google.com...
> Well, which is it? Did C++ benefit from the syntactic similarity to C,
> or didn't it? Did Java benefit from the syntactic similarity to Java,
> or didn't it? If they did, doesn't that mean that syntax does indeed
> have an effect on the popularity of a language?

Both of course.  ;)  CO did not become popular due to its syntax, but once
it had become popular people were accustomed to it which allows languages
with similar syntax to leverage upon its popularity.

> I am going to restate something I have said before regarding the
> negative effect bad syntax can have on the popularity of a language.
> Just because programmers are not explicitly complaining about the
> syntax, that does *not* mean it has no effect on their language
> preferences. The effect may be subconscious, or it may be conscious
> but deliberately concealed for fear of appearing "shallow." Similarly,
> women are much more likely to reject a short man in favor of a tall
> man, even if the tall man is a jerk and the short man is the nicest
> guy around. I could give many other examples, of course.

One should not worry about unobservable events because one cannot knowingly
affect them.





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

* Re: Clause "with and use"
  2003-11-15 15:19                                                               ` Robert I. Eachus
  2003-11-15 16:15                                                                 ` Gautier Write-only
@ 2003-11-16  5:55                                                                 ` Russ
  2003-11-16 19:31                                                                   ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-16  5:55 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<G-udnYiJ3bOJ2SuiRVn-tg@comcast.com>...
> Russ wrote:
> 
> > This whole line about "with" and "use" having different meanings is
> > completely irrelevant. I don't care if "with" sends a mouse to the
> > moon and "use" massages my feet. The simple fact is that "use" implies
> > "with," whether you like it or not. Just try to use "use" without
> > "with", and the compiler will tell you so. If I say, "use a hammer,"
> > do I need to precede it with, "obtain a hammer"? Of course not. You
> > cannot possibly "use" a hammer if one is not available.
> 
> Bzzzt! Wrong Answer, try again.  A use clasue in Ada does NOT imply that 
> there is a with around somewhere.  Try compiling:
> 
> procedure Junk is
>    use Ascii;
> begin null; end Junk;
> 
> If you have any doubts about that.

Mr. Eachus, I'll admit that my point was very unclear, perhaps even
obtuse, but I think it should have been clear that my point was *not*
what you thought it was. If I really thought that "use" literally
implies "with", then why would I be arguing that "use" should imply
"with"?

My point was as follows. If you use "use" without preceding it with
"with" (no pun intended), the compiler will obviously squawk at you.
The compiler is telling you that you should have had a "with"
statement. In other words, the compiler is telling that "use"
*requires* "with". So in a sense, it implies it. It was a poor way to
make the point. Please forget I wrote it.



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

* Re: Clause "with and use"
  2003-11-16  1:41                                                                     ` Stephane Richard
  2003-11-16  2:11                                                                       ` Frank J. Lhota
@ 2003-11-16  6:15                                                                       ` Russ
  2003-11-16 14:00                                                                       ` Hyman Rosen
  2 siblings, 0 replies; 385+ messages in thread
From: Russ @ 2003-11-16  6:15 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> wrote in message news:<tBAtb.26703$hB5.10383@nwrdny02.gnilink.net>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311151619.400e3b6f@posting.google.com...
> > "Stephane Richard" <stephane.richard@verizon.net> wrote in message
>  news:<hcotb.24224$hB5.13577@nwrdny02.gnilink.net>...
> >
> > No, I am not "convinced that C++'s semantics and syntax is what made
> > it popular." I've made this abundantly clear in the past, but let me
> > clarify it again. What I *am* convinced of is that C++'s syntax did
> > not stand in its way of gaining popularity. Like the vast majority of
> > the other popular languages around today, C++ has a "standard"
> > assignment operator, for example. And like C, Java, Perl, and Python,
> > it has augmented assignment operators.
> >
> *** You're right, the syntax didn't stand in the way of it's popularity,
> What I'm saying is if Ada, was used instead of C/C++ to develop and bundled
> free with it, Things would have been different.  and Ada's syntax would not
> have stood in the way of it's popularity either.

I don't think you (or anyone) could possibly know that.

> *** Well, selling houses didn't work, now we're choosing brides ?  :-)  (no
> pun intended).  I see your analogy Russ.  Let's talk about that clutter at
> the beginning of the file.  As you know Ada, much like Pascal dialects, do
> not require a namespace, names being isolated by package names (of course
> providing there's no conflict in package names but if there is, Ada will
> report it). In C++ today it's not enough to compare With and Use with C++'s
> #include statement.
> 
> With Ada.Text_IO; USE Ada.Text_IO;
> 
> Isn't like saying
> #include <libraryname.h>
> 
> It's more like saying
> 
> #include <LibraryName>
> using namespace <NameSpace>;

Yes, I agree. However, C++ is stuck with this approach because the
<LibraryName> is not the same as the <NameSpace>. In Ada, the package
name *is* the namespace, so there is no inherent need to specify two
different entities. Here's a chance for Ada to actually be cleaner and
more convenient than C++, but it's apparently being squandered.



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

* Re: Clause "with and use"
  2003-11-16  2:29                                                                   ` Chad R. Meiners
@ 2003-11-16  7:01                                                                     ` Russ
  2003-11-16 20:02                                                                       ` Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-16  7:01 UTC (permalink / raw)


"Chad R. Meiners" <crmeiners@hotmail.com> wrote in message news:<bp6neb$1eo$1@msunews.cl.msu.edu>...
> "Russ" <18k11tm001@sneakemail.com> wrote in message
> news:bebbba07.0311151412.6bf52757@posting.google.com...

> > Thank you for the lecture in civility, Saint Chad. I'm happy to know
> > that you will be there to chastise the next person who insults me.
> > Just for the record, I have apologized for my admittedly rude remarks
> > in the past, but nobody has apologized to me for equally offensive
> > remarks.
> 
> I never claimed to be a saint nor do I aspire to become one.  Just for the
> record you have apologized for only some of you rude remarks.  ;-)

Which is more than can be said for anyone else on this forum, or at
least the part of it I've seen.

> Deduction and reasoning is not a replacement for experience.  The believe so
> is the source of hubris.  You are free to comment on Ada, but it would be
> wise to listen to the counterarguments and comments of those that have
> actual experience in working with Ada.  Remember scientific a hypothesis
> must be supported by experienced behavior.  The same is true about all
> rational discussions about languages.
> 
> > I am one of those rare non-Ada
> > programmers who recognizes the value of Ada, and look at how much
> > respect I get from you and others, Saint Chad.
> 
> I have treated you with basic civility and respect.

On this post I would agree that you have. However, your previous post
was more than a little patronizing. I think you will find that most
people naturally resent being patronized and lectured to. Then again,
maybe I deserved it. On the other hand, I think there's a tendency
here to mistake impassioned debate with a personal attack.

In any case, I guess we'll just have to "agree to disagree" on this
one, because I simply cannot agree with your position. As I wrote
before, Python has

   import math # equivalent to Ada "with"

and

   from math import * # equivalent to Ada "use"

and you do not need to precede the latter with the former. The latter
stands alone perfectly well. As far as I know, this has never been
called "inconsistent" or considered even a minor issue in the Python
community. It's a complete non-issue, and I'll bet that if I clained
on comp.lang.python that this is somehow inconsistent or error prone,
people there would consider me a nut case.

Yes, I realize that Ada is not Python, and Ada is intended for safety
critical code and Python is not. However, the safety of Ada does not
come from redundant "with" and "use". Purists who think otherwise
remind me of military purists. In bootcamp they force you to keep your
shoes shiny and your uniform folded perfectly. Why? Because it
establishes discipline. Do shiny shoes make you a more effective
fighter? Of course not. But try to argue that with a marine DI. It
would be very much like arguing here that redundant "with" and "use"
does not make your code "safer" or more reliable. You just cannot
penetrate a certain mindset.



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

* Re: Clause "with and use"
  2003-11-16  0:25                                                               ` Robert I. Eachus
  2003-11-16  1:20                                                                 ` Wes Groleau
@ 2003-11-16 10:19                                                                 ` Gautier Write-only
  1 sibling, 0 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-16 10:19 UTC (permalink / raw)


Robert I. Eachus:

> The "use Outer.Inner" case is a bit more troubling.  If the compiler
> also breaks on "with Outer; use Outer.Inner; package Foo is..." then I
> think it is worth a bug report.

  with Outer; use Outer.Inner;
  package Foo is
  end Foo;

Both of OA 7.2.2 and GNAT 3.15p compile it.
________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-16  0:02                                                                   ` Robert I. Eachus
@ 2003-11-16 10:41                                                                     ` Gautier Write-only
  2003-11-17  9:04                                                                     ` Dmitry A. Kazakov
  1 sibling, 0 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-16 10:41 UTC (permalink / raw)


Robert I. Eachus

> As I said, not a problem, go ahead and push for "with and use" if you
> like it.  But having a use imply a with breaks things.  That model could
> be fixed, but why even try.  If you currently have a text editor macro
> that maps #wau Foo into "with Foo; use Foo;" you can change it to
> generate "with and use Foo;" if the change is approved.  I don't see it
> as a big deal, but different opinions are allowed and expected.

OK, you convinced me that the "use" implying "with", although looking nicer,
will cause a lot of problems, to begin with the non-compatibility and ambivalency.
I'll keep on pushing for "with and use".

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-16  0:19                                                                   ` Russ
  2003-11-16  1:41                                                                     ` Stephane Richard
@ 2003-11-16 13:56                                                                     ` Hyman Rosen
  1 sibling, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-16 13:56 UTC (permalink / raw)


Russ wrote:
>  What I *am* convinced of is that C++'s syntax did
> not stand in its way of gaining popularity.

Which, considering what C++'s syntax is like, is absolutely amazing.




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

* Re: Clause "with and use"
  2003-11-16  1:41                                                                     ` Stephane Richard
  2003-11-16  2:11                                                                       ` Frank J. Lhota
  2003-11-16  6:15                                                                       ` Russ
@ 2003-11-16 14:00                                                                       ` Hyman Rosen
  2 siblings, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-16 14:00 UTC (permalink / raw)


Stephane Richard wrote:
> In C++ even for standard cout and cin functions you need to use the std name
> space or you'll have to write std::cout everytime you need to output
> something to the standard output.

Yep. Oddly enough, I never find myself tempted to stick 'using namespace std;'
in my code. I actually like the way the code looks sprinkled with little 'std::'
qualifiers. It sets off the standard library stuff from the rest of the code.




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

* Re: Clause "with and use"
  2003-11-16  2:11                                                                       ` Frank J. Lhota
  2003-11-16  2:28                                                                         ` Stephane Richard
@ 2003-11-16 14:04                                                                         ` Hyman Rosen
  1 sibling, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-16 14:04 UTC (permalink / raw)


Frank J. Lhota wrote:
> I've done that a lot in my C++ code. In the C++ community, the "using"
> declaration is even more controversial than the "use" clause is in the Ada
> community. I have programmed for groups where using "using" is prohibited
> unless absolutely necessary.

As far as I know, the general rule of thumb is never to put a "using" declaration
in a header file, because then you are polluting the namespaces of everyone who
includes the file. But it's fine to do it in an implementation file. I don't usually
bother, though - I'm not offended by (short) qualifiers.




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

* Re: Clause "with and use"
  2003-11-16  1:20                                                                 ` Wes Groleau
@ 2003-11-16 14:59                                                                   ` Gautier Write-only
  2003-11-16 19:39                                                                     ` Robert I. Eachus
  2003-11-16 21:04                                                                     ` Wes Groleau
  0 siblings, 2 replies; 385+ messages in thread
From: Gautier Write-only @ 2003-11-16 14:59 UTC (permalink / raw)


> Robert I. Eachus wrote:
> > Wow! That was fast, my code sample was only up for a short time and at
> > least two bug reports resulted.  I used to say that I had two modes of
> > writing Ada, in one I expected to write tens of thousands of lines
> > between compiler bug reports.  In the language lawyer mode, if I didn't
> > generate one bug report per every twenty lines or so, I was slacking.

Wes Groleau:


> However, it wasn't your sample that found the bug.
> 
> You posted
> 
>    package body Outer is
>      use Inner;
> 
> He changed it to
> 
>    use Outer.Inner;
>    package body Outer is

Thank you for the precision.

I'm curious to know who's right on the changed example: GNAT or ObjectAda ?
GNAT compiles, OA says:

outer.adb: Error: line 1 col 6 LRM:4.1(3), Direct name, Outer, is not visible, Ignoring future references 

________________________________________________________
Gautier  --  http://www.mysunrise.ch/users/gdm/gsoft.htm

NB: For a direct answer, e-mail address on the Web site!



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

* Re: Clause "with and use"
  2003-11-16  5:55                                                                 ` Russ
@ 2003-11-16 19:31                                                                   ` Robert I. Eachus
  2003-11-17  1:34                                                                     ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-16 19:31 UTC (permalink / raw)



> I said:  
>  Try compiling:
>>
>>procedure Junk is
>>   use Ascii;
>>begin null; end Junk;
>>
>>If you have any doubts about that.

Russ wrote:

> Mr. Eachus, I'll admit that my point was very unclear, perhaps even
> obtuse, but I think it should have been clear that my point was *not*
> what you thought it was. If I really thought that "use" literally
> implies "with", then why would I be arguing that "use" should imply
> "with"?

Then you didn't try compiling that litte code fragment.  The:

use Ascii;
procedure Junk is beging null; end Junk;

That Gautier wrote may cause problems for some compilers, and I wouldn't 
worry about it.  (Especially since I'm probably the guy who wrote the 
test that shot them down in Ada 83 if they did allow it.)  But the 
example as posted is legal Ada 83 and Ada 95.

> My point was as follows. If you use "use" without preceding it with
> "with" (no pun intended), the compiler will obviously squawk at you.
> The compiler is telling you that you should have had a "with"
> statement. In other words, the compiler is telling that "use"
> *requires* "with". So in a sense, it implies it. It was a poor way to
> make the point. Please forget I wrote it.

I can't forget it.  Because Ada doesn't work that way.  In Ada with and 
use have two different meanings, different scopes where they are allowed 
and in some cases different rules for name resolution.  There is a whole 
clause of the RM 10.1.6 Environment-Level Visibility Rules, that 
discusses SOME of these differences.

You probably don't need to read this section, or even think about for 
most Ada programming.  The principle of least surprise that was used in 
developing these rules make it unlikely that a programmer will ever run 
into a case where the rules don't match his or her expectations.  But 
langauge-lawyers and compiler developers need to pay close attention to 
this section and others.  I have seen several posts that confused these 
rules badly.  (In both senses of the word confused.)

Note that 10.1.6(2) gives the visibility rules within use clauses, and 
10.1.6(3) the visibility rules within pragmas and use clauses in context 
clauses.  They are different.  They have to be different.  There are 
lots of with and use clauses where a "with and use" construct could be 
made to work--and most programmers would be happy with such a construct 
having 10.1.6(2) type visibility.  But there are lots of existing 
pragmas and use clauses in existing code that depend on 10.1.6(3) type 
visibility and I see no justification for breaking all that code.

For example I have some code that says:

with Float_Complex; use type Float_Complex.Complex;

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-16 14:59                                                                   ` Gautier Write-only
@ 2003-11-16 19:39                                                                     ` Robert I. Eachus
  2003-11-16 21:04                                                                     ` Wes Groleau
  1 sibling, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-16 19:39 UTC (permalink / raw)


Gautier wrote:

>>However, it wasn't your sample that found the bug.
>>
>>You posted
>>
>>   package body Outer is
>>     use Inner;
>>
>>He changed it to
>>
>>   use Outer.Inner;
>>   package body Outer is
> 
> 
> Thank you for the precision.

I know, I was trying to write in the non-compiler testing mode.  Gautier 
changed it to what I originally thought, then decided this was a 
language discussion not a compiler torture test.

> I'm curious to know who's right on the changed example: GNAT or ObjectAda ?
> GNAT compiles, OA says:
> 
> outer.adb: Error: line 1 col 6 LRM:4.1(3), Direct name, Outer, is not visible, Ignoring future references 

I guess I'd have to say that the reference in OA is definitely wrong, it 
should be referencing 10.1.6(3).

But GNAT is definitely wrong.  Only the names made visible or directly 
visible by previous with clauses in the same context clause are visible 
in a use clause of the context clause.

-- 
 
Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-16  7:01                                                                     ` Russ
@ 2003-11-16 20:02                                                                       ` Chad R. Meiners
  2003-11-17  2:34                                                                         ` Way off topic was: " Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-16 20:02 UTC (permalink / raw)



"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311152301.33340240@posting.google.com...
> "Chad R. Meiners" <crmeiners@hotmail.com> wrote in message
news:<bp6neb$1eo$1@msunews.cl.msu.edu>...
> > "Russ" <18k11tm001@sneakemail.com> wrote in message
> > news:bebbba07.0311151412.6bf52757@posting.google.com...
>
> On this post I would agree that you have. However, your previous post
> was more than a little patronizing. I think you will find that most
> people naturally resent being patronized and lectured to. Then again,
> maybe I deserved it. On the other hand, I think there's a tendency
> here to mistake impassioned debate with a personal attack.

True, it is difficult to gauge how people will read what you write.

> In any case, I guess we'll just have to "agree to disagree" on this
> one, because I simply cannot agree with your position. As I wrote
> before, Python has
>
>    import math # equivalent to Ada "with"
>
> and
>
>    from math import * # equivalent to Ada "use"
>
> and you do not need to precede the latter with the former. The latter
> stands alone perfectly well. As far as I know, this has never been
> called "inconsistent" or considered even a minor issue in the Python
> community. It's a complete non-issue, and I'll bet that if I clained
> on comp.lang.python that this is somehow inconsistent or error prone,
> people there would consider me a nut case.

Yes, this is a case were we need to step back from the argument and let a
little time pass so that we can gather more experience.

> Yes, I realize that Ada is not Python, and Ada is intended for safety
> critical code and Python is not. However, the safety of Ada does not
> come from redundant "with" and "use". Purists who think otherwise
> remind me of military purists.

And here is the irony.  I am not a language purist. ;-)  I usually try to
seek optimal configurations (I think you see yourself in this way, too;
hence, the irony).  This is why I like Ada; it feels very close to an
optimal language.  I think you will agree that when you are doing further
optimizations that you have to be really careful not to take steps
backwards.  Anyway, most of the program I write are not really safety
dependent.  Well I like to feel safe from my tools crashing unexpectedly in
front of important people. ;-)

> In bootcamp they force you to keep your
> shoes shiny and your uniform folded perfectly. Why? Because it
> establishes discipline. Do shiny shoes make you a more effective
> fighter? Of course not.

Well ....  I have noticed that people that have shiny shoes and perfectly
folded uniforms can take pride in this.  This pride helps self-esteem, which
improves the troops moral.  Troops with high moral are way more effective
than troops with low moral.

Note that my argument is rather holistic in that considers the effect in
whole environment.  Naturally, it does not always apply, and this is where
purists shall get unreasonable.

> But try to argue that with a marine DI. It
> would be very much like arguing here that redundant "with" and "use"
> does not make your code "safer" or more reliable. You just cannot
> penetrate a certain mindset.

Well grant you that it depends on the DI.  I would think that a good DI
would recognized when the shining of shoes won't help to make a better
soldier.  However, that would probably exclude good DIs from being purists,
but I can definitely see the an average DI could very well be a purist.





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

* Re: Clause "with and use"
  2003-11-16 14:59                                                                   ` Gautier Write-only
  2003-11-16 19:39                                                                     ` Robert I. Eachus
@ 2003-11-16 21:04                                                                     ` Wes Groleau
  1 sibling, 0 replies; 385+ messages in thread
From: Wes Groleau @ 2003-11-16 21:04 UTC (permalink / raw)


Gautier Write-only wrote:
> I'm curious to know who's right on the changed example: GNAT or ObjectAda ?
> GNAT compiles, OA says:
> 
> outer.adb: Error: line 1 col 6 LRM:4.1(3), Direct name, Outer, is not visible, Ignoring future references 

I'm curious too.  I'm tempted to say OA is wrong.
I remember once having Verdix refuse to allow referencing

    Proc.Vrbl

within the body of Proc.Func

and that was ruled a bug.

-- 
Wes Groleau
    "Would the prodigal have gone home if
     the elder brother was running the farm?"
                       -- James Jordan




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

* Re: Clause "with and use"
  2003-11-16 19:31                                                                   ` Robert I. Eachus
@ 2003-11-17  1:34                                                                     ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-17  1:34 UTC (permalink / raw)


Oops!

Robert I. Eachus wrote:

> Note that 10.1.6(2) gives the visibility rules within use clauses, and 
...within WITH clauses,...

> 10.1.6(3) the visibility rules within pragmas and use clauses in context 
> clauses.  They are different.  They have to be different.  There are 
> lots of with and use clauses where a "with and use" construct could be 
> made to work--and most programmers would be happy with such a construct 
> having 10.1.6(2) type visibility.  But there are lots of existing 
> pragmas and use clauses in existing code that depend on 10.1.6(3) type 
> visibility and I see no justification for breaking all that code.

Well at least I didn't try to say, "...used within with clauses..." 
even if I got that right, who would understand it?

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-13 17:49                                                           ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
  2003-11-14  5:00                                                             ` Robert I. Eachus
@ 2003-11-17  2:31                                                             ` Russ
  2003-11-17  3:04                                                               ` Chad R. Meiners
  2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
  1 sibling, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-17  2:31 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<JtPsb.8014$fB3.463946@news20.bellglobal.com>...

> I think most of us would agree that Ada was ahead of its time
> when it came out. By 1995, I believe the "market" had probably
> already accepted C/C++ as the dominant language, largely due to
> its widespread use in operating systems (UNIX + NT), and major
> applications. Even in 1995 (including up to present) the kind of
> thing you hear now is "I remember Ada". Immediatly the association
> is that it is "old", even though C is just as old (younger folks
> often havn't even heard of it, unless the University taught it).

My experience is that many if not most software professionals have no
idea what Ada 95 can actually do. They don't know, for example, that
it has built-in multitasking and support for distributed systems. Many
of them don't even know it is object oriented. Part of this is due to
the fact that Ada 83 was considerably less evolved, and, as you point
out, it was well along in its decline before Ada 95 came out. I guess
most programmers consider Ada to be roughly in the category of
Fortran, both in capability and popularity.

How do we get the word out about Ada? I don't know, but do I know that
Ada is not the only superior technology that is being squandered due
to ignorance. Nuclear power is another classic example of a superior
technology that is being squandered due to abysmal ignorance. If you
have some spare time, go to my web pages on it at
http://RussP.org/nucpower.htm , then click on "Some Amazing Facts
about Nuclear Power". I bet you'll be surprised at what you discover.
(OK, that ends my off-topic rant.)



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

* Way off topic was: Re: Clause "with and use"
  2003-11-16 20:02                                                                       ` Chad R. Meiners
@ 2003-11-17  2:34                                                                         ` Robert I. Eachus
  2003-11-17 21:12                                                                           ` Russ
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-17  2:34 UTC (permalink / raw)


Chad R. Meiners wrote:

>>In bootcamp they force you to keep your
>>shoes shiny and your uniform folded perfectly. Why? Because it
>>establishes discipline. Do shiny shoes make you a more effective
>>fighter? Of course not.
> 
> 
> Well ....  I have noticed that people that have shiny shoes and perfectly
> folded uniforms can take pride in this.  This pride helps self-esteem, which
> improves the troops moral.  Troops with high moral are way more effective
> than troops with low moral.
> 
> Note that my argument is rather holistic in that considers the effect in
> whole environment.  Naturally, it does not always apply, and this is where
> purists shall get unreasonable.

Totally off topic, but hey, I just got an e-mail from my son in Tikrit, 
Iraq, so let me take a detour.

That barracks drill and spit and polish is a step on the path to 
becoming a soldier.  But there is a huge difference between that and a 
combat unit.

Take a look at the video that Fox News sent from the 3rd ID division 
reconnaissance in force probe into Baghdad.  The footage you see looks 
almost ho hum, business as usual.  But if you listen to the "chatter" -- 
  which is anything but -- on the combat push you can tell the pucker 
factor is pretty high.  My rough estimate was that the 1st Brigade 
combat team RIF took out the equivalent of an armored regiment and a 
division or so of irregulars with "technical vehicles" converted pickups 
with machine guns, mortars, or rocket launchers in the pickup bed, and 
sometimes added armor.

Now take some unit with spit shined boots and other chicken***t, and add 
it into the mix and you have an explosive mixture.  (I worried a bit 
about the asterisks above actually offending some combat veterans.  But 
they know the technical term, and if I used it some other people would 
be offended.)  The US Army is for the most part much smarter than that. 
  But right now we have more than enough veteran troops to mix the 
'cruits in as replacements and keep the ratios right so that combat is 
dealt with the way combat has to be dealt with when and where it occurs, 
and the 'cruits will become veterans almost without noticing.

Let me quote a previous message from my son about the Ramadan attacks:

It has been wonderfully boring for the past few months... until the 
first day of Ramadan.  Late that night things started to explode all 
over post. We were ordered to shelter and full battle rattle. I was on 
RTO so things got real hectic where I was. We reported two SALUTE 
reports back on explosions that happened near our manny (maintenance) 
areas on post. About an hour later an assault was made on our front 
gate. You know how that went: no US injuries, no Iraqi survivors. Then 
we were ordered to start pulling security all over the place... (My 
better judgment tells me its a good idea not to say anything about where.)

And about two hours after that we got reports that the explosions all 
over post were caused by a botched EOD job. The main explosion didn't 
trigger off like it was supposed to. So the smaller explosives started 
hurling s**t all over the place and some exploded on impact.  So far I 
haven't heard about any injures that day. That's been pretty much it. A 
lot of the Iraqis are happy we are here and we are starting to see a 
good future for this country. Well we just got some internet satellites 
up and running so things are getting better. Well anyway ... its been a 
boring 7 months.

> Well grant you that it depends on the DI.  I would think that a good DI
> would recognized when the shining of shoes won't help to make a better
> soldier.  However, that would probably exclude good DIs from being purists,
> but I can definitely see the an average DI could very well be a purist.

I don't know about Marine DIs.  I do know about Army DIs, and they do 
know that what they are teaching is something developed over centuries 
as a way to create effective combat capable soldiers.  It is much more 
effective to wash out 'cruits in training because they can't follow 
simple orders in a non-combat situation than to have to write to their 
mother about how bravely they died in battle.

There is something called doctrine. It is one of the most difficult 
things for military forces to develop and implement.  A reporter was 
recently embarassed because he questioned US casualty figures in Iraq. 
He realized that almost all of the dead were soldiers who died in 
combat.  No soldiers listed as wounded later died.  He won himself a 
long lecture from an expert in combat medicine.  This is a part of US 
military doctrine--wear combat armor, get the medics and doctors as 
close to the front as possible, medevac patients to rear area facilities 
by air as soon as possible, etc.  All devoted to ensuring that 
casualties know that if they can be "dusted off" (lifted out in a 
medical chopper) they will survive.  And a lot more training and 
doctrine devoted to fire supression and "owning" the battlefield as soon 
as possible so that the medevac teams can do their jobs.  (And to 
"preparing the battlefield" so the choppers are ready when needed among 
other things.)

Is all this "worth it"?  I think so.  There are three other kinds of 
military organizations out there.  Those that emulate US doctrine, and 
try to get as good at it as we are.  Those that look at US casualty 
ratios and understand that going head to head with the US military is 
crazy.  And those like Saddam who don't believe those numbers.  (I 
almost got into a discussion of which countries have doctrines that may 
be better in which situations.  But if you want to hear that, find a 
friend who will take you to an O-club or senior NCO club and let the 
vets talk your ear off.  To veteran NCOs and Officers, doctrine is vital 
compared to tactics or strategy.)


-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17  2:31                                                             ` Russ
@ 2003-11-17  3:04                                                               ` Chad R. Meiners
  2003-11-17 12:06                                                                 ` Marin David Condic
  2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
  1 sibling, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-17  3:04 UTC (permalink / raw)


"Russ" <18k11tm001@sneakemail.com> wrote in message
news:bebbba07.0311161831.bce38a5@posting.google.com...
> How do we get the word out about Ada? I don't know, but do I know that
> Ada is not the only superior technology that is being squandered due
> to ignorance.

This is my perception, too.  I learned Ada at my undergraduate university.
There was an informal survey of students about the computer science
department by one of the professors.  A result, that is interesting to from
the CLA point of view, is that a majority of the students appreciated being
taught Ada, first and other languages second.

In graduate school, I had found that my colleagues at not completely set in
their ways.  They will learn and a few expressed interest in the language.
Mostly, they do not have the time to rid themselves of their ignorance;
however, that has never stopped me from sending them a link to the pdf of
"Ada Distilled".

I have a feeling that if Ada were taught in more universities in the US, Ada
would experience a growth of popularity.  It is hard to go back to other
programming language after Ada because you start missing all of its
features.  Of course this just switches the question to "how do we get the
word out about Ada to educators" ;-|

-CRM





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

* Re: Clause "with and use"
  2003-11-16  0:02                                                                   ` Robert I. Eachus
  2003-11-16 10:41                                                                     ` Gautier Write-only
@ 2003-11-17  9:04                                                                     ` Dmitry A. Kazakov
  2003-11-17 14:38                                                                       ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-17  9:04 UTC (permalink / raw)


On Sat, 15 Nov 2003 19:02:34 -0500, "Robert I. Eachus"
<rieachus@comcast.net> wrote:

>No I look at the "with implies use" proposal and get a splitting 
>headache when thinking about how it could be worded.  Answer me just one 
>little problem, and I might think about it:
>
>use Foo; use Bar;
>package...
>
>Now if there is a package Foo and it contains a package Bar, and there 
>is a package Bar in the compilation environment, which one do you get if 
>any, and why?

Exactly the same Ada would do. The effect should be defined to be
literally same as for:

with Foo; use Foo; with Bar; use Bar;

So Foo.Bar cannot play any role here. Note that the proposal says
*implies* "with Bar;". After all Foo.Bar cannot be "with"-ed and thus
cannot be implied.

So far I see no problems with this proposal.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Clause "with and use"
  2003-11-14 14:51                                                           ` Warren W. Gay VE3WWG
@ 2003-11-17  9:22                                                             ` Dmitry A. Kazakov
  2003-11-17 16:42                                                               ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-17  9:22 UTC (permalink / raw)


On Fri, 14 Nov 2003 09:51:33 -0500, "Warren W. Gay VE3WWG"
<ve3wwg@cogeco.ca> wrote:

>Dmitry A. Kazakov wrote:
>> On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
>> <ve3wwg@cogeco.ca> wrote:
>> 
>>>I agree with this whole-heartedly for anything more than
>>>a simple "hello world" program. This keeps the name
>>>clashes to a minimum, and it prevents unintended
>>>references to functions/procedures in the wrong package.
>>>There may be some exceptions to this, but these should be
>>>kept to a bare minimum, IMHO.
>> 
>> Does anybody a statistics of name clashes in Ada?
>
>I don't have statistics to offer, but here is one that
>I regularly run into (and there are others like this
>one):
>
>USE ADA.STRINGS;
>
>If this is done in the wrong place (like at the top), then
>then the names Left and Right come into conflict (ie.
>Ada.Strings.Left). Left and Right are perfectly acceptable
>names to use in programming.
>
> >What percent is caused by the language design problems:
>...
> >I have a feeling that hatred towards "use" is largely caused by
> >outside reasons like A. and B.
>
>I think we have to remember that USE is primarily a language
>construct for convenience. It is strictly unnecessary for
>writing a program successfully. It only saves the program
>writer (and reader) from having to specify (or read) the entire
>hierarchical name.

After all Ada itself is just for convenience. We can still use
hexadecimal machine codes! (:-))

Let me propose a design principle for all standard and semi-standard
Ada libraries:

"Any program should remain compilable if all of them are "use"-d."
 
Scared? (:-))

>Misuse that convenience, and you'll experience problems.
>Conclusion: there is nothing wrong with the language
>feature, but only the application thereof. ;-)

There should be something wrong with the language, if the following is
illegal:

with Ada.Io_Exceptions;
package A is
   End_Error : exception renames Ada.Io_Exceptions.End_Error;
end A;

with Ada.Io_Exceptions;
package B is
   End_Error : exception renames Ada.Io_Exceptions.End_Error;
end B;

with A; use A;
with B; use B;
procedure Test1 is
begin
   null;
exception
   when End_Error =>
      -- Compile error! A.End_Error clashes with B.End_Error
      null;
end Test1;

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17  3:04                                                               ` Chad R. Meiners
@ 2003-11-17 12:06                                                                 ` Marin David Condic
  2003-11-17 12:49                                                                   ` Marius Amado Alves
  2003-11-17 20:17                                                                   ` Chad R. Meiners
  0 siblings, 2 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-17 12:06 UTC (permalink / raw)


I think they *know* about it, but they are not much interested in 
teaching a language that appears to be on the decline if not exactly 
"dead". They want to be able to prepare students for the kinds of things 
they'll likely see when they get out in industry and don't want to teach 
something that might be perceived as of purely academic interest with no 
practical use.

It would help if Ada had something *new* to offer or could become "The 
Language To Use" in some specific field of study. Illustration: Robotics 
or Mathematics. If Ada provided something new or aimed to somehow 
address & take over one of those fields, you might see some academic 
interest start to grow. Its a marketing decision that the keepers of Ada 
would have to agree to take. You'd do it by providing some kind of 
specific support for the field of interest and try to get some books & 
programs built to address it. Send out lots of free copies of books with 
software & promotional stuff saying "Ada is now aiming at being The New 
Fortran for mathematical programming..." or something like that.

At the risk of bringing up the subject of a library again, it *would* be 
an easy way to try to promote Ada to the mathematical crowd. Ada already 
has really good support for math and if it came with something more than 
  your average log and trig functions, it might really be able to target 
mathematicians with things they can't get elsewhere. Math is also easy 
to add in a portable way since it is capable of being rigorously defined 
much more easily than many other areas. Some heavy duty math 
capabilities, coupled with things Ada already has (tasking and 
distribution come to mind - what if Ada solved really big math problems 
in parallel very easily?) might be enough to start luring math 
researchers into using it.

MDC


Chad R. Meiners wrote:
> I have a feeling that if Ada were taught in more universities in the US, Ada
> would experience a growth of popularity.  It is hard to go back to other
> programming language after Ada because you start missing all of its
> features.  Of course this just switches the question to "how do we get the
> word out about Ada to educators" ;-|
> 
> -CRM
> 
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:06                                                                 ` Marin David Condic
@ 2003-11-17 12:49                                                                   ` Marius Amado Alves
  2003-11-17 12:56                                                                     ` Stephane Richard
                                                                                       ` (2 more replies)
  2003-11-17 20:17                                                                   ` Chad R. Meiners
  1 sibling, 3 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-17 12:49 UTC (permalink / raw)
  To: comp.lang.ada

On Mon, 2003-11-17 at 12:06, Marin David Condic wrote:
> ... "Ada is now aiming at being The New 
> Fortran for mathematical programming..."

I like that. I seem to remember that there was a PhD thesis with a lot
of math done in Ada recently (but I lost the reference). I must restate
also this: Ada On The Desktop = *reliable* desktop tools. And the XML
train (Bob Leif championed). I also like the name change idea someone
had a while ago. Let me suggest these: Xania, Xantia.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:49                                                                   ` Marius Amado Alves
@ 2003-11-17 12:56                                                                     ` Stephane Richard
  2003-11-17 13:14                                                                       ` Marius Amado Alves
  2003-11-17 17:31                                                                     ` Warren W. Gay VE3WWG
  2003-11-18 11:52                                                                     ` Marin David Condic
  2 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-17 12:56 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 782 bytes --]

Where was there a Naming ?

-- 
"To err is human.  To really screw up, you need C++!"

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com


"Marius Amado Alves" <amado.alves@netcabo.pt> wrote in message
news:mailman.13.1069073387.3110.comp.lang.ada@ada-france.org...
> On Mon, 2003-11-17 at 12:06, Marin David Condic wrote:
> > ... "Ada is now aiming at being The New
> > Fortran for mathematical programming..."
>
> I like that. I seem to remember that there was a PhD thesis with a lot
> of math done in Ada recently (but I lost the reference). I must restate
> also this: Ada On The Desktop = *reliable* desktop tools. And the XML
> train (Bob Leif championed). I also like the name change idea someone
> had a while ago. Let me suggest these: Xania, Xantia.
>





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:56                                                                     ` Stephane Richard
@ 2003-11-17 13:14                                                                       ` Marius Amado Alves
  0 siblings, 0 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-17 13:14 UTC (permalink / raw)
  To: comp.lang.ada

On Mon, 2003-11-17 at 12:56, Stephane Richard wrote:
> Where was there a Naming ?

I don't understand the question. You mean *who* suggested renaming Ada?
I don't recall. Search the list archive.




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

* Re: Clause "with and use"
  2003-11-17  9:04                                                                     ` Dmitry A. Kazakov
@ 2003-11-17 14:38                                                                       ` Robert I. Eachus
  2003-11-17 19:40                                                                         ` Russ
  2003-11-18  8:35                                                                         ` Dmitry A. Kazakov
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-17 14:38 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> Exactly the same Ada would do. The effect should be defined to be
> literally same as for:
> 
> with Foo; use Foo; with Bar; use Bar;
> 
> So Foo.Bar cannot play any role here. Note that the proposal says
> *implies* "with Bar;". After all Foo.Bar cannot be "with"-ed and thus
> cannot be implied.

And that is exactly the problem.  I am sorry you don't see it.  The with 
clause has an effect on visibility that includes the use clause. 
Current use clauses have a different scope.  So if I see:

with Foo; use Foo.Bar;

which is currently legal and meaningful, what does your proposal do?

The only choices I see are:

1) The new rule you are proposing makes lots of existing legal Ada 
programs illegal.

2) That use clauses in context clauses are interpreted specially.  First 
applying one set of visibility and name resolution rules, then if that 
fails silently applying another.

3) Retain the current meaning of a use clause in a context clause, and 
add a new context clause choice (I have been using "with and use") that 
has the new meaning.

To me option 1) is something that simply won't happen without a clear 
and convincing need, and case 2) is worse.  Do you have an option 4) 
that I am unaware of?  If not maybe you can now see why I think the 
choice is between some veriation of 3) and no change.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-17  9:22                                                             ` Dmitry A. Kazakov
@ 2003-11-17 16:42                                                               ` Warren W. Gay VE3WWG
  2003-11-18  8:49                                                                 ` Dmitry A. Kazakov
  0 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-17 16:42 UTC (permalink / raw)


Dmitry A. Kazakov wrote:
> On Fri, 14 Nov 2003 09:51:33 -0500, "Warren W. Gay VE3WWG"
> <ve3wwg@cogeco.ca> wrote:
>>Dmitry A. Kazakov wrote:
>>>On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
>>><ve3wwg@cogeco.ca> wrote:
...
>>I think we have to remember that USE is primarily a language
>>construct for convenience. It is strictly unnecessary for
>>writing a program successfully. It only saves the program
>>writer (and reader) from having to specify (or read) the entire
>>hierarchical name.
> 
> After all Ada itself is just for convenience. We can still use
> hexadecimal machine codes! (:-))

That's silly, but I see the smiley.

> Let me propose a design principle for all standard and semi-standard
> Ada libraries:
> 
> "Any program should remain compilable if all of them are "use"-d."
>  
> Scared? (:-))
> 
>>Misuse that convenience, and you'll experience problems.
>>Conclusion: there is nothing wrong with the language
>>feature, but only the application thereof. ;-)
> 
> There should be something wrong with the language, if the following is
> illegal:
> 
> with Ada.Io_Exceptions;
> package A is
>    End_Error : exception renames Ada.Io_Exceptions.End_Error;
> end A;
> 
> with Ada.Io_Exceptions;
> package B is
>    End_Error : exception renames Ada.Io_Exceptions.End_Error;
> end B;

This is more sillyness. When you USE both packages, you take
a hierarchical name space and flatten it. So what else would
you expect if there were clashes?

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17  2:31                                                             ` Russ
  2003-11-17  3:04                                                               ` Chad R. Meiners
@ 2003-11-17 17:29                                                               ` Warren W. Gay VE3WWG
  2003-11-17 18:01                                                                 ` Hyman Rosen
                                                                                   ` (2 more replies)
  1 sibling, 3 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-17 17:29 UTC (permalink / raw)


Ooooh boy! I should leave this alone, but can't:

Russ wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<JtPsb.8014$fB3.463946@news20.bellglobal.com>...
>>I think most of us would agree that Ada was ahead of its time
>>when it came out. By 1995, I believe the "market" had probably
>>already accepted C/C++ as the dominant language, largely due to
>>its widespread use in operating systems (UNIX + NT), and major
...
> How do we get the word out about Ada? I don't know, but do I know that
> Ada is not the only superior technology that is being squandered due
> to ignorance. Nuclear power is another classic example of a superior
> technology that is being squandered due to abysmal ignorance. If you
> have some spare time, go to my web pages on it at
> http://RussP.org/nucpower.htm , then click on "Some Amazing Facts
> about Nuclear Power". I bet you'll be surprised at what you discover.
> (OK, that ends my off-topic rant.)

Here is a quote from that site about Nuclear Waste:

<quote>
In a rationally planned and developed nuclear power program, spent
reactor fuel would be shipped to a reprocessing plant to remove
valuable components. The residue, containing nearly all of the
radioactivity produced in the reactor, is called high-level waste.
(In the US program, where spent fuel is simply potted and encased,
reprocessing is not currently done or even planned, but it is done
in other countries.) ...
</quote>

Note! "In the US program... reprocessing is not currently done or
even planned."  This is true AFAIK, in Canada also.

There are pools all over the place just gathering more nuclear
waste. They keep gathering it, leaving it to the next generation
to figure out what to do with it. I think this is criminal. What
active research has there been to deal with the problem? How much
do they spend each year in working on this problem? Where are the
results?

Don't be fooled. The next generations will be the ones stuck with
the problem and the economic costs of dealing with it.
</rant>

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:49                                                                   ` Marius Amado Alves
  2003-11-17 12:56                                                                     ` Stephane Richard
@ 2003-11-17 17:31                                                                     ` Warren W. Gay VE3WWG
  2003-11-18 11:52                                                                     ` Marin David Condic
  2 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-17 17:31 UTC (permalink / raw)


Marius Amado Alves wrote:

> On Mon, 2003-11-17 at 12:06, Marin David Condic wrote:
> 
>>... "Ada is now aiming at being The New 
>>Fortran for mathematical programming..."
> 
> I like that. I seem to remember that there was a PhD thesis with a lot
> of math done in Ada recently (but I lost the reference). I must restate
> also this: Ada On The Desktop = *reliable* desktop tools. And the XML
> train (Bob Leif championed). I also like the name change idea someone
> had a while ago. Let me suggest these: Xania, Xantia.

I'm not certain that FORTRAN has the correct associations
for today ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
@ 2003-11-17 18:01                                                                 ` Hyman Rosen
  2003-11-20 12:14                                                                   ` Georg Bauhaus
  2003-11-17 18:45                                                                 ` Jeffrey Carter
  2003-11-17 22:32                                                                 ` Russ
  2 siblings, 1 reply; 385+ messages in thread
From: Hyman Rosen @ 2003-11-17 18:01 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:
> There are pools all over the place just gathering more nuclear
> waste. They keep gathering it, leaving it to the next generation
> to figure out what to do with it. I think this is criminal. What
> active research has there been to deal with the problem? How much
> do they spend each year in working on this problem? Where are the
> results?

In fact, there are many plans for storage of nuclear waste
in safe facilities. But those plans are never implemented
because of deliberate obstructionism by anti-nuclear agents,
so that objections exactly like yours can continue to be
raised. For an anti-nuclear activist, there is no storage
facility that can ever be safe enough, there is no means of
transporting the waste to the facility that can ever be safe
enough, and there is no form of nuclear power that can ever
be safe enough.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
  2003-11-17 18:01                                                                 ` Hyman Rosen
@ 2003-11-17 18:45                                                                 ` Jeffrey Carter
  2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
                                                                                     ` (2 more replies)
  2003-11-17 22:32                                                                 ` Russ
  2 siblings, 3 replies; 385+ messages in thread
From: Jeffrey Carter @ 2003-11-17 18:45 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:

> There are pools all over the place just gathering more nuclear
> waste. They keep gathering it, leaving it to the next generation
> to figure out what to do with it. I think this is criminal. What
> active research has there been to deal with the problem? How much
> do they spend each year in working on this problem? Where are the
> results?
> 
> Don't be fooled. The next generations will be the ones stuck with
> the problem and the economic costs of dealing with it.

In the 1850s, distilling petroleum to make kerosene for lamps produced a 
volatile, highly flammable, undesirable waste product that was burned 
immediately because it was good for nothing. Today we call that waste 
product gasoline (or petrol) and use it to power our vehicles. What 
makes you think that nuclear waste is any different? We have no use for 
it today, but it may be very valuable in 100 years.

-- 
Jeff Carter
"If you think you got a nasty taunting this time,
you ain't heard nothing yet!"
Monty Python and the Holy Grail
23




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

* Re: Clause "with and use"
  2003-11-17 14:38                                                                       ` Robert I. Eachus
@ 2003-11-17 19:40                                                                         ` Russ
  2003-11-18 17:01                                                                           ` Robert I. Eachus
  2003-11-18  8:35                                                                         ` Dmitry A. Kazakov
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-17 19:40 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<UJ6dnbqzUrXhQCWiRVn-gQ@comcast.com>...
> Dmitry A. Kazakov wrote:
> 
> > Exactly the same Ada would do. The effect should be defined to be
> > literally same as for:
> > 
> > with Foo; use Foo; with Bar; use Bar;
> > 
> > So Foo.Bar cannot play any role here. Note that the proposal says
> > *implies* "with Bar;". After all Foo.Bar cannot be "with"-ed and thus
> > cannot be implied.
> 
> And that is exactly the problem.  I am sorry you don't see it.  The with 
> clause has an effect on visibility that includes the use clause. 
> Current use clauses have a different scope.  So if I see:
> 
> with Foo; use Foo.Bar;
> 
> which is currently legal and meaningful, what does your proposal do?

Not being an Ada programmer, I did not even know off the top of my
head that "with Foo.Bar" is illegal. I'm at work, and my Ada books are
at home, so let me ask a "newbie" question. Am I correct in assuming
that "use Foo.Bar" *must* be preceded by "with Foo"? More
specifically, am I correct in assuming that "use Foo.<anything>"
*must* be preceded by "with Foo"?

If so, then the solution seems trivial to me. Let any occurence of
"use Foo.<anything>" in the context section imply "with Foo". That is,
for any "use" in the context section, simply take its argument and
strip off the first "." and anything that follows it, then use that as
the argument to the implied "with".

If not, I guess I just made a fool of myself. Oh well.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 18:45                                                                 ` Jeffrey Carter
@ 2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
  2003-11-17 21:22                                                                     ` Stephane Richard
  2003-11-17 23:33                                                                   ` Dmytry Lavrov
  2003-11-18  7:38                                                                   ` Preben Randhol
  2 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-17 19:58 UTC (permalink / raw)


Jeffrey Carter wrote:
> Warren W. Gay VE3WWG wrote:
> 
>> There are pools all over the place just gathering more nuclear
>> waste. They keep gathering it, leaving it to the next generation
>> to figure out what to do with it. I think this is criminal. What
>> active research has there been to deal with the problem? How much
>> do they spend each year in working on this problem? Where are the
>> results?
>>
>> Don't be fooled. The next generations will be the ones stuck with
>> the problem and the economic costs of dealing with it.
> 
> 
> In the 1850s, distilling petroleum to make kerosene for lamps produced a 
> volatile, highly flammable, undesirable waste product that was burned 
> immediately because it was good for nothing. Today we call that waste 
> product gasoline (or petrol) and use it to power our vehicles. What 
> makes you think that nuclear waste is any different? We have no use for 
> it today, but it may be very valuable in 100 years.

Wishful thinking I think. ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:06                                                                 ` Marin David Condic
  2003-11-17 12:49                                                                   ` Marius Amado Alves
@ 2003-11-17 20:17                                                                   ` Chad R. Meiners
  2003-11-18 12:31                                                                     ` Marin David Condic
  1 sibling, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-17 20:17 UTC (permalink / raw)



"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FB8B9BC.5040505@noplace.com...
> I think they *know* about it, but they are not much interested in
> teaching a language that appears to be on the decline if not exactly
> "dead". They want to be able to prepare students for the kinds of things
> they'll likely see when they get out in industry and don't want to teach
> something that might be perceived as of purely academic interest with no
> practical use.

Well first of all the point of a computer science degree is not to prepare
you for industry.  If you want to be prep'ed for industrial use, go to a
technical college, it will suffice.  Now I am not saying that universities
do not prepare you for industry, but I am saying that university programs
have (and should have) concerns other than satisfying the demands of
industry.  In short, the point of a university degree is to develop your
mind; teaching you a trade is secondary.  I will admit that it is easy to
find professors that have lost touch with this objective.  Furthermore, I
will admit that collaboration between universities and industry can have a
very positive effect.  However, the fact remains that the stated goals of
universities are to discover truth and to develop minds.  (Can you tell that
I have had this argument before ;-)

That being said, I agree that the main reason computer science faculty
resist teaching Ada is that they believe it to be a dying language.
However, I believe that we have a good sellable argument for the language
with the following pedagogical reasons:  (This is off the top of my head.
Please feel free to add more to the list.)

1. Ada is subsetable.  Initial student will start out with a small but
workable subset of Ada.  As the student grows and develops so can the subset
of Ada.  When teaching new concepts (such as OO programming, or
multi-tasking programs) new features within Ada can be introduced and added
to the subset.

2. Ada compilers produce helpful and informative compile errors.  Ergo, it
is easier to spot and correct misunderstandings about programming and
software development and such detection usually happens earlier.

3. Ada is versatile.   Ada contains enough features to properly facilitate
any type of computer science course.

4. Ada is designed via the method of least surprise.  This allows the
professors to concentrate on programming issues as opposed to programming
language issues.

The problem is to convince the professors that the above benefits overweight
the benefits of using old lecture note about a language that they already
know.

Note that I don't think that universities should not teach C/C++ or any
other languages.  They should of course offer them as programming language
courses.  But also as has been expressed many times before in this
newsgroup, learning a second language is not nearly as difficult as learning
the first one.   Learning Ada as a first language really helps students
absorb programming concepts faster.  (These are my observations; I wish we
could do a study on this since such a conclusion would be wonderful press
for Ada ;-)





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

* Re: Way off topic was: Re: Clause "with and use"
  2003-11-17  2:34                                                                         ` Way off topic was: " Robert I. Eachus
@ 2003-11-17 21:12                                                                           ` Russ
  2003-11-17 21:29                                                                             ` Hyman Rosen
  2003-11-17 23:19                                                                             ` Wes Groleau
  0 siblings, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-17 21:12 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<aPWdneKOodc-riWiRVn-ig@comcast.com>...
> Chad R. Meiners wrote:
> 
> >>In bootcamp they force you to keep your
> >>shoes shiny and your uniform folded perfectly. Why? Because it
> >>establishes discipline. Do shiny shoes make you a more effective
> >>fighter? Of course not.
> > 
> > 
> > Well ....  I have noticed that people that have shiny shoes and perfectly
> > folded uniforms can take pride in this.  This pride helps self-esteem, which
> > improves the troops moral.  Troops with high moral are way more effective
> > than troops with low moral.
> > 
> > Note that my argument is rather holistic in that considers the effect in
> > whole environment.  Naturally, it does not always apply, and this is where
> > purists shall get unreasonable.
> 
> Totally off topic, but hey, I just got an e-mail from my son in Tikrit, 
> Iraq, so let me take a detour.
> 
> That barracks drill and spit and polish is a step on the path to 
> becoming a soldier.  But there is a huge difference between that and a 
> combat unit.

I think an email from a US military son in Tikrit justifies an OT
post. 8^) I wish him well, and I hope you get to see him soon. By the
way, I support him *and* his mission.

I understand the rationale behind military training, and I did not
mean to disparage it. I just think that, when imposed by a programming
language, it could put off many programmers.

I read a bestselling book several years ago called "The Myth of Male
Power" by Warren Farrell. I urge everyone to read it. It will "boggle"
your mind (whatever that means). One of the many topics discussed is
the rationale behind basic military training. The purpose of boot camp
is to strip the recruit of his individuality and impress on him that
he is now part of a group, to which he will pledge his very life. Only
after he is fully integrated into the group is his individuality
allowed to re-emerge. That's why they all get the same haircut and
uniform upon arrival and why they are told precisely how to fold their
underwear.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-17 21:22                                                                     ` Stephane Richard
  2003-11-18 18:00                                                                       ` Warren W. Gay VE3WWG
  2003-11-19 20:48                                                                       ` Dmytry Lavrov
  0 siblings, 2 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-17 21:22 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 449 bytes --]

"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote
>
> Wishful thinking I think. ;-)
> -- 
> Warren W. Gay VE3WWG
> http://home.cogeco.ca/~ve3wwg
>

Really now? :-)

And in the 60s they were still saying that man would never walk on the moon
;-).  Looks like wishful thinking, targetted properly, can go places.  No?
;-)

-- 
"To err is human.  To really screw up, you need C++!"

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com







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

* Re: Way off topic was: Re: Clause "with and use"
  2003-11-17 21:12                                                                           ` Russ
@ 2003-11-17 21:29                                                                             ` Hyman Rosen
  2003-11-17 23:28                                                                               ` Alexandre E. Kopilovitch
  2003-11-17 23:19                                                                             ` Wes Groleau
  1 sibling, 1 reply; 385+ messages in thread
From: Hyman Rosen @ 2003-11-17 21:29 UTC (permalink / raw)


Russ wrote:
 > The purpose of boot camp is to strip the recruit of his individuality
 > and impress on him that he is now part of a group, to which he will
 > pledge his very life.

This is somehow news?




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
  2003-11-17 18:01                                                                 ` Hyman Rosen
  2003-11-17 18:45                                                                 ` Jeffrey Carter
@ 2003-11-17 22:32                                                                 ` Russ
  2003-11-18 16:38                                                                   ` Robert I. Eachus
  2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
  2 siblings, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-17 22:32 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<Az7ub.3669$ZF1.458179@news20.bellglobal.com>...

> There are pools all over the place just gathering more nuclear
> waste. They keep gathering it, leaving it to the next generation
> to figure out what to do with it. I think this is criminal. What
> active research has there been to deal with the problem? How much
> do they spend each year in working on this problem? Where are the
> results?
> 
> Don't be fooled. The next generations will be the ones stuck with
> the problem and the economic costs of dealing with it.
> </rant>

I think you've been fooled, but you are far from alone on this one.
The quantities of waste generated by nuclear power are so miniscule
that nuclear power plants can store -- literally, right on site -- the
waste they generate for *decades*. Yes, those "little pools" have been
accumulating, but that means that's because the so-called
"environmentalists" have been blocking long-term storage by all the
underhanded legal and political means at their disposal. Spreading
ignorance is their primary weapon.

If you read my little article, you would have learned the following
fact. If the US went completely nuclear for the next 10,000 years, the
amount of land needed for waste disposal would be roughly the same as
what is currently needed for two weeks worth of coal ash. That's
accounting for the extra space needed for the massive containers and
the spacing between them. And please note that the ash is far from the
worst part of coal waste. The gaseous emissions kill an estimated
10,000 to 50,000 Americans each year, but the media never reports
those deaths.

Studies have found that properly stored nuclear waste might kill one
person every century or so (I can't remember the exact figure off
hand, but it's several orders of magnitude less than the corresponding
figure for coal).



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

* Re: Way off topic was: Re: Clause "with and use"
  2003-11-17 21:12                                                                           ` Russ
  2003-11-17 21:29                                                                             ` Hyman Rosen
@ 2003-11-17 23:19                                                                             ` Wes Groleau
  1 sibling, 0 replies; 385+ messages in thread
From: Wes Groleau @ 2003-11-17 23:19 UTC (permalink / raw)



> the rationale behind basic military training. The purpose of boot camp
> is to strip the recruit of his individuality and impress on him that
> he is now part of a group, to which he will pledge his very life. Only

A semi-funny story.  When I was in boot camp (Navy),
if we had been good that day, we were allowed to listen
to the radio from 16:30 to 17:00.  It was tuned to
one of those stations that plays a four-hour loop
over and over.  Consequently, the same line of the
same song was playing each time we turned it on:

      "You will never get out of here..."

-- 
Wes Groleau

    "A man with an experience is never
     at the mercy of a man with an argument."
                       -- Ron Allen




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

* Re: Way off topic was: Re: Clause "with and use"
  2003-11-17 21:29                                                                             ` Hyman Rosen
@ 2003-11-17 23:28                                                                               ` Alexandre E. Kopilovitch
  0 siblings, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-17 23:28 UTC (permalink / raw)
  To: comp.lang.ada

Hyman Rosen wrote:

>Russ wrote:
> > The purpose of boot camp is to strip the recruit of his individuality
> > and impress on him that he is now part of a group, to which he will
> > pledge his very life.
>
>This is somehow news?

Perhaps yes - here in comp.lang.ada -:)
For more elaborate exposition of this subject I'd recommend a good book
"Stilwell and the American Experience in China", by B.Tuchman .



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 18:45                                                                 ` Jeffrey Carter
  2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-17 23:33                                                                   ` Dmytry Lavrov
  2003-11-18  0:31                                                                     ` Ludovic Brenta
  2003-11-18  7:38                                                                   ` Preben Randhol
  2 siblings, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-17 23:33 UTC (permalink / raw)


Jeffrey Carter <spam@spam.com> wrote in message news:<oH8ub.4782$n56.638@newsread1.news.pas.earthlink.net>...
> Warren W. Gay VE3WWG wrote:
> 
> > There are pools all over the place just gathering more nuclear
> > waste. They keep gathering it, leaving it to the next generation
> > to figure out what to do with it. I think this is criminal. What
> > active research has there been to deal with the problem? How much
> > do they spend each year in working on this problem? Where are the
> > results?
> > 
> > Don't be fooled. The next generations will be the ones stuck with
> > the problem and the economic costs of dealing with it.
> 
> In the 1850s, distilling petroleum to make kerosene for lamps produced a 
> volatile, highly flammable, undesirable waste product that was burned 
> immediately because it was good for nothing. Today we call that waste 
> product gasoline (or petrol) and use it to power our vehicles. What 
> makes you think that nuclear waste is any different? We have no use for 
> it today, but it may be very valuable in 100 years.

100 years? Idiotism. Complete idiotism.

They _was_able_ to completely burn petrol without significant damage
to biosphere!For 100000 years or more technology of burning something
was avaliable!!!

For last 100 years we truing but can't do something with
radioactivity(say,with some gramms of waste) to remove
radioactivity(at least to uranium ore level it was),and so there's all
chances that for next 100 years it still be waste.


Some waste are spreaded,all chances that in next 200 years (if our
civilisation will surrivee),we will not have something for it,for next
100 years for sure!

It's absolutely inpossible to clean all Earth by some Z-Rays that will
remove radioctivity.
So we need to collect waste back,there's needed lots(to fill
dirt+dust+water+anything where will be waste) of small
robots(bio-robots?) that will collect radioactive atoms.They can't
know if atom is raddioactive or not with geiger counter,because atom
emmit particles only several times.Need to  measure weight and look
into table of stable isotops.Also(and that's main problem ;-) all
robots needed to move to some region where we want to put collected
waste.There's needed atom sised robots to conglomentrate into
bigger,to conglomentrate to big enought to move to  that location.It's
seems to be more impossible than,for example,transferring alive human
via radio.



Pertrol wasn't nearly as hazarous as nuclair waste are.How someone can
even compare that things?

If we will spread all waste,it will be more bad than nuclear war
because all plutonium for bombs was produced in plants and waste have
bigger radioactivity than result of explosion.

Evein if there's small chance that we will not become able to do
something with it for 200 years ,that chaces should be taken into
account.

Today's price of nuclear energy are extremely big because we can't do
something with waste except waiting while radioactivity expires to
level of uranium was used to produce that waste.It's throusands of
years. We need to CAREFULLY mantain waste for all that time,not to
drop it somewhere.

Also,there  are really big chance that our civilisation could fall for
some time:all history shows that.There could be total destruction via
nuclear weapons.Bot some small chance left that only small portions
weapons will be used.When we have waste and plants,there's NO chances
to survive.


Why not think that tomorrow we will have better energy-saving
technologies?
And bio-fito-electrical plants...
we need clean Earth,or we will die. With or without nuclair
plants,today strategy of doing things will turn our world into hell.

Regards,

Dmytry Lavrov.
p.s.

It's  TOMORROW prices _may_ become low,TODAY they are extremely
high!!!!!!!



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

* Re: Clause "with and use"
  2003-11-04 16:08                         ` Marius Amado Alves
  2003-11-06 10:10                           ` Preben Randhol
@ 2003-11-18  0:07                           ` Brian Gaffney
  2003-11-18  1:25                             ` Stephane Richard
  2003-11-18  8:50                             ` Marius Amado Alves
  1 sibling, 2 replies; 385+ messages in thread
From: Brian Gaffney @ 2003-11-18  0:07 UTC (permalink / raw)


"Marius Amado Alves" <amado.alves@netcabo.pt> wrote in message
news:mailman.274.1067962159.25614.comp.lang.ada@ada-france.org...
> How about
>
>   with ...; use idem;
>
Now where is that darned Idem.ads?





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 23:33                                                                   ` Dmytry Lavrov
@ 2003-11-18  0:31                                                                     ` Ludovic Brenta
  2003-11-18 11:49                                                                       ` Dmytry Lavrov
  2003-11-18 18:06                                                                       ` Warren W. Gay VE3WWG
  0 siblings, 2 replies; 385+ messages in thread
From: Ludovic Brenta @ 2003-11-18  0:31 UTC (permalink / raw)


dmytrylavrov@fsmail.net (Dmytry Lavrov) writes:

<long rant/>

According to COGEMA, the French agency for nuclear fuel and waste, a
nuclear plant uses fuel that consists, for 100 kg of fuel, of:

93 kg non-radioactive Uranium 238
 7 kg radioactive Uranium 235

After 4 years, part of the fuel load is replaced in each reactor.  For
100 kg of fuel, the outcome is this:

93 kg non-radioactive Uranium 238
 1 kg radioactive Uranium 235
 1 kg radioactive Plutonium 239
 3 kg other wastes

2 kg are missing: they've been turned into energy (e=mc2).

The only question is: what do we do with the 1 kg of plutonium and 3
kg of other wastes?  First, the various wastes are sorted according to
their half-life.  The half-life is the time it takes for half of the
material to degrade (through nuclear fission) into other products.
The longer the half-life, the bigger the problem.  Wastes with a short
half-life (milliseconds, seconds, even a few days or months) are not a
big problem and can be treated on-site.  Now plutonium is a different
matter, because its half-life is 26 thousand years.

- it is possible to reuse the plutonium, mixed with uranium, in some
  existing power plants to produce energy.  Thus, we do not produce
  ever more plutonium but "burn" it as we go.  At the very least, this
  reduces the net amount of plutonium produced.  For example, France
  burns plutonium in 900 MW reactors, but not in 1300 MW reactors.

- it is possible to store it and wait for 26 thousand years until half
  the plutonium has turned into other (possibly radioactive) elements.

- it is possible to use it in nuclear weapons.  This is akin to
  storage, until (God forbid) such time as the weapons are used.

My opinion is this: we should not trust our children for 26 thousand
years (by which time only half the problem will be solved anyway).  We
cannot even trust ourselves for a couple of decades without going to
war or doing something stupid.  We must treat this plutonium and turn
it into something harmless.  It is not an urgent problem for now, but
will become one around 2040 when most of the existing reactors reach
their end of life (the existing reactors with their infrastructure are
absolutely required for treatment of nuclear waste; nobody would
accept building a treatment plant where nothing "nuclear" exists yet).

-- 
Ludovic Brenta.



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

* Re: Clause "with and use"
  2003-11-18  0:07                           ` Brian Gaffney
@ 2003-11-18  1:25                             ` Stephane Richard
  2003-11-18  8:50                             ` Marius Amado Alves
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-18  1:25 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 514 bytes --]


"Brian Gaffney" <brian.gaffney@myrealbox.com> wrote in message
news:bpbnq4$ccl$1@news.wplus.net...
> "Marius Amado Alves" <amado.alves@netcabo.pt> wrote in message
> news:mailman.274.1067962159.25614.comp.lang.ada@ada-france.org...
> > How about
> >
> >   with ...; use idem;
> >
> Now where is that darned Idem.ads?
>
>

I'm not sure where it is....but when you find it, you should probably find
the DWIM (Do What I Mean) procedure ;-)


-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 18:45                                                                 ` Jeffrey Carter
  2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
  2003-11-17 23:33                                                                   ` Dmytry Lavrov
@ 2003-11-18  7:38                                                                   ` Preben Randhol
  2003-11-18  7:42                                                                     ` Preben Randhol
  2003-11-18  7:53                                                                     ` Preben Randhol
  2 siblings, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-18  7:38 UTC (permalink / raw)


On 2003-11-17, Jeffrey Carter <spam@spam.com> wrote:
>
> In the 1850s, distilling petroleum to make kerosene for lamps produced a 
> volatile, highly flammable, undesirable waste product that was burned 
> immediately because it was good for nothing. Today we call that waste 
> product gasoline (or petrol) and use it to power our vehicles. What 
> makes you think that nuclear waste is any different? We have no use for 
> it today, but it may be very valuable in 100 years.
>

Well, I don't know I wouldn't think so though. However, I'm more
concerned about the rusting heap of nuclear driven submarines and
u-boats in North of Russia. Last attempt to move one of them ended in it
sinking. 

And yesterday an attempt was done to steal the nuclear fuelcells (not
sure about the name in English) of two lighthouses in northen Russia.
The fuelcells were dumped most probably because of the weight (500kg
with 15kg Strontium) and that the radiation is leathal
and the theives probably exposed themselves to leathal dosage. There is
now a 500 m security radius around where the cells were dumped due to
the radiation.  However, in the hands of more expert terrorists such
thefts could possibly be done and then used to make "dirty" bombs. There
are still 128 nuclear driven lighthouses in the Kola penincula. 


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18  7:38                                                                   ` Preben Randhol
@ 2003-11-18  7:42                                                                     ` Preben Randhol
  2003-11-18  7:53                                                                     ` Preben Randhol
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-18  7:42 UTC (permalink / raw)


On 2003-11-18, Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote:
> Well, I don't know I wouldn't think so though. However, I'm more
> concerned about the rusting heap of nuclear driven submarines and
> u-boats in North of Russia. Last attempt to move one of them ended in it

boats (not u-boats as they are pretty much submarines :-) )

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18  7:38                                                                   ` Preben Randhol
  2003-11-18  7:42                                                                     ` Preben Randhol
@ 2003-11-18  7:53                                                                     ` Preben Randhol
  2003-11-18 16:06                                                                       ` Dmytry Lavrov
  1 sibling, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-18  7:53 UTC (permalink / raw)


On 2003-11-18, Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote:
> On 2003-11-17, Jeffrey Carter <spam@spam.com> wrote:
>>
>> In the 1850s, distilling petroleum to make kerosene for lamps produced a 
>> volatile, highly flammable, undesirable waste product that was burned 
>> immediately because it was good for nothing. Today we call that waste 
>> product gasoline (or petrol) and use it to power our vehicles. What 
>> makes you think that nuclear waste is any different? We have no use for 
>> it today, but it may be very valuable in 100 years.
>>
>
> Well, I don't know I wouldn't think so though. However, I'm more
> concerned about the rusting heap of nuclear driven submarines and
> u-boats in North of Russia. Last attempt to move one of them ended in it
> sinking. 
>
> And yesterday an attempt was done to steal the nuclear fuelcells (not
> sure about the name in English) of two lighthouses in northen Russia.
> The fuelcells were dumped most probably because of the weight (500kg
> with 15kg Strontium) and that the radiation is leathal
> and the theives probably exposed themselves to leathal dosage. There is
> now a 500 m security radius around where the cells were dumped due to
> the radiation.  However, in the hands of more expert terrorists such
> thefts could possibly be done and then used to make "dirty" bombs. There
> are still 128 nuclear driven lighthouses in the Kola penincula. 

I found an account in English here:

http://www.bellona.no/en/international/russia/navy/northern_fleet/incidents/31767.html

and here is the situation about nuclear waste discribed:

http://www.bellona.no/en/international/russia/waste-mngment/index.html

http://www.bellona.no/en/international/russia/navy/northern_fleet/index.html

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-17 14:38                                                                       ` Robert I. Eachus
  2003-11-17 19:40                                                                         ` Russ
@ 2003-11-18  8:35                                                                         ` Dmitry A. Kazakov
  1 sibling, 0 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-18  8:35 UTC (permalink / raw)


On Mon, 17 Nov 2003 09:38:50 -0500, "Robert I. Eachus"
<rieachus@comcast.net> wrote:

>Dmitry A. Kazakov wrote:
>
>> Exactly the same Ada would do. The effect should be defined to be
>> literally same as for:
>> 
>> with Foo; use Foo; with Bar; use Bar;
>> 
>> So Foo.Bar cannot play any role here. Note that the proposal says
>> *implies* "with Bar;". After all Foo.Bar cannot be "with"-ed and thus
>> cannot be implied.
>
>And that is exactly the problem.  I am sorry you don't see it.  The with 
>clause has an effect on visibility that includes the use clause. 
>Current use clauses have a different scope.  So if I see:
>
>with Foo; use Foo.Bar;
>
>which is currently legal and meaningful, what does your proposal do?
>
>The only choices I see are:
>
>1) The new rule you are proposing makes lots of existing legal Ada 
>programs illegal.
>
>2) That use clauses in context clauses are interpreted specially.  First 
>applying one set of visibility and name resolution rules, then if that 
>fails silently applying another.
>
>3) Retain the current meaning of a use clause in a context clause, and 
>add a new context clause choice (I have been using "with and use") that 
>has the new meaning.
>
>To me option 1) is something that simply won't happen without a clear 
>and convincing need, and case 2) is worse.  Do you have an option 4) 
>that I am unaware of?  If not maybe you can now see why I think the 
>choice is between some veriation of 3) and no change.

2. However I would not call it another set of resolution rules. At
least it is not much different from:

with Foo.Bar;

The compiler should first "imply" with Foo; and only then figure out
what Foo.Bar might be. In the case

with Foo; use Foo.Bar;

Foo.Bar is not a library unit, so it cannot be implied. Formally we
could appropriately extend 10.1.2(6). It refers to "library_item".
Thus it cannot be applied to Foo.Bar, which is not a library item. A
bit tricky, I should admit, but well in ARM style. (:-))

-----------
Well, option 4, scratching my scalp ... we could allow all packages to
be "with"-ed:

package A is
   package B is ...
   end B;
   with B; -- This is OK and does nothing
end A;

So:

with Foo.Bar; -- This would be legal

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Clause "with and use"
  2003-11-17 16:42                                                               ` Warren W. Gay VE3WWG
@ 2003-11-18  8:49                                                                 ` Dmitry A. Kazakov
  2003-11-19 17:46                                                                   ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-18  8:49 UTC (permalink / raw)


On Mon, 17 Nov 2003 11:42:45 -0500, "Warren W. Gay VE3WWG"
<ve3wwg@cogeco.ca> wrote:

>Dmitry A. Kazakov wrote:
>> On Fri, 14 Nov 2003 09:51:33 -0500, "Warren W. Gay VE3WWG"
>> <ve3wwg@cogeco.ca> wrote:
>>>Dmitry A. Kazakov wrote:
>>>>On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
>>>><ve3wwg@cogeco.ca> wrote:
>...
>> There should be something wrong with the language, if the following is
>> illegal:
>> 
>> with Ada.Io_Exceptions;
>> package A is
>>    End_Error : exception renames Ada.Io_Exceptions.End_Error;
>> end A;
>> 
>> with Ada.Io_Exceptions;
>> package B is
>>    End_Error : exception renames Ada.Io_Exceptions.End_Error;
>> end B;
>
>This is more sillyness. When you USE both packages, you take
>a hierarchical name space and flatten it. So what else would
>you expect if there were clashes?

I expect renaming be renaming. So A.End_Error and B.End_Error should
not clash in any context. Compare it with :

package A is
   X : Integer;
end A;

with A;
package B renames A;

with A; use A;
with B; use B;
procedure Test is
begin
   X := 1; -- This is OK
end Test;

This example illustrates the fact that package renaming *is* a
renaming.

The example with End_Error shows that object renaming is something
very different.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Clause "with and use"
  2003-11-18  0:07                           ` Brian Gaffney
  2003-11-18  1:25                             ` Stephane Richard
@ 2003-11-18  8:50                             ` Marius Amado Alves
  2003-11-18 10:43                               ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-18  8:50 UTC (permalink / raw)
  To: Brian Gaffney; +Cc: comp.lang.ada

On Tue, 2003-11-18 at 00:07, Brian Gaffney wrote:
> "Marius Amado Alves" <amado.alves@netcabo.pt> wrote:
> > How about
> >
> >   with ...; use idem;
> >
> Now where is that darned Idem.ads?

I know :-)
That's why I'd prefer @.





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

* Re: Clause "with and use"
  2003-11-18  8:50                             ` Marius Amado Alves
@ 2003-11-18 10:43                               ` Preben Randhol
  2003-11-18 10:58                                 ` Marius Amado Alves
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-18 10:43 UTC (permalink / raw)


On 2003-11-18, Marius Amado Alves <amado.alves@netcabo.pt> wrote:
> On Tue, 2003-11-18 at 00:07, Brian Gaffney wrote:
>> "Marius Amado Alves" <amado.alves@netcabo.pt> wrote:
>> > How about
>> >
>> >   with ...; use idem;
>> >
>> Now where is that darned Idem.ads?
>
> I know :-)
> That's why I'd prefer @.

with Gtk.Arguments;        use @;
with Gtk.Button;           use @;
with Gtk.Handlers;

or

with Gtk.Arguments;
with Gtk.Button;
with Gtk.Handlers;
use @;
use @;

no thanks.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Clause "with and use"
  2003-11-18 10:43                               ` Preben Randhol
@ 2003-11-18 10:58                                 ` Marius Amado Alves
  2003-11-18 11:33                                   ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-18 10:58 UTC (permalink / raw)
  To: comp.lang.ada

On Tue, 2003-11-18 at 10:43, Preben Randhol wrote:
> with Gtk.Arguments;        use @;
> with Gtk.Button;           use @;
> with Gtk.Handlers;

I like it.

> with Gtk.Arguments;
> with Gtk.Button;
> with Gtk.Handlers;
> use @;
> use @;

That would be equivalent to

with Gtk.Arguments;
with Gtk.Button;
with Gtk.Handlers;
use Gtk.Handlers;
use Gtk.Handlers;

which I'm not sure would even compile.

But as I said before this is strictly 'academic'. I'm quite happy with
Ada 95 as it is now with respect to this.





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

* Re: Clause "with and use"
  2003-11-18 10:58                                 ` Marius Amado Alves
@ 2003-11-18 11:33                                   ` Preben Randhol
  2003-11-18 12:11                                     ` Marius Amado Alves
  2003-11-18 12:33                                     ` Stephane Richard
  0 siblings, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-18 11:33 UTC (permalink / raw)


On 2003-11-18, Marius Amado Alves <amado.alves@netcabo.pt> wrote:
> On Tue, 2003-11-18 at 10:43, Preben Randhol wrote:
>> with Gtk.Arguments;        use @;
>> with Gtk.Button;           use @;
>> with Gtk.Handlers;
>
> I like it.
>
>> with Gtk.Arguments;
>> with Gtk.Button;
>> with Gtk.Handlers;
>> use @;
>> use @;
>
> That would be equivalent to
>
> with Gtk.Arguments;
> with Gtk.Button;
> with Gtk.Handlers;
> use Gtk.Handlers;
> use Gtk.Handlers;
>
> which I'm not sure would even compile.

My point is that since:

   with Something;
   use Something;
 
are two differnet sentences and the last can appear anywhere the whole
idem or @ is just silly. Besides all it saves is keystrokes, and that is
....

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18  0:31                                                                     ` Ludovic Brenta
@ 2003-11-18 11:49                                                                       ` Dmytry Lavrov
  2003-11-18 18:06                                                                       ` Warren W. Gay VE3WWG
  1 sibling, 0 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-18 11:49 UTC (permalink / raw)


Ludovic Brenta <ludovic.brenta@insalien.org> wrote in message news:<m34qx2zfed.fsf@insalien.org>...
> dmytrylavrov@fsmail.net (Dmytry Lavrov) writes:
> 
> <long rant/>
> 
> According to COGEMA, the French agency for nuclear fuel and waste, a
> nuclear plant uses fuel that consists, for 100 kg of fuel, of:
> 
> 93 kg non-radioactive Uranium 238

Will not trust someone who saying that u-238 is not radioactive.Not
very radioactive.It's principial because it used as mass(instead of
lead) in non-nuclear weapons.Actually,i think that lead is toxic too.

>  7 kg radioactive Uranium 235
> 
> After 4 years, part of the fuel load is replaced in each reactor.  For
> 100 kg of fuel, the outcome is this:
> 
> 93 kg non-radioactive Uranium 238
>  1 kg radioactive Uranium 235
>  1 kg radioactive Plutonium 239
>  3 kg other wastes
> 
> 2 kg are missing: they've been turned into energy (e=mc2).
> 
> The only question is: what do we do with the 1 kg of plutonium and 3
> kg of other wastes?  First, the various wastes are sorted according to
> their half-life.  The half-life is the time it takes for half of the
> material to degrade (through nuclear fission) into other products.
> The longer the half-life, the bigger the problem.

Not so simple.
1:The bigger half-life,the lower radioactivity.
2:After emission of something, nuclei could become other radioactive
element.
(for example If we have some pure u-238,it's initially not as
radioactive as in nature,but radioactivity INCREASES with time,for
many years).

There's no single half-life for other wastes.It's takes looong time to
rearch level of initial 100 kg.Throusands of years even without
plutonium.

>  Wastes with a short
> half-life (milliseconds, seconds, even a few days or months) are not a
> big problem and can be treated on-site.  Now plutonium is a different
> matter, because its half-life is 26 thousand years.

even 100 years is also big enought to make "other wastes" a
problem.Price of mantaining pool with wastes for 100 years+price of
rectifying that waste +price of mantaining part of that waste...
Nuclair plants now as cheap as other power plants.Without storage
price.
They are as cheap as now claiming _only_ if we will simply spread
wastes.

> 
> - it is possible to reuse the plutonium, mixed with uranium, in some
>   existing power plants to produce energy.  Thus, we do not produce
>   ever more plutonium but "burn" it as we go.  At the very least, this
>   reduces the net amount of plutonium produced.  For example, France
>   burns plutonium in 900 MW reactors, but not in 1300 MW reactors.
> 
> - it is possible to store it and wait for 26 thousand years until half
>   the plutonium has turned into other (possibly radioactive) elements.
> 
> - it is possible to use it in nuclear weapons.  This is akin to
>   storage, until (God forbid) such time as the weapons are used.

Really,all "other wastes" many times more radioactive(at least 3
times) than result of using that bombs.Why you so worry about nuclear
war and don't  worry about that waste?

> 
> My opinion is this: we should not trust our children for 26 thousand
> years (by which time only half the problem will be solved anyway).  We
> cannot even trust ourselves for a couple of decades without going to
> war or doing something stupid.

For couple of decades,or hungreds of years,plutonium IS NOT a biggest
problem anyway,other wastes is a problem,and there's nothing to do
with it!
Only after several throusands of years plutonium becomes biggest
problem,and remains big problem for long time.

>  We must treat this plutonium and turn
> it into something harmless.  It is not an urgent problem for now, but
> will become one around 2040 when most of the existing reactors reach
> their end of life (the existing reactors with their infrastructure are
> absolutely required for treatment of nuclear waste; nobody would
> accept building a treatment plant where nothing "nuclear" exists yet).


3kg "other wastes"...hmm..
when Chernobil exploded,almost all radioactivity was from that
so-called "other wastes"
You can assemble fuel yourself without any problems and too much dose.
You can build plutonium bomb without any dose(plutonium emmits only
alfa-particles).
And once you are near to "old used fuel",you will expose lethal dose
quite fast.


We will have at least many small nuclear wars in future,surely.And
that because of this f@#$^ power plants used in many unstable
countries!

First time military nuclear power plant was claimed as civil in
USSR.And after it,all newly build military plants was called civil
anywhere.At least in USSR,there's no really civil plants,plutonium
from all plants could be used in bombs,and that was initial project.
Everyone like to name military things civil,big countries forbid small
country to build military plants.But they can build "civil" plants.

Some part waste always spreaded.We can't do something with that waste
now and probably for many hungreds of years we will not become able to
do something.
As our great scientist Sacharov(he researched russian H-bomb
independently) said,if we will spread some radioactivity as result of
test of bombs on all earth,small precent but many peoples will die in
next hungreds of years due to slighty increased probablity of
cancer.Throusands of peoples per bomb.Plutonium bomb produces 6kg or
less of wastes. It's quite inpossible to mantain our plants so
carefully that  there's no leaks.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 12:49                                                                   ` Marius Amado Alves
  2003-11-17 12:56                                                                     ` Stephane Richard
  2003-11-17 17:31                                                                     ` Warren W. Gay VE3WWG
@ 2003-11-18 11:52                                                                     ` Marin David Condic
  2 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-18 11:52 UTC (permalink / raw)


Given the lack of resources and the fact that it is a mistake to try to 
be all things to all people, I'd suggest not trying to address too many 
problem domains via anything in the standard. Math is nice because it 
can be well specified in a standard, portable and stable for many years. 
Something like XML would best be addressed by a library outside of the 
standard. (But from what we've seen, the vendors have little to no 
interest in a library, so that's problematic.) A standard GUI would be a 
good thing as well, but again, the place for that is a library.

As for a name change - I don't think that would fool anyone. If you came 
up with a new language that had the basic capabilities of Ada, but did 
it in a different way, a name change would make sense. But if the syntax 
& semantics remain basically what we have now, changing the name 
wouldn't help much. Better to keep the existing name and try to do 
something to change the perception in the marketplace. "Its not your 
father's Oldsmobile..." or "Its not just for breakfast anymore..."

Basically, Ada needs to come up with some new angle that makes it "New 
and Improved" - some interesting new capability that makes it attractive 
to a segment of the market. Then it needs to get out there and sell 
itself to that segment through some visible promotion effort. But I have 
every faith that the vendors and the ARG will basically maintain the 
status quo and not much will happen to change the general trend.

MDC


Marius Amado Alves wrote:
> 
> I like that. I seem to remember that there was a PhD thesis with a lot
> of math done in Ada recently (but I lost the reference). I must restate
> also this: Ada On The Desktop = *reliable* desktop tools. And the XML
> train (Bob Leif championed). I also like the name change idea someone
> had a while ago. Let me suggest these: Xania, Xantia.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-18 11:33                                   ` Preben Randhol
@ 2003-11-18 12:11                                     ` Marius Amado Alves
  2003-11-18 13:46                                       ` Preben Randhol
  2003-11-20  3:53                                       ` Brian Gaffney
  2003-11-18 12:33                                     ` Stephane Richard
  1 sibling, 2 replies; 385+ messages in thread
From: Marius Amado Alves @ 2003-11-18 12:11 UTC (permalink / raw)
  To: comp.lang.ada

On Tue, 2003-11-18 at 11:33, Preben Randhol wrote:
> My point is that since:
> 
>    with Something;
>    use Something;
>  
> are two differnet sentences and the last can appear anywhere the whole
> idem or @ is just silly. Besides all it saves is keystrokes, and that is
> ....

I don't count keystrokes. My argument is for readability. I actually
find

with Gtk.Arguments;        use @;
with Gtk.Button;           use @;
with Gtk.Handlers;

more readable than the canonical form. And more pleasing, which can also
be a quality factor. Natural language has lots of pronouns for good
reason. And hey I just found motivation for the symbol choice: @ = a =
anaphoric pronoun :-) In the canonical form you must read 2 identifiers
to verify that they are equal. The pronoun has an immediate reading.
It's more communicative, more lingual. Curiously enough when I first
suggested "use @" I was kind of kidding--it was your very example that
made me realise it is actually more readable.





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-17 20:17                                                                   ` Chad R. Meiners
@ 2003-11-18 12:31                                                                     ` Marin David Condic
  2003-11-18 13:19                                                                       ` Stephane Richard
  2003-11-18 17:11                                                                       ` Chad R. Meiners
  0 siblings, 2 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-18 12:31 UTC (permalink / raw)


While I agree wholeheartedly with your belief in what a University ought 
to be about, there is often a big difference between what ought to be 
and what is. Too many university professors these days would happily 
quote Pontius Pilot: "Truth? What is Truth?".

That said, I don't think that your arguments - while very well founded - 
are likely to gain traction on their own. There is a need to change the 
perception that Ada is a dying language before profs (or anyone else, 
for that matter) are going to regain any interest in using it. They are 
likely to look at your arguments and respond that these same qualities 
are available to a greater or lesser degree in other languages that are 
*new* and *going somewhere*. Ada has to offer them something fresh and 
new or they won't want to tie their careers or those of their students 
to a technology that is perceived as being on the way out.

MDC

Chad R. Meiners wrote:
> 
> Well first of all the point of a computer science degree is not to prepare
> you for industry.  If you want to be prep'ed for industrial use, go to a
> technical college, it will suffice.  Now I am not saying that universities
> do not prepare you for industry, but I am saying that university programs
> have (and should have) concerns other than satisfying the demands of
> industry.  In short, the point of a university degree is to develop your
> mind; teaching you a trade is secondary.  I will admit that it is easy to
> find professors that have lost touch with this objective.  Furthermore, I
> will admit that collaboration between universities and industry can have a
> very positive effect.  However, the fact remains that the stated goals of
> universities are to discover truth and to develop minds.  (Can you tell that
> I have had this argument before ;-)
> 
> That being said, I agree that the main reason computer science faculty
> resist teaching Ada is that they believe it to be a dying language.
> However, I believe that we have a good sellable argument for the language
> with the following pedagogical reasons:  (This is off the top of my head.
> Please feel free to add more to the list.)
> 
> 1. Ada is subsetable.  Initial student will start out with a small but
> workable subset of Ada.  As the student grows and develops so can the subset
> of Ada.  When teaching new concepts (such as OO programming, or
> multi-tasking programs) new features within Ada can be introduced and added
> to the subset.
> 
> 2. Ada compilers produce helpful and informative compile errors.  Ergo, it
> is easier to spot and correct misunderstandings about programming and
> software development and such detection usually happens earlier.
> 
> 3. Ada is versatile.   Ada contains enough features to properly facilitate
> any type of computer science course.
> 
> 4. Ada is designed via the method of least surprise.  This allows the
> professors to concentrate on programming issues as opposed to programming
> language issues.
> 
> The problem is to convince the professors that the above benefits overweight
> the benefits of using old lecture note about a language that they already
> know.
> 
> Note that I don't think that universities should not teach C/C++ or any
> other languages.  They should of course offer them as programming language
> courses.  But also as has been expressed many times before in this
> newsgroup, learning a second language is not nearly as difficult as learning
> the first one.   Learning Ada as a first language really helps students
> absorb programming concepts faster.  (These are my observations; I wish we
> could do a study on this since such a conclusion would be wonderful press
> for Ada ;-)
> 
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Clause "with and use"
  2003-11-18 11:33                                   ` Preben Randhol
  2003-11-18 12:11                                     ` Marius Amado Alves
@ 2003-11-18 12:33                                     ` Stephane Richard
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-18 12:33 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 359 bytes --]

"Preben Randhol" <randhol+valid_for_reply_from_news@pvv.org> wrote in
message > are two
> idem or @ is just silly. Besides all it saves is keystrokes, and that is
> ....
>
> -- 

And I quote:

> "Saving keystrokes is the job of the text editor, not the programming
>  language."

:-)
-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com







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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 12:31                                                                     ` Marin David Condic
@ 2003-11-18 13:19                                                                       ` Stephane Richard
  2003-11-18 17:38                                                                         ` Marin David Condic
  2003-11-18 17:11                                                                       ` Chad R. Meiners
  1 sibling, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-18 13:19 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2598 bytes --]



"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FBA1118.4060105@noplace.com...
> While I agree wholeheartedly with your belief in what a University ought
> to be about, there is often a big difference between what ought to be
> and what is. Too many university professors these days would happily
> quote Pontius Pilot: "Truth? What is Truth?".
>
> That said, I don't think that your arguments - while very well founded -
> are likely to gain traction on their own. There is a need to change the
> perception that Ada is a dying language before profs (or anyone else,
> for that matter) are going to regain any interest in using it. They are
> likely to look at your arguments and respond that these same qualities
> are available to a greater or lesser degree in other languages that are
> *new* and *going somewhere*. Ada has to offer them something fresh and
> new or they won't want to tie their careers or those of their students
> to a technology that is perceived as being on the way out.
>
> MDC
>

I think on of the main problems also is that Ada is not perceived as a
General Purpose language.  People still think it's a millitary language (i'm
not talking Ada savy, but the common programmer that hasn't been thought Ada
and suddenly learnes about it.   It's a realtime embedded development
language and they don't quite see it as a language to develop the next
Office suite in.  They somehow think it's out of their league or something.

They think it's a language for Engineers because of all the engineering
principles that relate to Ada. Since they took courses in programming, not
engineering (at least as far as C++, Delphi, VB programmers today) I don't
think it's the language they don't want to use, I think it's the software
engineering concepts they don't want to learn.  Either that or they think
they'll need to learn 2 things before they can "proficiently" use Ada.
Although not far from the truth (based on my own learning experience), they
don't see that what they'll learn when learning Ada can also apply to the
other languages they might use.

OF course, before the GPS (Gnat programming system) thre also was nothing
close to an integrated IDE for Ada either.  Maybe the GPS will change (at
least part of) the perception newcomers have of Ada.  Maybe more integration
tools should exist too.   Seems today, the popular thing is wizards in
applcations that accomplish basic setup of applications for example.  visual
tools like that that eases the development cycle a bit.


-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Clause "with and use"
  2003-11-18 12:11                                     ` Marius Amado Alves
@ 2003-11-18 13:46                                       ` Preben Randhol
  2003-11-20  3:53                                       ` Brian Gaffney
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-18 13:46 UTC (permalink / raw)


On 2003-11-18, Marius Amado Alves <amado.alves@netcabo.pt> wrote:
> I don't count keystrokes. My argument is for readability. I actually
> find
>
> with Gtk.Arguments;        use @;
> with Gtk.Button;           use @;
> with Gtk.Handlers;

It isn't readable or safe at all as the use statment is dependant on
being at the correct location.

> more readable than the canonical form. And more pleasing, which can also
> be a quality factor. 

I find the @ rather ugly.

> Natural language has lots of pronouns for good reason. And hey I just
> found motivation for the symbol choice: @ = a = anaphoric pronoun :-)

No the @ was used as:

   2 fish @ $1.50 = $3

(at least here in Norway in the old days)

> In the canonical form you must read 2 identifiers to verify that they
> are equal. The pronoun has an immediate reading.  It's more

use at ?

> communicative, more lingual. Curiously enough when I first suggested
> "use @" I was kind of kidding--it was your very example that made me
> realise it is actually more readable.

Well, I don't agree. And I think you would agree on not making the ARM
bigger by a construct which isn't robust at all :-)

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18  7:53                                                                     ` Preben Randhol
@ 2003-11-18 16:06                                                                       ` Dmytry Lavrov
  0 siblings, 0 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-18 16:06 UTC (permalink / raw)


Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote in message news:<slrnbrjk0g.3fi.randhol+valid_for_reply_from_news@kiuk0156.chembio.ntnu.no>...
> On 2003-11-18, Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote:
~snip~
> I found an account in English here:
> 
> http://www.bellona.no/en/international/russia/navy/northern_fleet/incidents/31767.html
> 
> and here is the situation about nuclear waste discribed:
> 
> http://www.bellona.no/en/international/russia/waste-mngment/index.html
> 
> http://www.bellona.no/en/international/russia/navy/northern_fleet/index.html
You know that because of heroes that are now in prisons _as_ _spys_.

Yes,that's happen if someone not mantaining waste sites!
If somewhere wastes will be stored in non-mantained sites,that will
happen.Russia is example.
Russia always example for all other world,all history,ex. communism
become unpopular because of russian example.

And more,russian govs now imports waste(and getting money) from east
european countries and china,turning our live into the hell.Boris was
not allowed that by special law,but now Putin have nothing against
that,and Boris's law is now removed.

I _hate_ russian gov because of that.Not because of politics.
Almost all peoples in russia are against importing more waste - but
that govs want to get money.It's non-democratic if no one want it
except corupted govs.


Regards,

Dmytry Lavrov.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 22:32                                                                 ` Russ
@ 2003-11-18 16:38                                                                   ` Robert I. Eachus
  2003-11-19  5:36                                                                     ` Russ
  2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
  1 sibling, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-18 16:38 UTC (permalink / raw)


Russ wrote:

> Studies have found that properly stored nuclear waste might kill one
> person every century or so (I can't remember the exact figure off
> hand, but it's several orders of magnitude less than the corresponding
> figure for coal).

There are two blatent lies the anti-nuclear activists keep telling about 
nuclear waste.  The first is that a nuclear power plant produces ANY 
long term nuclear wastes.  Yes, right now more plutonium 240 is produced 
than is used, but that is a side effect of worries about nuclear 
proliferation.  Pu-240 is a nice, safe energy source for things like the 
Voyager spacecraft.  Pu-239 can be used in bombs, and most commercial 
nuclear reactors are designed to burn up most of the Pu-239 produced 
during the normal fuel cycle.  The Pu-240 that is used for "nuclear 
batteries" is produced as a side product of nuclear weapons production 
that wants the Pu-239 enough to separate it from the Pu-240.

But net-net, a nuclear reactor takes naturally radioactive material, 
"burns" it and uses most of the radioactivity that would otherwise be 
released into the environment.  There is a lot of uranium in granite, 
and New Hampshire is the Granite State.  So people around here have 
problems with radon gas releaed from the normal decay of the Uranium in 
the granite seeping through rocks and accumulating in basements.  But in 
a nuclear reactor the radon is intentionally trapped in the fuel rods, 
and the energy released when it does decay is turned into electricity.

The other blatent lie is worse.  Right now a significant amount of the 
radiation dose you receive every year comes from coal burning power 
plants!  Huh?  Yep.  Burning coal releases a large amount of radioactive 
material into the environment.  Some gases from things like radon gas 
otherwise trapped in the coal beds, and other solid radiation sources 
like potassium-40 that is in the fly ash, concentrated by plants in 
areas where the fly ash eventually settles and then found in the food 
supply.  In other words, the amount of radioactivity released into the 
environment by the nuclear fuel cycle for a given nuclear plant is 
measured in milligrams per year. The radioactive material released by by 
a coal burning plant is measured in tons per year.  (And yes, I know the 
difference between high-level and low-level nuclear wastes, and most of 
the radioactive material released when coal is burned is low-level.  But 
the same holds with nuclear reactors--the high-level wastes are 
concentrated in the fuel rods, and most of the radiation sources 
released are low level.)

Now I could go through a very long and complex analysis which shows that 
burning coal reduces the amount of carbon-14 in the atmosphere, and this 
tends to cancel out the radioactivity you receive from other radiation 
sources released by coal burning power plants.  And as I pointed out 
above, the quantities compared to a similar analysis for the nuclear 
fuel cycle are ridiculous.

Hmmm.  Let me put it this way instead.  There was an analysis done many 
years ago known as the Wash1400 report if I remember correctly. (Yep: 
http://stellar-one.com/nuclear/staff_reports/summary_WASH1400.htm) It 
analyzed the number of deaths to be expected from a "maximum credible" 
nuclear power plant accident that came very close to matching the Three 
Mile Island disaster a few years later.  Total deaths from radiation 
released by the initial failure?  Less than 100, how much less is 
irrelevant.  Because the report correctly predicted that the deaths due 
to restarting older coal burning plants to replace the power lost when 
the reactor failed would be in the thousands--per year.  And that is 
what happened at TMI.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Clause "with and use"
  2003-11-17 19:40                                                                         ` Russ
@ 2003-11-18 17:01                                                                           ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-18 17:01 UTC (permalink / raw)


Russ wrote:

> Not being an Ada programmer, I did not even know off the top of my
> head that "with Foo.Bar" is illegal. I'm at work, and my Ada books are
> at home, so let me ask a "newbie" question. Am I correct in assuming
> that "use Foo.Bar" *must* be preceded by "with Foo"? More
> specifically, am I correct in assuming that "use Foo.<anything>"
> *must* be preceded by "with Foo"?
> 
> If so, then the solution seems trivial to me. Let any occurence of
> "use Foo.<anything>" in the context section imply "with Foo". That is,
> for any "use" in the context section, simply take its argument and
> strip off the first "." and anything that follows it, then use that as
> the argument to the implied "with".

Unfortunately, it is not that simple.  You can with library units, and 
child packages are library units, while nested packages are not, so 
whether or not with Foo.Bar is legal in theory requires semantic 
analysis, and in practice requires searching the compilation 
environment.  So when you say "with Ada.Text_IO; use Ada.Text_IO;" yes 
there is an (implied) with of Ada, but there is also a with of 
Ada.Text_IO; then the use clause currently ONLY applies to Ada.Text_IO, 
not to Ada.  That is one of the differences I have been talking about.

> If not, I guess I just made a fool of myself. Oh well.

Just the opposite.  Now you are beginning to participate in the real 
discussion of this issue.  Personally, I don't even use a keyboard 
shortcut for the "with Ada.Text_IO; use Ada.Text_IO;" case.  I type fast 
enough, and that is one of the cases where I often do have a use clause 
in the context clause.  In fact, sometimes I get exactly that far then 
spend sometime thinking.  Do I want to create a generic template now, or 
deal with this I/O package separately?  Do I want this package to be the 
child of something, or standalone, etc.

But if there is a problem here, what we need to understand is both what 
are we trying to fix--if anything--and what are the problems that a fix 
must avoid creating.  For me, there are many packages that are 
descendents of Ada for which I almost automatically put a use clause in 
the context clause.  (There are others, such as Ada.Strings.Bounded 
where the use clause has to be for the instance I create.  Since I tend 
to instantiate them inside other library units, the use clause often 
can't go in the context clause.)  But for library units not in Ada, I 
tend to avoid use clauses in context clauses.  Add to that my typing 
speed, and as I said I don't have a problem with the current rules. 
Doesn't mean that others don't, and I certainly won't be opposed to an 
extension that has no significant drawbacks.  I might feel that there 
are other problems that are more pressing--for example the issue of 
mutually dependent abstractions--but that is an issue of prioritization.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 12:31                                                                     ` Marin David Condic
  2003-11-18 13:19                                                                       ` Stephane Richard
@ 2003-11-18 17:11                                                                       ` Chad R. Meiners
  2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
  1 sibling, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-18 17:11 UTC (permalink / raw)



"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FBA1118.4060105@noplace.com...
> They are
> likely to look at your arguments and respond that these same qualities
> are available to a greater or lesser degree in other languages that are
> *new* and *going somewhere*. Ada has to offer them something fresh and
> new or they won't want to tie their careers or those of their students
> to a technology that is perceived as being on the way out.

I agree that nice new features, such as more libraries, should be added.
Btw, I never got the *new* argument.  Doesn't new imply more risks?  ;-)
Incidentally, the argument that Ada *is somewhere* and then listing all the
safety critical applications is a nice argument,  but I agree the Ada should
be somewhere and going to other places, too.

-CRM





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 13:19                                                                       ` Stephane Richard
@ 2003-11-18 17:38                                                                         ` Marin David Condic
  0 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-18 17:38 UTC (permalink / raw)


There is Aonix with similar capabilities to GPS. Of course, it has been 
more expensive, but its similar.

MDC

Stephane Richard wrote:
> 
> OF course, before the GPS (Gnat programming system) thre also was nothing
> close to an integrated IDE for Ada either.  Maybe the GPS will change (at
> least part of) the perception newcomers have of Ada.  Maybe more integration
> tools should exist too.   Seems today, the popular thing is wizards in
> applcations that accomplish basic setup of applications for example.  visual
> tools like that that eases the development cycle a bit.
> 
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 17:11                                                                       ` Chad R. Meiners
@ 2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
  2003-11-18 20:00                                                                           ` Chad R. Meiners
                                                                                             ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-18 17:58 UTC (permalink / raw)


Chad R. Meiners wrote:
> "Marin David Condic" <nobody@noplace.com> wrote in message
> news:3FBA1118.4060105@noplace.com...
> 
>>They are
>>likely to look at your arguments and respond that these same qualities
>>are available to a greater or lesser degree in other languages that are
>>*new* and *going somewhere*. Ada has to offer them something fresh and
>>new or they won't want to tie their careers or those of their students
>>to a technology that is perceived as being on the way out.
> 
> I agree that nice new features, such as more libraries, should be added.
> Btw, I never got the *new* argument.  Doesn't new imply more risks?  ;-)
> Incidentally, the argument that Ada *is somewhere* and then listing all the
> safety critical applications is a nice argument,  but I agree the Ada should
> be somewhere and going to other places, too.
> 
> -CRM

For General Purpose (GP) programming, Ada suffers from two main
drawbacks:

   1. Interfacing to the C world is an uphill battle. C++
      (portably) is near impossible (usually you're forced
      into C wrapper interfaces to C++, to do this portably).

   2. Availability of free (or near free) compilers for the
      platform.

( 3. Libraries is another, but I am going to leave that
      discussion out of this post. )

                        -- #1 --

Both of these are serious impediments. If I want to use Fred's
Fast Fourier Transform routines (FFFT), I need to build a binding
to it (thin or thick, but the extra work is there). C/C++
programming can take advantage of this FFFT library without
any additional effort. C/C++ can use the include files,
macros, objects, structures, classes without any complication.

The Ada programmer must work around header files, must script
around macro constants, rework macros, build wrapper routines.
C++ objects cannot be portably used (starting with name
mangling rules, for example). C structures alone are
problematic due to padding and alignment rules.

So in the #1 case, a developer, may just be inclined to sigh
and use C/C++ instead, rather than to jump through those
hoops.

                       -- #2 --

For #2, I am grateful for GNAT, and all that it has done. If
it were not for GNAT, I myself would not be using Ada for
any of my work, for example. However, GNAT still is not
prevalant everywhere.

For example, I had to play a lot of games to get GNAT
installed on my Linux/Alpha (long story). I couldn't get
GNAT for FreeBSD on Alpha, so I dumped FreeBSD in the
end, due to the frustration waiting for it to appear
there. I am sure others can report other platforms where
Ada is desired but not available for Open Sourced work.

If your project needs to be portable to all GP platforms,
then you'll probably not use Ada. Why? Because of the
portability factor. If people really like what I write
for Linux/UNIX/Windows, but others cannot compile it
everywhere they want to run it, eventually, someone out
there is going to rewrite it all in C/C++. When that
has happened, the Ada programmer has wasted his
Open Sourced effort.

The #2 issue is getting better addressed with each
passing year, but Ada is hardly ubiquitous yet.

                    -- Summary --

I don't know what the #1 answer is.

Maybe the Ada folks need to design a C/C++ to Ada
"binder", that is able to reliably take a C/C++
include file, and generate a spec and body that
can be used by other Ada programs (in thinish
binding mode).

THIS NEEDS TO BE A STANDARD TOOL, that can be
counted on to work (no tweaking required),
to be consistent, and to be available with
the COMPILER toolset.

I know some of these tools exist in various forms
and shapes, for varying costs. But one needs to
be defined by a standard (or even defacto standard),
so that it can always be found with a compiler. It
needs to always work on the same principles,
generating Ada code in a consistent way (to be
portable to other environments). I realize, this
is probably an idealistic set of requirements.

FOR GP PROGRAMMING, the reality is that we
currently live in a C world. Making it easier
for Ada to access that C world, I believe is
extremely important.  If Ada bindings can never
keep up with what the C/C++ world is developing,
then I think the only hope that Ada has is to
make that world more easily accessible.

If thin bindings were cheap, then there would be
much less work in providing thick bindings. Then,
there might be less resistance to taking an Ada
approach.

</soap_box>
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 21:22                                                                     ` Stephane Richard
@ 2003-11-18 18:00                                                                       ` Warren W. Gay VE3WWG
  2003-11-18 20:02                                                                         ` Alexandre E. Kopilovitch
  2003-11-19 20:48                                                                       ` Dmytry Lavrov
  1 sibling, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-18 18:00 UTC (permalink / raw)


Stephane Richard wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote
> 
>>Wishful thinking I think. ;-)
>>-- 
>>Warren W. Gay VE3WWG
>>http://home.cogeco.ca/~ve3wwg
>>
> 
> 
> Really now? :-)
> 
> And in the 60s they were still saying that man would never walk on the moon
> ;-).  Looks like wishful thinking, targetted properly, can go places.  No?
> ;-)

I can pile a whole lot of refuse out behind my grandfather's
10 acres, and hope that someone comes along and steals it.

But THAT would be wishful thinking. Nuclear waste is
refuse of the worst kind. ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18  0:31                                                                     ` Ludovic Brenta
  2003-11-18 11:49                                                                       ` Dmytry Lavrov
@ 2003-11-18 18:06                                                                       ` Warren W. Gay VE3WWG
  1 sibling, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-18 18:06 UTC (permalink / raw)


Ludovic Brenta wrote:

> dmytrylavrov@fsmail.net (Dmytry Lavrov) writes:
> 
> <long rant/>
> 
> According to COGEMA, the French agency for nuclear fuel and waste, a
> nuclear plant uses fuel that consists, for 100 kg of fuel, of:
...
> - it is possible to reuse the plutonium, mixed with uranium, in some
>   existing power plants to produce energy.  Thus, we do not produce
>   ever more plutonium but "burn" it as we go.  At the very least, this
>   reduces the net amount of plutonium produced.  For example, France
>   burns plutonium in 900 MW reactors, but not in 1300 MW reactors.
> 
> - it is possible to store it and wait for 26 thousand years until half
>   the plutonium has turned into other (possibly radioactive) elements.
> 
> - it is possible to use it in nuclear weapons.  This is akin to
>   storage, until (God forbid) such time as the weapons are used.

A lot of possibilities, but no one (exaggeration) is doing
anything about it. Why? Economics. Profit from the fuel
now, and leave it to someone else to clean it up. That's
the way things always have worked. Corruption is not left
only to the 3rd world. The only difference is that in the
developed world, they try to hide it.

> My opinion is this: we should not trust our children for 26 thousand
> years (by which time only half the problem will be solved anyway).  We
> cannot even trust ourselves for a couple of decades without going to
> war or doing something stupid.  We must treat this plutonium and turn
> it into something harmless.  It is not an urgent problem for now, but
> will become one around 2040 when most of the existing reactors reach
> their end of life (the existing reactors with their infrastructure are
> absolutely required for treatment of nuclear waste; nobody would
> accept building a treatment plant where nothing "nuclear" exists yet).

Good point.
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 22:32                                                                 ` Russ
  2003-11-18 16:38                                                                   ` Robert I. Eachus
@ 2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
  2003-11-18 18:47                                                                     ` Hyman Rosen
  2003-11-19  0:44                                                                     ` Russ
  1 sibling, 2 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-18 18:12 UTC (permalink / raw)


Russ wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<Az7ub.3669$ZF1.458179@news20.bellglobal.com>...
>>There are pools all over the place just gathering more nuclear
>>waste. They keep gathering it, leaving it to the next generation
>>to figure out what to do with it. I think this is criminal. What
>>active research has there been to deal with the problem? How much
>>do they spend each year in working on this problem? Where are the
>>results?
>>
>>Don't be fooled. The next generations will be the ones stuck with
>>the problem and the economic costs of dealing with it.
>></rant>
> I think you've been fooled, but you are far from alone on this one.
> The quantities of waste generated by nuclear power are so miniscule
> that nuclear power plants can store -- literally, right on site -- the
> waste they generate for *decades*. Yes, those "little pools" have been
> accumulating, but that means that's because the so-called
> "environmentalists" have been blocking long-term storage by all the
> underhanded legal and political means at their disposal. Spreading
> ignorance is their primary weapon.
> 
> If you read my little article, you would have learned the following
> fact. If the US went completely nuclear for the next 10,000 years, the
> amount of land needed for waste disposal would be roughly the same as
> what is currently needed for two weeks worth of coal ash. That's
> accounting for the extra space needed for the massive containers and
> the spacing between them. And please note that the ash is far from the
> worst part of coal waste. The gaseous emissions kill an estimated
> 10,000 to 50,000 Americans each year, but the media never reports
> those deaths.
> 
> Studies have found that properly stored nuclear waste might kill one
> person every century or so (I can't remember the exact figure off
> hand, but it's several orders of magnitude less than the corresponding
> figure for coal).

OK, so we now have a solution!

We'll bury all the nuclear waste in your backyard! Sounds
fine to me. Bring on the nukes.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-18 18:47                                                                     ` Hyman Rosen
  2003-11-19  0:44                                                                     ` Russ
  1 sibling, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-18 18:47 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:
> We'll bury all the nuclear waste in your backyard! Sounds
> fine to me. Bring on the nukes.

I would be perfectly happy to have nuclear waste "in my backyard"
(that is, at a facility that was located near where I live). I live
in New York City, which is close to the Indian Point nuclear power
plant, and I certainly don't mind that. In fact, I have made it a
point to vote against any politician who campaigns on a platform of
shutting it down.

Your post reminds me of the bad old days when talk of equal rights
for everyone was met with the response of "that's fine in principle,
but would you want them as neighbors?" The anti-nuclear movement,
bereft of logic and science, must rely on frightening the ignorant
into adopting their point of view.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
@ 2003-11-18 20:00                                                                           ` Chad R. Meiners
  2003-11-20  2:07                                                                             ` Warren Gay
  2003-11-18 21:20                                                                           ` Alexandre E. Kopilovitch
  2003-11-18 22:42                                                                           ` Stephane Richard
  2 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-18 20:00 UTC (permalink / raw)



"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
news:U4tub.9139$iT4.968781@news20.bellglobal.com...
> For General Purpose (GP) programming, Ada suffers from two main
> drawbacks:
>
>    1. Interfacing to the C world is an uphill battle. C++
>       (portably) is near impossible (usually you're forced
>       into C wrapper interfaces to C++, to do this portably).
>
>    2. Availability of free (or near free) compilers for the
>       platform.
>
> ( 3. Libraries is another, but I am going to leave that
>       discussion out of this post. )

Actually your points 1 and 3 are the same.  True, it would be nice to have
better interpretably with pre-existing libraries, but this usually is a
non-issue in a academic environment.  Some students will want to learn how
to write GUI programs and so forth, but Ada already has pre-existing
bindings for these tasks.  I agree that it would nice to have a thin-binding
generator.  Perhaps you could start working on one?

-CRM





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18 18:00                                                                       ` Warren W. Gay VE3WWG
@ 2003-11-18 20:02                                                                         ` Alexandre E. Kopilovitch
  2003-11-19 17:30                                                                           ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-18 20:02 UTC (permalink / raw)
  To: comp.lang.ada

Warren W. Gay wrote:

>But THAT would be wishful thinking. Nuclear waste is
>refuse of the worst kind. ;-)

Do you know something fundamental (and certainly top secret) about nuclear
decay that make that nuclear waste so undefeatable by science and technology?

And by the way, why do you think that nuclear waste is worse than chemical?
And don't you think that now is just a good moment to stop all biotechnology
for preventing an appearance of huge amounts of genetical waste? Well, not to
speak about an informational waste (which is really worst IMHO -;) .




Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
  2003-11-18 20:00                                                                           ` Chad R. Meiners
@ 2003-11-18 21:20                                                                           ` Alexandre E. Kopilovitch
  2003-11-19 17:12                                                                             ` Warren W. Gay VE3WWG
  2003-11-18 22:42                                                                           ` Stephane Richard
  2 siblings, 1 reply; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-18 21:20 UTC (permalink / raw)
  To: comp.lang.ada

Warren W. Gay wrote:

>For General Purpose (GP) programming, Ada suffers from two main
>drawbacks:

I can't guess what you call General Purpose programming, but anyway, for it
(as its name suggests) Ada suffers form exactly one fundamental "drawback" -
Ada is for Specific Purpose programming.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
  2003-11-18 20:00                                                                           ` Chad R. Meiners
  2003-11-18 21:20                                                                           ` Alexandre E. Kopilovitch
@ 2003-11-18 22:42                                                                           ` Stephane Richard
  2003-11-19  2:25                                                                             ` Wes Groleau
                                                                                               ` (3 more replies)
  2 siblings, 4 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-18 22:42 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1600 bytes --]

Maybe the Ada folks need to design a C/C++ to Ada
"binder", that is able to reliably take a C/C++
include file, and generate a spec and body that
can be used by other Ada programs (in thinish
binding mode).

THIS NEEDS TO BE A STANDARD TOOL, that can be
counted on to work (no tweaking required),
to be consistent, and to be available with
the COMPILER toolset.

About a month and 1/2 ago, I started a project, I Affectionally call
AdaCREATE (C++ Reverse Engineering Ada Translating Engine)  And your first
paragraph here is one of the reasons why.  C++ unline C is so different in
minding than Ada (for object structures, includes, and a lot of other stuff
(biting my tongue here, but among other things, the += family of
operators....no comments please ;-).  That direct translation from C++ to
Ada is quite simple impossible.  Much like C++ to ObjectPascal  It's usually
better to just port it to Pascal (rewrite the logic, instead of the source
code).

The same can be applied here between Ada and C++.

1. Take the C++ code and derive the logic,
2. Translate to perhaps UML or a sub form of scripting language (so I don't
have to worry about UML compatibility per se).
3. Take the Scripting language and Translate that to Ada.

Of course this will be more than a simple translation and therefore will
take longer performance wise (Not sure yet how much longer ;-), but I'm
pretty sure that the output of it, being based on logic instead of the C++
paradigm, will be safer than any direct translation between Ada and C++.

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com





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

* Re: Clause "with and use"
  2003-11-15 13:04                                                           ` Marin David Condic
@ 2003-11-18 22:45                                                             ` Georg Bauhaus
  0 siblings, 0 replies; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-18 22:45 UTC (permalink / raw)


Marin David Condic <nobody@noplace.com> wrote:
: I tend to like a use clause for things similar to dispatching on a 
: tagged record.

: "Sometimes you want it to look 'intrinsic' and other 
: times you want it explicit that something is external. Hence we added 
: the 'use' when the 'with' alone is really all that is needed."
: 
:> It can, but it doesn't always.  A good example is a group of ADTs that 
:> have display operations.   The display operations belong in the package 
:> with the other operations on the same type, but they may be the only 
:> operation that needs to use Text_IO or some graphics packages.
:> 
:> You can organize things using child packages to segregate the I/O 
:> operations, but you end up with the display operation being the only one 
:> to use the child package.
:> 
:> Instead I usually end up with a generic package that handles the display 
:> operations in a data independent manner, and the individual display 
:> operations instantiate that package.  Now the use clause is for a local 
:> generic instance, but it is still there.

Thanks for the ideas, I'll try them in modules that produce
two different kinds of textual representation of some data structures,
maybe by inspecting the data or maybe having the data print themselves.


Georg



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
  2003-11-18 18:47                                                                     ` Hyman Rosen
@ 2003-11-19  0:44                                                                     ` Russ
  2003-11-19 17:33                                                                       ` Warren W. Gay VE3WWG
  1 sibling, 1 reply; 385+ messages in thread
From: Russ @ 2003-11-19  0:44 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<Mhtub.9149$iT4.971914@news20.bellglobal.com>...
> Russ wrote:

> > Studies have found that properly stored nuclear waste might kill one
> > person every century or so (I can't remember the exact figure off
> > hand, but it's several orders of magnitude less than the corresponding
> > figure for coal).
> 
> OK, so we now have a solution!
> 
> We'll bury all the nuclear waste in your backyard! Sounds
> fine to me. Bring on the nukes.

No problem. Bring it right over. I'll leave the gate open in case I'm at work.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 22:42                                                                           ` Stephane Richard
@ 2003-11-19  2:25                                                                             ` Wes Groleau
  2003-11-19  2:38                                                                               ` tmoran
  2003-11-19 12:42                                                                             ` Marin David Condic
                                                                                               ` (2 subsequent siblings)
  3 siblings, 1 reply; 385+ messages in thread
From: Wes Groleau @ 2003-11-19  2:25 UTC (permalink / raw)


Stephane Richard wrote:
> operators....no comments please ;-).  That direct translation from C++ to
> Ada is quite simple impossible.  Much like C++ to ObjectPascal  It's usually
> better to just port it to Pascal (rewrite the logic, instead of the source
> code).

I read an article a few years ago concluding that
it _is_ possible.  Unfortunately, I don't recall
the magazine.  Possibly CrossTalk.

-- 
Wes Groleau
    "Lewis's case for the existence of God is fallacious."
"You mean like circular reasoning?"
    "He believes in God.  Therefore, he's fallacious."




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19  2:25                                                                             ` Wes Groleau
@ 2003-11-19  2:38                                                                               ` tmoran
  2003-11-19  2:53                                                                                 ` Stephane Richard
  2003-11-19 17:18                                                                                 ` Warren W. Gay VE3WWG
  0 siblings, 2 replies; 385+ messages in thread
From: tmoran @ 2003-11-19  2:38 UTC (permalink / raw)


> > ... That direct translation from C++ to Ada is quite simple impossible.
> I read an article a few years ago concluding that it _is_ possible.
   A couple of years ago I wrote a program to produce Ada from Windows
tlb files.  Not only was the resulting code ugly, it was nearly unusable
with extensive documentation (which was not available) of what all those
function and their parameters were about.  That's part of why I don't
think a thin binding generator is very useful.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19  2:38                                                                               ` tmoran
@ 2003-11-19  2:53                                                                                 ` Stephane Richard
  2003-11-19 17:18                                                                                 ` Warren W. Gay VE3WWG
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-19  2:53 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 803 bytes --]


<tmoran@acm.org> wrote in message news:HIAub.179311$mZ5.1275800@attbi_s54...
> > > ... That direct translation from C++ to Ada is quite simple
impossible.
> > I read an article a few years ago concluding that it _is_ possible.
>    A couple of years ago I wrote a program to produce Ada from Windows
> tlb files.  Not only was the resulting code ugly, it was nearly unusable
> with extensive documentation (which was not available) of what all those
> function and their parameters were about.  That's part of why I don't
> think a thin binding generator is very useful.

Well although yes it could generate thin bindings, it's not it's primary
goal.  I want it to translate C++ source code (even for applications) into
Ada...

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18 16:38                                                                   ` Robert I. Eachus
@ 2003-11-19  5:36                                                                     ` Russ
  2003-11-19 15:28                                                                       ` Dmytry Lavrov
  2003-11-19 15:41                                                                       ` Robert I. Eachus
  0 siblings, 2 replies; 385+ messages in thread
From: Russ @ 2003-11-19  5:36 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<_eydnYB-uYJw1yeiRVn-vg@comcast.com>...

> The other blatent lie is worse.  Right now a significant amount of the 
> radiation dose you receive every year comes from coal burning power 
> plants!  Huh?  Yep.  Burning coal releases a large amount of radioactive 
> material into the environment.  Some gases from things like radon gas 
> otherwise trapped in the coal beds, and other solid radiation sources 
> like potassium-40 that is in the fly ash, concentrated by plants in 
> areas where the fly ash eventually settles and then found in the food 
> supply.  In other words, the amount of radioactivity released into the 
> environment by the nuclear fuel cycle for a given nuclear plant is 
> measured in milligrams per year. The radioactive material released by by 
> a coal burning plant is measured in tons per year.  (And yes, I know the 
> difference between high-level and low-level nuclear wastes, and most of 
> the radioactive material released when coal is burned is low-level.  But 
> the same holds with nuclear reactors--the high-level wastes are 
> concentrated in the fuel rods, and most of the radiation sources 
> released are low level.)

That's what is really amazing about this whole supposed "debate." I
can point out that the air pollution from coal-fired is four or five
orders of magnitude more dangerous than radioactive nuclear waste, but
that would be only part of the story. The simple fact is that, per
unit of energy produced, the radioactivity in the *coal* waste is
greater than the radioactivity in the *nuclear* waste. It's just more
concentrated in the nuclear waste -- but that's an advantage, because
that makes it much easier to manage. (Think of having trash
concentrated in cans rather than scattered all over the landscape.)

Yet people continue to fall for the old cliche' that "nuclear waste is
dangerous for hundreds of thousands of years." The sheer ignorance of
people who parrot this one has always amazed me. First of all,
chemical waste isn't dangerous for just "hundreds of thousands of
years," it is dangerous *forever*. It has an *infinite* halflife. A
long halflife means weak radioactive emissions. In fact, the toxicity
of long-lived radioisotopes is essentially chemical.

> Hmmm.  Let me put it this way instead.  There was an analysis done many 
> years ago known as the Wash1400 report if I remember correctly. (Yep: 
> http://stellar-one.com/nuclear/staff_reports/summary_WASH1400.htm) It 
> analyzed the number of deaths to be expected from a "maximum credible" 
> nuclear power plant accident that came very close to matching the Three 
> Mile Island disaster a few years later.  Total deaths from radiation 
> released by the initial failure?  Less than 100, how much less is 
> irrelevant.  Because the report correctly predicted that the deaths due 
> to restarting older coal burning plants to replace the power lost when 
> the reactor failed would be in the thousands--per year.  And that is 
> what happened at TMI.

That study and others have found that a nuclear meltdown would have to
occur every two weeks to equal the damage done by the *routine*
emissions from coal-fired power.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 22:42                                                                           ` Stephane Richard
  2003-11-19  2:25                                                                             ` Wes Groleau
@ 2003-11-19 12:42                                                                             ` Marin David Condic
  2003-11-19 13:05                                                                               ` Stephane Richard
                                                                                                 ` (2 more replies)
  2003-11-19 17:15                                                                             ` Warren W. Gay VE3WWG
  2003-11-19 17:52                                                                             ` Stephen Leake
  3 siblings, 3 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-19 12:42 UTC (permalink / raw)


They have a tool for that. Its called a "Programmer". ;-)

Being able to bind to C/C++ libraries is nice and Ada can do that. 
Getting an automated tool isn't a bad thing, but I don't think that 
really makes Ada significantly more attractive. Ultimately, the user is 
still looking at the situation and asking why he has to use *two* 
languages instead of just one. You *never* get out of "catch up" mode 
and you're *never* offering something "unique" and "innovative" - just 
copying what someone else has done.

Ultimately, what Ada needs is to have the same sort of libraries that 
C/C++ does but written directly in Ada and in Ada style. Don't duplicate 
- innovate. Ada doesn't have to have a parallel for *every* C/C++ 
library. It just needs to have parallels for the things that are most 
common in software development: Containers, GUI, Database... The fact 
that it doesn't have some Computational Fluid Dynamics package and C++ 
does is only going to piss off a really small number of programmers. Get 
the *critical* capabilities available in a standard way and offer some 
*innovation* there to make it attractive for new program development.

MDC


Stephane Richard wrote:
> Maybe the Ada folks need to design a C/C++ to Ada
> "binder", that is able to reliably take a C/C++
> include file, and generate a spec and body that
> can be used by other Ada programs (in thinish
> binding mode).

-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 12:42                                                                             ` Marin David Condic
@ 2003-11-19 13:05                                                                               ` Stephane Richard
  2003-11-20 12:40                                                                                 ` Marin David Condic
  2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
  2003-11-19 21:07                                                                               ` Wes Groleau
  2 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-19 13:05 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2640 bytes --]


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FBB6527.4040702@noplace.com...
> They have a tool for that. Its called a "Programmer". ;-)
>
> Being able to bind to C/C++ libraries is nice and Ada can do that.
> Getting an automated tool isn't a bad thing, but I don't think that
> really makes Ada significantly more attractive. Ultimately, the user is
> still looking at the situation and asking why he has to use *two*
> languages instead of just one. You *never* get out of "catch up" mode
> and you're *never* offering something "unique" and "innovative" - just
> copying what someone else has done.
>
Well yes because it can translate header files and such, AdaCREATE would be
able to do bindings, but it wouldn't be limited to that however.  like you
said, (later in this message) it would have been an atempt at also
tranlsation libraries, not binding to them, which would be why some sort of
reverse engineering would be involved in the process :-).  But you're right
about innovating, if it's the same, they would probably stick with what's
already there. haven't thought of that.

> Ultimately, what Ada needs is to have the same sort of libraries that
> C/C++ does but written directly in Ada and in Ada style. Don't duplicate
> - innovate. Ada doesn't have to have a parallel for *every* C/C++
> library. It just needs to have parallels for the things that are most
> common in software development: Containers, GUI, Database... The fact
> that it doesn't have some Computational Fluid Dynamics package and C++
> does is only going to piss off a really small number of programmers. Get
> the *critical* capabilities available in a standard way and offer some
> *innovation* there to make it attractive for new program development.
>
Wish more vendors would read (and understand clearly) this last paragraph of
yours.  ISO does nothing as far as libraries go.  If we were to do a library
and submit it to the ISO for inclusion, not sure what would happen then
since they don't deal with libraries in the first place.  They would
prpbably have to create something, a sub group or an annotation to the
standard for libraries or something to do anything about including a
library. and I'm not sure if they would.

This is like 3rd party vendors for other languages.  they're there, but the
commercial compilers don't include them per se in their distributions.
Somebody else manages and sells it.  Not the language makers.  (unless it
becomes so popular and useful) and this last parenthesis might be what we
need to aim for.


> MDC
>
>

-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19  5:36                                                                     ` Russ
@ 2003-11-19 15:28                                                                       ` Dmytry Lavrov
  2003-11-19 20:01                                                                         ` Robert I. Eachus
  2003-11-19 15:41                                                                       ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-19 15:28 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) wrote in message news:<bebbba07.0311182136.51a828b6@posting.google.com>...
> "Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<_eydnYB-uYJw1yeiRVn-vg@comcast.com>...
> 
> > The other blatent lie is worse.  Right now a significant amount of the 
> > radiation dose you receive every year comes from coal burning power 
> > plants!  Huh?  Yep.  Burning coal releases a large amount of radioactive 
> > material into the environment.

Are everyone who think so complete dumbs or idiots or what?It's NOT
increases radioactivity on planet surface or anywhere.Like saying that
golfstream produces radioactivity because there's lots of uranium and
other isotopes in water moved by it.

Nuclear plant also not increases radioactivity for infinite time,it
increases radioactivity for "short" time of several throusands of
years.

Assume we have isotope with halflife of 50 years.Uranium half-life is
5*10^9 years.That waste is 10^8 times more radioactive.To fall to
uranium level,more than 24 half-life periods must pass(2^3=8 ,bit
lesser than 10).It's 1200 years.
Other isotope of 500 years are 1^7 times more radioactive and need 21
half-lifes,10_000 years to rearch uranium level.

> >  Some gases from things like radon gas 
> > otherwise trapped in the coal beds, and other solid radiation sources 
> > like potassium-40 that is in the fly ash, concentrated by plants in 
> > areas where the fly ash eventually settles and then found in the food 
> > supply.  In other words, the amount of radioactivity released into the 
> > environment by the nuclear fuel cycle for a given nuclear plant is 
> > measured in milligrams per year. The radioactive material released by by 
> > a coal burning plant is measured in tons per year.  (And yes, I know the 
> > difference between high-level and low-level nuclear wastes, and most of 
> > the radioactive material released when coal is burned is low-level.  But 
> > the same holds with nuclear reactors--the high-level wastes are 
> > concentrated in the fuel rods, and most of the radiation sources 
> > released are low level.)
> 
> That's what is really amazing about this whole supposed "debate." I
> can point out that the air pollution from coal-fired is four or five
> orders of magnitude more dangerous than radioactive nuclear waste, but
> that would be only part of the story. The simple fact is that, per
> unit of energy produced, the radioactivity in the *coal* waste is
> greater than the radioactivity in the *nuclear* waste.

Only idiots think so.Many peoples died after Chernobil,and that was
relatively small plant,only one reactor have been melted,and only
sevral precents of isotopes was  spreaded in the gaseous form,wind
moved in opposite direction to town(forest was die at direction of
wind,even that plants are quite resistant,many times more resistant
than humans).Strange,but peoples that like += also like
radioactivity.Should be correlation...mutation....


> It's just more
> concentrated in the nuclear waste -- but that's an advantage, because
> that makes it much easier to manage. (Think of having trash
> concentrated in cans rather than scattered all over the landscape.)
> 
> Yet people continue to fall for the old cliche' that "nuclear waste is
> dangerous for hundreds of thousands of years." The sheer ignorance of
> people who parrot this one has always amazed me. First of all,
> chemical waste isn't dangerous for just "hundreds of thousands of
> years," it is dangerous *forever*. It has an *infinite* halflife.

Not.It have relatively small halflife.Biologically dangerous
_molecular_ waste should react with biopolymers,that's happen and
bacteries could clean that waste relatively fast,there's no
exponential halflife.When dangerous elements(like lead) are
spreaded,it again does not increases concentration on surface.

> A
> long halflife means weak radioactive emissions. In fact, the toxicity
> of long-lived radioisotopes is essentially chemical.
Not.Get some uranium,put into capsule,and fix on ..one well known
point on your body...


> 
> > Hmmm.  Let me put it this way instead.  There was an analysis done many 
> > years ago
> > known as the Wash1400 report if I remember correctly. (Yep: 
> > http://stellar-one.com/nuclear/staff_reports/summary_WASH1400.htm) It 
> > analyzed the number of deaths to be expected from a "maximum credible" 
> > nuclear power plant accident that came very close to matching the Three 
> > Mile Island disaster a few years later.  Total deaths from radiation 
> > released by the initial failure?  Less than 100, how much less is 
> > irrelevant.  Because the report correctly predicted that the deaths due 
> > to restarting older coal burning plants to replace the power lost when 
> > the reactor failed would be in the thousands--per year.  And that is 
> > what happened at TMI.
> 
> That study and others have found that a nuclear meltdown would have to
> occur every two weeks to equal the damage done by the *routine*
> emissions from coal-fired power.

Please reply to _that_:

Nuclear bomb are equivalent to several kg's of waste. Do you want
nuclear war?
Or for you there's no difference between nuclear war and
non-radioactive weapons because they works like coal-fired power?

Many peoples die due to several microgramms of waste they got after
Chirosima,or what,not?!?!?!?

Are we again need small nuclear war to become more-or-less careful?



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19  5:36                                                                     ` Russ
  2003-11-19 15:28                                                                       ` Dmytry Lavrov
@ 2003-11-19 15:41                                                                       ` Robert I. Eachus
  1 sibling, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-19 15:41 UTC (permalink / raw)


Russ wrote:

> That study and others have found that a nuclear meltdown would have to
> occur every two weeks to equal the damage done by the *routine*
> emissions from coal-fired power.

I grew up in Pennsylvania.  There you often see the words "coal mine" in 
the news, followed by "disaster" and preceded by "another."  To put that 
comment in perspective, coal mining is infinitely more dangerous than 
any other type of mining (including uranium).  In fact during the 
seventies some genius had the idea of splitting all the non-coal mining 
supervision from the government agency responsible for investigating 
coal mining disasters because that group was overworked.  The man Reagan 
appointed as the second head of this agency then spent his time lobbying 
Congress to put himself out of a job.  There was nothing to investigate, 
and mining companies bought the same equipment as coal mines, but it was 
way overengineered for other types of mines.

For example in coal mines, "coal damp" a mixture of carbon monoxide and 
methane can kill you if you breathe it, but it is also explosive over a 
wide range of concentrations in air.  So coal mining equipment is 
designed to never spark.  You don't need that in non-coal mines, but 
there is no manufacturing advantage to having two designs.

But worse is what coal mining has done to the landscape around Scranton 
and in other coal-mining areas.  The acid runoff makes it difficult for 
plants to grow, and of course plants with deep roots have it worse.  So 
mudslides are an additional threat even if you are nowhere near the 
tailings. (They can block rivers and streams causing flooding.)

Oh, and don't forget the "brown lung" disease that often kills soft coal 
miners.  So it is no wonder that the miners both the companies and the 
miners themselves much prefer open pit mines to underground mining.

And that's not all.  In the early sixties a fire started in an abandoned 
coal mine near Centralia, Pa.  Eventually the entire town was evacuated 
due to carbon monoxide from the fire under the town accumulating in 
basements and killing residents.  (The federal government paid for the 
evacuation, and with good reason.  The federal government tried to put 
the fire out by flooding the mine--which is what caused the large 
amounts of carbon monoxide:  3C + 2 H20 --> CH4 + 2CO.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 21:20                                                                           ` Alexandre E. Kopilovitch
@ 2003-11-19 17:12                                                                             ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:12 UTC (permalink / raw)


Alexandre E. Kopilovitch wrote:
> Warren W. Gay wrote:
> 
>>For General Purpose (GP) programming, Ada suffers from two main
>>drawbacks:
> 
> I can't guess what you call General Purpose programming, but anyway, for it
> (as its name suggests) Ada suffers form exactly one fundamental "drawback" -
> Ada is for Specific Purpose programming.

I am thinking along the lines that GP /= Embedded ;

  ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 22:42                                                                           ` Stephane Richard
  2003-11-19  2:25                                                                             ` Wes Groleau
  2003-11-19 12:42                                                                             ` Marin David Condic
@ 2003-11-19 17:15                                                                             ` Warren W. Gay VE3WWG
  2003-11-19 17:52                                                                             ` Stephen Leake
  3 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:15 UTC (permalink / raw)


Stephane Richard wrote:

> Maybe the Ada folks need to design a C/C++ to Ada
> "binder", that is able to reliably take a C/C++
> include file, and generate a spec and body that
> can be used by other Ada programs (in thinish
> binding mode).
> 
> THIS NEEDS TO BE A STANDARD TOOL, that can be
> counted on to work (no tweaking required),
> to be consistent, and to be available with
> the COMPILER toolset.
> 
> About a month and 1/2 ago, I started a project, I Affectionally call
> AdaCREATE (C++ Reverse Engineering Ada Translating Engine)  And your first
> paragraph here is one of the reasons why.  C++ unline C is so different in
> minding than Ada (for object structures, includes, and a lot of other stuff
> (biting my tongue here, but among other things, the += family of
> operators....no comments please ;-).  That direct translation from C++ to
> Ada is quite simple impossible.  ....

You're taking the idea much further than I had in mind. The
problem I am proposing to be solved is the translation of
just the C/C++ header files -- not entire programs or code.

The reality of course is that header files can also include
code, particularly in macros. But I was trying to gloss over
that detail ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19  2:38                                                                               ` tmoran
  2003-11-19  2:53                                                                                 ` Stephane Richard
@ 2003-11-19 17:18                                                                                 ` Warren W. Gay VE3WWG
  1 sibling, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:18 UTC (permalink / raw)


tmoran@acm.org wrote:

>>>... That direct translation from C++ to Ada is quite simple impossible.
>>
>>I read an article a few years ago concluding that it _is_ possible.
> 
>    A couple of years ago I wrote a program to produce Ada from Windows
> tlb files.  Not only was the resulting code ugly, it was nearly unusable
> with extensive documentation (which was not available) of what all those
> function and their parameters were about.  That's part of why I don't
> think a thin binding generator is very useful.

You may in fact be correct about this generally. However, Windows
code IMHO is especially nasty, and perhaps this is not the best
test in terms of things in general. I would be interested
to see how such a tool would work in a POSIX environment.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 12:42                                                                             ` Marin David Condic
  2003-11-19 13:05                                                                               ` Stephane Richard
@ 2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
  2003-11-19 21:57                                                                                 ` Chad R. Meiners
                                                                                                   ` (2 more replies)
  2003-11-19 21:07                                                                               ` Wes Groleau
  2 siblings, 3 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:28 UTC (permalink / raw)


Marin David Condic wrote:

> They have a tool for that. Its called a "Programmer". ;-)
> 
> Being able to bind to C/C++ libraries is nice and Ada can do that. 
> Getting an automated tool isn't a bad thing, but I don't think that 
> really makes Ada significantly more attractive. Ultimately, the user is 
> still looking at the situation and asking why he has to use *two* 
> languages instead of just one. You *never* get out of "catch up" mode 
> and you're *never* offering something "unique" and "innovative" - just 
> copying what someone else has done.

I have never had a problem with multi language projects. This
only becomes a problem when impedance mismatches occur on
interfaces and objects, in my experience.

> Ultimately, what Ada needs is to have the same sort of libraries that 
> C/C++ does but written directly in Ada and in Ada style. Don't duplicate 
> - innovate. 

Nobody questions this ideal. But the practical question in my
mind is how do we provide a way to get closer to the ideal,
to make Ada more attractive.

If all I had to do was add a Makefile command:

    adagen freds_fft.h

to generate a thin binding, in a consistent and
portable way, then I'd have mighty little resistance
to using Ada in a given project.

The tough sell is when you have to report to management that
it will add 3 weeks of work to build a binding to Fred's
FFT routine, in order to use Ada. Project management will
then ask, "can it be done in C/C++?" As soon as you answer
affirmative to this, in the GP (non-embedded, non safety
critical) world, the project management answer will be to
use C/C++ instead. Bye bye Ada!

If instead, you don't have to add those 3 weeks to the
project schedule, project management might even encourage
the use of Ada, if it even cares. Alternatively, you
might not even have to bring it up ;-)

For Open Source developers, I think this can make a difference
too. Everyone has a limited free time, unless you have
just won the lottery (but then would you still be coding? ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-18 20:02                                                                         ` Alexandre E. Kopilovitch
@ 2003-11-19 17:30                                                                           ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:30 UTC (permalink / raw)


Alexandre E. Kopilovitch wrote:

> Warren W. Gay wrote:
>>But THAT would be wishful thinking. Nuclear waste is
>>refuse of the worst kind. ;-)
> 
>... Well, not to
> speak about an informational waste (which is really worst IMHO -;) .

This thread may become that example of "informational waste" ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19  0:44                                                                     ` Russ
@ 2003-11-19 17:33                                                                       ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:33 UTC (permalink / raw)


Russ wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message news:<Mhtub.9149$iT4.971914@news20.bellglobal.com>...
> 
>>Russ wrote:
> 
>>>Studies have found that properly stored nuclear waste might kill one
>>>person every century or so (I can't remember the exact figure off
>>>hand, but it's several orders of magnitude less than the corresponding
>>>figure for coal).
>>
>>OK, so we now have a solution!
>>
>>We'll bury all the nuclear waste in your backyard! Sounds
>>fine to me. Bring on the nukes.
> 
> No problem. Bring it right over. I'll leave the gate open in case I'm at work.

ok :)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Clause "with and use"
  2003-11-18  8:49                                                                 ` Dmitry A. Kazakov
@ 2003-11-19 17:46                                                                   ` Warren W. Gay VE3WWG
  2003-11-20  8:26                                                                     ` Dmitry A. Kazakov
  0 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-19 17:46 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> On Mon, 17 Nov 2003 11:42:45 -0500, "Warren W. Gay VE3WWG"
> <ve3wwg@cogeco.ca> wrote:
> 
>>Dmitry A. Kazakov wrote:
>>
>>>On Fri, 14 Nov 2003 09:51:33 -0500, "Warren W. Gay VE3WWG"
>>><ve3wwg@cogeco.ca> wrote:
>>>
>>>>Dmitry A. Kazakov wrote:
>>>>
>>>>>On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
>>>>><ve3wwg@cogeco.ca> wrote:
>>
>>...
>>
>>>There should be something wrong with the language, if the following is
>>>illegal:
>>>
>>>with Ada.Io_Exceptions;
>>>package A is
>>>   End_Error : exception renames Ada.Io_Exceptions.End_Error;
>>>end A;
>>>
>>>with Ada.Io_Exceptions;
>>>package B is
>>>   End_Error : exception renames Ada.Io_Exceptions.End_Error;
>>>end B;
>>
>>This is more sillyness. When you USE both packages, you take
>>a hierarchical name space and flatten it. So what else would
>>you expect if there were clashes?
> 
> 
> I expect renaming be renaming. So A.End_Error and B.End_Error should
> not clash in any context. Compare it with :
> 
> package A is
>    X : Integer;
> end A;
> 
> with A;
> package B renames A;
> 
> with A; use A;
> with B; use B;
> procedure Test is
> begin
>    X := 1; -- This is OK
> end Test;
> 
> This example illustrates the fact that package renaming *is* a
> renaming.
> 
> The example with End_Error shows that object renaming is something
> very different.

OK, I see where you're going with this now. I did overlook
the renames clause. I don't have an issue with this myself,
given that the "ending point" refers to the same thing.

While resolving this specific issue would help, it would not
resolve the general problem with other name clashes.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 22:42                                                                           ` Stephane Richard
                                                                                               ` (2 preceding siblings ...)
  2003-11-19 17:15                                                                             ` Warren W. Gay VE3WWG
@ 2003-11-19 17:52                                                                             ` Stephen Leake
  2003-11-19 18:15                                                                               ` Hyman Rosen
  2003-11-20  3:03                                                                               ` Warren Gay
  3 siblings, 2 replies; 385+ messages in thread
From: Stephen Leake @ 2003-11-19 17:52 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> writes:

> Maybe the Ada folks need to design a C/C++ to Ada
> "binder", that is able to reliably take a C/C++
> include file, and generate a spec and body that
> can be used by other Ada programs (in thinish
> binding mode).
> 
> THIS NEEDS TO BE A STANDARD TOOL, that can be
> counted on to work (no tweaking required),
> to be consistent, and to be available with
> the COMPILER toolset.

Old news. Been tried many times before. Not possible in practice.

The C preprocessor is just too powerful, and is used in too many
interesting ways, to make this work.

-- 
-- Stephe



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 17:52                                                                             ` Stephen Leake
@ 2003-11-19 18:15                                                                               ` Hyman Rosen
  2003-11-20  3:03                                                                               ` Warren Gay
  1 sibling, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-19 18:15 UTC (permalink / raw)


Stephen Leake wrote:
> The C preprocessor is just too powerful, and is used in too many
> interesting ways, to make this work.

Ditto for C++ templates.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19 15:28                                                                       ` Dmytry Lavrov
@ 2003-11-19 20:01                                                                         ` Robert I. Eachus
  2003-11-20  9:30                                                                           ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-19 20:01 UTC (permalink / raw)


Dmytry Lavrov wrote:

> Are everyone who think so complete dumbs or idiots or what?It's NOT
> increases radioactivity on planet surface or anywhere.Like saying that
> golfstream produces radioactivity because there's lots of uranium and
> other isotopes in water moved by it.

No, there is a big difference.  There are a lot of short half-life 
radioactive materials caught in coal beds.  The uranium, thorium, or 
other long-half life materials in the "underlayment" the level that the 
coal forms on top of, have decay chains that include radon and other 
gases.  These propagate upwards then are stopped by the coal layers. 
Coal is plastic in-situ, so cracks in the coal heal, and the gases get 
trapped.  Then the radon or whatever decays further, and these longer 
half-life atoms are metallic, and bind to the coal--until it is burned.

A coal burning power plant (assuming bituminous, not antracite coal) 
puts more moderate half-life isotopes in the atmosphere than an 
equivalent nuclear power plant produces.  (Note, puts into the 
atmosphere, vs. produces.  These are the "high-level nuclear wastes" in 
storage pools that get discussed.  And of course, the nuclear reactor 
burns up natural uranium in a way that bypasses the normal decay chains 
entirely.

> Only idiots think so.Many peoples died after Chernobil,and that was
> relatively small plant,only one reactor have been melted,and only
> sevral precents of isotopes was  spreaded in the gaseous form,wind
> moved in opposite direction to town(forest was die at direction of
> wind,even that plants are quite resistant,many times more resistant
> than humans).Strange,but peoples that like += also like
> radioactivity.Should be correlation...mutation....

The reactor design at Chernobyl was an RMBK graphite moderated reactor, 
and did not have a containment building.  (The only similar reactor that 
I know of in the US was in Hanford, Wash.  There was also a UK plant at 
Windscale.)  Graphite-moderated power reactors are really designed to 
product plutonium for nuclear weapons.  Commercial BWR or PWR reactors 
are designed to "burn-up" as much as possible of the nuclear fuel, 
including any plutonium produced.  This is simple economics--the more of 
a fuel load that gets used, the longer between refuelings and the lower 
the cost of the actual fuel.  There are other reactor types, including 
HTGRs, MSRs, AGRs (UK), CANDU (Canada) and LMFBRs (mostly in France 
right now).  LMFBRs are dangerous both due to the negative void 
coefficent and the coolant (liquid sodium metal).  MSRs (molten salt 
reactors) and BWRs (boiling water reactors) are just the opposite and 
much safer.

> Not. Get some uranium, put into capsule, and fix on ..one well known
> point on your body...

How about I make it into dinner plates instead? Uranium is used to add 
an orange color to some ceramics.  Or a few dozen tons of armor on an 
M1-A1, A2, or A3 Abrams tank?  Or wear a wristwatch with a radium or 
tritium dial?  Or use a smoke detector with an americinium radiation source?

The real answer to all of these is not much happens.  Even the brighest 
of radium-dial wristwatches subjected the wearer to about as much 
radiation damage as 15 minutes of direct sunlight.  As for the Abrams 
tank crews, they are subjected to LESS radiation than crews of other 
tanks--Chobbam armor is a very good X-ray barrier.

You are exposed to about five rads a year from natural sources.  If you 
live at high-altitude or in a granite building, that number goes up. 
Nuclear industry workers tend to get a significantly lower dosage. To 
make it easier to monitor for leaks with geiger counters nuclear 
facilities are generally built of things like sandstone, concrete, and 
aluminium to minimize the background count.  In fact, the first 
detection of the Chernobyl disaster in the West was when some employees 
were entering a nuclear reactor in, I think Sweden.  The fallout in the 
area would normally have been indetectable, if it weren't for the 
designed in low-background.  As it was the radiation detector went off 
when some workers entered with muddy boots.

> Nuclear bomb are equivalent to several kg's of waste. Do you want
> nuclear war?

No.

> Or for you there's no difference between nuclear war and
> non-radioactive weapons because they works like coal-fired power?

Nonsense.  First, there are "clean" nuclear weapons, and dirty nuclear 
weapons.  But whichever type, there is a large burst of "prompt" 
neutrons and X-rays and the only shielding someone too near the blast 
will have may be air.  Early nuclear weapons had fairly high amounts of 
fissile material in them, and the Bikini Bravo device had large amounts 
of tritium and was very "dirty". (Read Lapp, Ralph E., "The Voyage of 
the Lucky Dragon", Haper & Brothers Publishers, New York, 1958, for more 
details.  AFAIK, the US never made a similar device--the Bikini Bravo 
result was much greater than expected, and "H-bombs" using Li6D as a 
fusion fuel did not need uranium outer layers.)  Nuclear weapons today 
have a very low amount of fallout, for possibly no other reason than to 
reduce cost and weight.  Doesn't mean they should be used, in fact they 
shouldn't be...

Nuclear weapons have been obsolete for about a dozen years.  During the 
Gulf War the US developed special bunker-destroying precision-guided 
weapons that are much more effective against nuclear hardened sites than 
nuclear weapons, and do much less "collateral" damage.  I wish I could 
say that the US uses these weapons solely because of the reduced risk to 
civilians.  But efficiency in destroying the actual target is a major 
reason for the switch to "smart" weapons.

> Are we again need small nuclear war to become more-or-less careful?

I hope we don't.  Right now there is a significant threat of just that 
with North Korea.  If the PRNK tries to use nuclear weapons I expect the 
US reponse to be overwhelming--and non-nuclear.  Notice the tries--it is 
no secret the US is deploying an anti-ICBM system in Alaska.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 21:22                                                                     ` Stephane Richard
  2003-11-18 18:00                                                                       ` Warren W. Gay VE3WWG
@ 2003-11-19 20:48                                                                       ` Dmytry Lavrov
  2003-11-19 21:10                                                                         ` Hyman Rosen
                                                                                           ` (2 more replies)
  1 sibling, 3 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-19 20:48 UTC (permalink / raw)


"Stephane Richard" <stephane.richard@verizon.net> wrote in message news:<I_aub.9262$3o6.6712@nwrdny01.gnilink.net>...
> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote
> >
> > Wishful thinking I think. ;-)
> > -- 
> > Warren W. Gay VE3WWG
> > http://home.cogeco.ca/~ve3wwg
> >
> 
> Really now? :-)
> 
> And in the 60s they were still saying that man would never walk on the moon
> ;-).  Looks like wishful thinking, targetted properly, can go places.  No?
> ;-)

Not,that's not about this.They truing to figure that our childs will
know what's to do with waste.  Not so  many peoples in 1960 really
needed "man on the moon" for something _useful_ .
    
As with antigravitation:for loong time peoples want it to solve some
problems,it's useful.Time-mashine:for far longer time peoples want
it,where that time mashine????Show me antigravity!!
Teleportation?,hehe.
Too wishful thinking about nuclear reactors using deiterium and
tritium.Quite unlikely(but possible) that in next 50 years we will
have  it.
If our childs will be able to use that waste in next 50 years,we
should have so simple thing as H-reactors NOW.


Why not think that our childs will prefer less/non dangerous solar
sources???????

http://www.electrosolar.co.uk/page1.htm
There's some progress in that area,and sometime if we will not do
something really stupid to stop progress,we will have it.That not a
too wishful prediction:we know whats to do,where to search for
solutions.

heh,about man on the moon:

http://www.ecotopia.com/apollo2/

- it's in progress and will be done.We don't need nuclear power.
Harmless energy sources grows faster.It's loosing way to spend money
on nucleart plants.

It's not a choise "nuclear power or burning coal".

It's choise
"not burning coal and use nuclear energy" vs "not burning coal and use
solar and wind and geo-thermal energy".

How you will "prove" that "nuclear plants is more harmless than solar
power"?



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 12:42                                                                             ` Marin David Condic
  2003-11-19 13:05                                                                               ` Stephane Richard
  2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
@ 2003-11-19 21:07                                                                               ` Wes Groleau
  2003-11-20  9:31                                                                                 ` Preben Randhol
  2 siblings, 1 reply; 385+ messages in thread
From: Wes Groleau @ 2003-11-19 21:07 UTC (permalink / raw)


Marin David Condic wrote:
> Ultimately, what Ada needs is to have the same sort of libraries that 
> C/C++ does but written directly in Ada and in Ada style. Don't duplicate 
> - innovate. Ada doesn't have to have a parallel for *every* C/C++ 

Sometimes, my approach is first duplicate, then improve.
(Translate, and then make it elegant)

-- 
Wes Groleau

A pessimist says the glass is half empty.

An optimist says the glass is half full.

An engineer says somebody made the glass
        twice as big as it needed to be.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19 20:48                                                                       ` Dmytry Lavrov
@ 2003-11-19 21:10                                                                         ` Hyman Rosen
  2003-11-20  1:34                                                                         ` Robert I. Eachus
  2003-11-20  6:31                                                                         ` Russ
  2 siblings, 0 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-19 21:10 UTC (permalink / raw)


Comparing putting garbage in a hole in the ground with
developing antigravity is, alas, typical of the style
of thought of anti-nuclear activists.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
@ 2003-11-19 21:57                                                                                 ` Chad R. Meiners
  2003-11-20  2:12                                                                                   ` Warren Gay
  2003-11-20 18:27                                                                                   ` Stephen Leake
  2003-11-20  1:39                                                                                 ` Wes Groleau
  2003-11-20 12:57                                                                                 ` Marin David Condic
  2 siblings, 2 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-19 21:57 UTC (permalink / raw)



"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
news:xKNub.11738$iT4.1349744@news20.bellglobal.com...
> If all I had to do was add a Makefile command:
>
>     adagen freds_fft.h
>
> to generate a thin binding, in a consistent and
> portable way, then I'd have mighty little resistance
> to using Ada in a given project.

Why would it be a makefile command?  Shouldn't you run the command once and
then intergrate the resultant package into your project?





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19 20:48                                                                       ` Dmytry Lavrov
  2003-11-19 21:10                                                                         ` Hyman Rosen
@ 2003-11-20  1:34                                                                         ` Robert I. Eachus
  2003-11-20 10:21                                                                           ` Dmytry Lavrov
  2003-11-20  6:31                                                                         ` Russ
  2 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20  1:34 UTC (permalink / raw)


Dmytry Lavrov wrote:

> As with antigravitation:for loong time peoples want it to solve some
> problems,it's useful.Time-mashine:for far longer time peoples want
> it,where that time mashine????Show me antigravity!!
> Teleportation?,hehe.

Dmyytry, Dmytry, you really need to catch up on your technical reading:

Teleportation: http://www.aip.org/physnews/graphics/html/teleport.htm

Time travel: http://www.sciencenews.org/sn_arc98/4_11_98/fob3.htm

Superluminal communication: 
http://adsabs.harvard.edu/cgi-bin/nph-bib_query?1999quant.ph..6113S

The importance of the third paper is that teleportation requires a 
communication channel, so if you want to go some long distance and not 
spend a long time doing so, you need a superluminal (faster than light) 
communciation path.  This paper shows that superluminal communication 
does not involve causal loops, i.e. time travel.

The first (impractical) demonstration of superluminal communication was 
by Nimtz: Nimtz, G. "Superluminal Signal Velocity." Ann. Phys. 7, 61-68, 
1998.

Notice that all these results are so last century. ;-)

> Too wishful thinking about nuclear reactors using deiterium and
> tritium.Quite unlikely(but possible) that in next 50 years we will
> have  it.
> If our childs will be able to use that waste in next 50 years,we
> should have so simple thing as H-reactors NOW.

Practical tokamaks however, may be a fairy tale.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
  2003-11-19 21:57                                                                                 ` Chad R. Meiners
@ 2003-11-20  1:39                                                                                 ` Wes Groleau
  2003-11-20 12:57                                                                                 ` Marin David Condic
  2 siblings, 0 replies; 385+ messages in thread
From: Wes Groleau @ 2003-11-20  1:39 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:
> too. Everyone has a limited free time, unless you have
> just won the lottery (but then would you still be coding? ;-)

Then I'd be coding on MY schedule, on MY equipment,
with MY favorite language, to MY specifications!  :-)

-- 
Wes Groleau

    Nobody believes a theoretical analysis -- except the guy who did it.
    Everybody believes an experimental analysis -- except the guy who did it.
                                  -- Unknown




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-18 20:00                                                                           ` Chad R. Meiners
@ 2003-11-20  2:07                                                                             ` Warren Gay
  0 siblings, 0 replies; 385+ messages in thread
From: Warren Gay @ 2003-11-20  2:07 UTC (permalink / raw)


"Chad R. Meiners" wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
> news:U4tub.9139$iT4.968781@news20.bellglobal.com...
> > For General Purpose (GP) programming, Ada suffers from two main
> > drawbacks:
> >
> >    1. Interfacing to the C world is an uphill battle. C++
> >       (portably) is near impossible (usually you're forced
> >       into C wrapper interfaces to C++, to do this portably).
> >
> >    2. Availability of free (or near free) compilers for the
> >       platform.
> >
> > ( 3. Libraries is another, but I am going to leave that
> >       discussion out of this post. )
>
> Actually your points 1 and 3 are the same.

Not exactly. What I meant by "libraries" was something Ada-natural
like a thick binding. The #1 case is not going to provide
that kind of API.


> True, it would be nice to have
> better interpretably with pre-existing libraries, but this usually is a
> non-issue in a academic environment.  Some students will want to learn how
> to write GUI programs and so forth, but Ada already has pre-existing
> bindings for these tasks.  I agree that it would nice to have a thin-binding
> generator.  Perhaps you could start working on one?
>
> -CRM

Warren.




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 21:57                                                                                 ` Chad R. Meiners
@ 2003-11-20  2:12                                                                                   ` Warren Gay
  2003-11-20 18:27                                                                                   ` Stephen Leake
  1 sibling, 0 replies; 385+ messages in thread
From: Warren Gay @ 2003-11-20  2:12 UTC (permalink / raw)


"Chad R. Meiners" wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
> news:xKNub.11738$iT4.1349744@news20.bellglobal.com...
> > If all I had to do was add a Makefile command:
> >
> >     adagen freds_fft.h
> >
> > to generate a thin binding, in a consistent and
> > portable way, then I'd have mighty little resistance
> > to using Ada in a given project.
>
> Why would it be a makefile command?  Shouldn't you run the command once and
> then intergrate the resultant package into your project?

Yes, the make command will only run this
command _once_, unless you do something like
a "make clean" or "make clobber" and rebuild from scratch.

But it will be part of the make file ;-)

Warren.






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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 17:52                                                                             ` Stephen Leake
  2003-11-19 18:15                                                                               ` Hyman Rosen
@ 2003-11-20  3:03                                                                               ` Warren Gay
  2003-11-20 12:19                                                                                 ` Lutz Donnerhacke
  1 sibling, 1 reply; 385+ messages in thread
From: Warren Gay @ 2003-11-20  3:03 UTC (permalink / raw)


Stephen Leake wrote:

> "Stephane Richard" <stephane.richard@verizon.net> writes:
>
> > Maybe the Ada folks need to design a C/C++ to Ada
> > "binder", that is able to reliably take a C/C++
> > include file, and generate a spec and body that
> > can be used by other Ada programs (in thinish
> > binding mode).
> >
> > THIS NEEDS TO BE A STANDARD TOOL, that can be
> > counted on to work (no tweaking required),
> > to be consistent, and to be available with
> > the COMPILER toolset.
>
> Old news. Been tried many times before. Not possible in practice.
>
> The C preprocessor is just too powerful, and is used in too many
> interesting ways, to make this work.

I don't buy defeat at the pre-processor level. You give CPP
too much credit ;-)

Let's give this tool a name, say "thinbind" for discussion
purposes:

What thinbind would be required to do, is to preprocess the header
file somewhat differently than the C's preprocessor. Instead of
expanding all macro source code to C source code in one pass,
you would need to use an iterative approach. Consider:

Pass:

#1. Preprocess, expanding all C macros that involve code that does
     not compile into a constant (ie. any code fragment, or aggregate
     initialization construct etc.)

#2. Iterate #1 as necessary, until all code fragment macros have
     been expanded into C/C++ expressions that can be compiled
     into a single constant (string or numeric)

#3. All macro definitions that can compile into a folded constant,
     can now be translated into Ada constants of some form
     (universal numbers, unless overruled by the hints file,
     and string constants for use within the generated spec).

#4. Process full macro expansions (this now removes _all_ #defines
     from the header file). This may include macro function/procedures.

#5. Process all structures, constants and function prototypes, typedefs
     etc. (ie. everything else that C provides)

I believe iteration at the steps 1-2 are necessary, because the C
preprocessor may boil certain expressions down to constant or
string expressions, with enough macro substitutions (you wouldn't
want to lose out on these possibilities). Macros are often nested
to produce a consumable "manifest value".

Obviously any macros that provide C programmer conveniences, would
be a challenge (like putchar()). It should be possible
to infer inline Ada functions from them. I suppose one could apply the
following C test :

    Case 1 : with or without macro arguments
                 Does the code fragment represent a complete compilable
                 C statement/block? If so, is there an implied return value?
                 Define an inline procedure/function with
                 or without arguments matching the name.

   Case 2 : the defined macro components appear to not represent
                a complete statement, nor block of code. Just drop the
                code fragment, because it has already been used
                earlier for macro expansion and is no longer required.

These would be non-trivial tests to make, and yet, I believe these
are not insurmountable either. For example, visibility tests for all
named arguments, constants and functions could be done. If any
of them come up undefined (or in conflict), then you can assume
the macro just defines a code fragment.

#1 is also complicated by "do you expand macro functions?", or
do you "translate them into Ada inline functions?" I think you would
need to need to do both (a hints file could control this (see next)).

To help the process, you may want to give the programmer the
option of a hints file (vs comand line options, which may be too
many).

This can be preprocessed itself to allow conditional compilation
of what hints to use (to be very portable in the C sense). It could identify
macros that should not be expanded into procedures/functions
for example. It may provide a number of other hints, like entities
that if present in the header file, the Ada programmer is uninterested
in (perhaps C uses it as an intermediate macro to achieve the
end result). Or perhaps there may be cases where you want to
force something, or you need to resolve an ambiguous case.
Maybe you want a set of macros to be of a certain type, or to
use a default type.

Obviously name case is another C/C++ complication, and this can
make the generated code ugly. However, thinbind can check
for clashes if the name case is squashed, and only use ugly
distinguishing caseless conventions where clashes occur
in the Ada namespace. The hints file can also be used to
resolve this with an Ada friendly name of the programmer's
own choosing.

Obviously, C++ presents some special challenges. C++ templates may
not be practical to do, as some other poster has pointed out. But I
see that as a phase II project at best.

But I think C code can be handled in a well defined way.  This could
be a proof of concept project for the C++ effort to follow.

Warren.




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

* Re: Clause "with and use"
  2003-11-18 12:11                                     ` Marius Amado Alves
  2003-11-18 13:46                                       ` Preben Randhol
@ 2003-11-20  3:53                                       ` Brian Gaffney
  2003-11-20  9:20                                         ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Brian Gaffney @ 2003-11-20  3:53 UTC (permalink / raw)


"Marius Amado Alves" <amado.alves@netcabo.pt> wrote in message
news:mailman.25.1069157542.3110.comp.lang.ada@ada-france.org...
> I don't count keystrokes. My argument is for readability. I actually
> find
>
> with Gtk.Arguments;        use @;
> with Gtk.Button;           use @;
> with Gtk.Handlers;
>
> more readable than the canonical form. And more pleasing, which can also
> be a quality factor. Natural language has lots of pronouns for good
> reason.
In that case shouldn't the above be

   with Gtk.Arguments;        use it;
   with Gtk.Button;           use it;
   with Gtk.Handlers;

(Does this imply we could have

   with Gtk.Arguments, Gtk.Button;  use them;
   with Gtk.Handlers;

:-)

Also, wouldn't

   with use Gtk.Arguments, Gtk.Button;

be cleaner (but less readable) than

   with and use Gtk.Arguments, Gtk.Button;





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19 20:48                                                                       ` Dmytry Lavrov
  2003-11-19 21:10                                                                         ` Hyman Rosen
  2003-11-20  1:34                                                                         ` Robert I. Eachus
@ 2003-11-20  6:31                                                                         ` Russ
  2003-11-20 11:35                                                                           ` Dmytry Lavrov
                                                                                             ` (2 more replies)
  2 siblings, 3 replies; 385+ messages in thread
From: Russ @ 2003-11-20  6:31 UTC (permalink / raw)


dmytrylavrov@fsmail.net (Dmytry Lavrov) wrote in message news:<49cbf610.0311191248.7eb48a43@posting.google.com>...

> How you will "prove" that "nuclear plants is more harmless than solar
> power"?

Go to http://RussP.org/nucpower.htm and click on the article called
"The Hazards of Nuclear Power" by Bernard L. Cohen. Cohen is one of
the top experts in the world on this topic and was awarded the Health
Physics Society Distinguished Scientific Achievement Award. The
article is excellent and well worth reading, but if you don't have
time to read it, scroll down to Table 1: Deaths per 1,000 MW plant per
year of operation due to wastes. There you will see figures showing
that solar power is nowhere as safe or as clean as nuclear power. And
I'm talking about a difference of several orders of magnitude.

You probably think that's absurd, but that's only because you are
badly misinformed, hence you haven't really had the opportunity to
think things through. Don't feel too bad -- it's very common these
days. You see, solar power requires more than sunlight hitting the
earth. It requires truly massive amounts of materials to collect it
and convert it to electric power on a large scale. We're talking about
tens of square miles of collector surface to equal the power output of
a large nuclear power plant. So much energy goes into producing the
solar materials that you don't break even on the energy balance for
quite a while. (I can't remember the figures off hand, but I think
it's years in non-desert climates.)

Once you know the basic facts, it is easy to understand why nuclear
power is orders of magnitude safer that solar power could ever be. But
don't hold your breath waiting for the mass media to suddenly start
informing the public about it.



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

* Re: Clause "with and use"
  2003-11-19 17:46                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-20  8:26                                                                     ` Dmitry A. Kazakov
  0 siblings, 0 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-20  8:26 UTC (permalink / raw)


On Wed, 19 Nov 2003 12:46:23 -0500, "Warren W. Gay VE3WWG"
<ve3wwg@cogeco.ca> wrote:

>Dmitry A. Kazakov wrote:
>
>> On Mon, 17 Nov 2003 11:42:45 -0500, "Warren W. Gay VE3WWG"
>> <ve3wwg@cogeco.ca> wrote:
>> 
>>>Dmitry A. Kazakov wrote:
>>>
>>>>On Fri, 14 Nov 2003 09:51:33 -0500, "Warren W. Gay VE3WWG"
>>>><ve3wwg@cogeco.ca> wrote:
>>>>
>>>>>Dmitry A. Kazakov wrote:
>>>>>
>>>>>>On Thu, 13 Nov 2003 12:51:51 -0500, "Warren W. Gay VE3WWG"
>>>>>><ve3wwg@cogeco.ca> wrote:
>>>
>>>...
>>>
>>>>There should be something wrong with the language, if the following is
>>>>illegal:
>>>>
>>>>with Ada.Io_Exceptions;
>>>>package A is
>>>>   End_Error : exception renames Ada.Io_Exceptions.End_Error;
>>>>end A;
>>>>
>>>>with Ada.Io_Exceptions;
>>>>package B is
>>>>   End_Error : exception renames Ada.Io_Exceptions.End_Error;
>>>>end B;
>>>
>>>This is more sillyness. When you USE both packages, you take
>>>a hierarchical name space and flatten it. So what else would
>>>you expect if there were clashes?
>> 
>> 
>> I expect renaming be renaming. So A.End_Error and B.End_Error should
>> not clash in any context. Compare it with :
>> 
>> package A is
>>    X : Integer;
>> end A;
>> 
>> with A;
>> package B renames A;
>> 
>> with A; use A;
>> with B; use B;
>> procedure Test is
>> begin
>>    X := 1; -- This is OK
>> end Test;
>> 
>> This example illustrates the fact that package renaming *is* a
>> renaming.
>> 
>> The example with End_Error shows that object renaming is something
>> very different.
>
>OK, I see where you're going with this now. I did overlook
>the renames clause. I don't have an issue with this myself,
>given that the "ending point" refers to the same thing.
>
>While resolving this specific issue would help, it would not
>resolve the general problem with other name clashes.

I suppose there could be much less name clashes if object renaming be
true renaming and if types could be renamed instead of dubious
"subtype X is Y;"

Further, if all types would be tagged, then almost all non-class-wide
operations would be primitive. So instead of a plethora of
overloadings we would have overridings, which do not clash.

Further, if multiple dispatch would be supported, then many cases of
class-wide subprograms would become primitive operations and again
name clashes would disappear.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: Clause "with and use"
  2003-11-20  3:53                                       ` Brian Gaffney
@ 2003-11-20  9:20                                         ` Preben Randhol
  0 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-20  9:20 UTC (permalink / raw)


On 2003-11-20, Brian Gaffney <brian.gaffney@myrealbox.com> wrote:
> In that case shouldn't the above be
>
>    with Gtk.Arguments;        use it;
>    with Gtk.Button;           use it;
>    with Gtk.Handlers;

no no no you would have to have something like you suggest below: with
and use.

But I still lack any explanation as to WHY we need this? I do not
understand at all why this is an imporant issue at all.

>    with and use Gtk.Arguments, Gtk.Button;


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-19 20:01                                                                         ` Robert I. Eachus
@ 2003-11-20  9:30                                                                           ` Preben Randhol
  2003-11-20 14:43                                                                             ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-20  9:30 UTC (permalink / raw)


On 2003-11-19, Robert I. Eachus <rieachus@comcast.net> wrote:

While nuclear plants may be safe (depending on design) while operated
properly, what would happen if one was attacked by terrorist? What would
have happened if the morons had crashed a plane in a couple of nuclear
plants and not in the Twin Towers? 

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 21:07                                                                               ` Wes Groleau
@ 2003-11-20  9:31                                                                                 ` Preben Randhol
  0 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-20  9:31 UTC (permalink / raw)


On 2003-11-19, Wes Groleau <groleau@freeshell.org> wrote:
> Marin David Condic wrote:
>> Ultimately, what Ada needs is to have the same sort of libraries that 
>> C/C++ does but written directly in Ada and in Ada style. Don't duplicate 
>> - innovate. Ada doesn't have to have a parallel for *every* C/C++ 
>
> Sometimes, my approach is first duplicate, then improve.
> (Translate, and then make it elegant)

Or thin binding -> thick binding ?

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20  1:34                                                                         ` Robert I. Eachus
@ 2003-11-20 10:21                                                                           ` Dmytry Lavrov
  2003-11-20 13:40                                                                             ` Robert I. Eachus
  2003-11-20 15:49                                                                             ` OT: Nuclear Waste (Was Re-Marketing Ada) Alexandre E. Kopilovitch
  0 siblings, 2 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-20 10:21 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<e4GdncAXgaq9hyGiRVn-hg@comcast.com>...
> Dmytry Lavrov wrote:
> 
> > As with antigravitation:for loong time peoples want it to solve some
> > problems,it's useful.Time-mashine:for far longer time peoples want
> > it,where that time mashine????Show me antigravity!!
> > Teleportation?,hehe.
> 
> Dmyytry, Dmytry, you really need to catch up on your technical reading:
> 
> Teleportation: http://www.aip.org/physnews/graphics/html/teleport.htm
> 
> Time travel: http://www.sciencenews.org/sn_arc98/4_11_98/fob3.htm
> 
> Superluminal communication: 
> http://adsabs.harvard.edu/cgi-bin/nph-bib_query?1999quant.ph..6113S

Don't want to discuss more with someone who don't think that it's
cheating _by_ _default_  . There was too many teleportations and
superluminal communications and  time travel reports all over
20th,19th,18th and even 17th century,
to many years BC.In next 10 years you will foget about links you're
providing,and will use links to other sci-fi.

You're fooled so simple by officially-looking things,exactly like my
aunt(don't sure in word)("(the) mother's sister").She founds something
in news,talking about it,then nothing happening,no more info about
that experiment.She founds other discovery in the news. Same for
radioactivity - you're fooled by official point of view that there's
some great discoveries now or that radioactivity isn't dangerous.

> 
> The importance of the third paper is that teleportation requires a 
> communication channel, so if you want to go some long distance and not 
> spend a long time doing so, you need a superluminal (faster than light) 
> communciation path.  This paper shows that superluminal communication 
> does not involve causal loops, i.e. time travel.
> 
> The first (impractical) demonstration of superluminal communication was 
> by Nimtz: Nimtz, G. "Superluminal Signal Velocity." Ann. Phys. 7, 61-68, 
> 1998.
> 
> Notice that all these results are so last century. ;-)
> 
> > Too wishful thinking about nuclear reactors using deiterium and
> > tritium.Quite unlikely(but possible) that in next 50 years we will
> > have  it.
> > If our childs will be able to use that waste in next 50 years,we
> > should have so simple thing as H-reactors NOW.
> 
> Practical tokamaks however, may be a fairy tale.

Don't see something useful.Even that tokamak is russian word ;-).


Okay,let's assume that you're right that radioactivity is not so
dangerous.But you at least should agree that we all alive now(no
ww3,no ww4) only because radioactivity is known as dangerous
thing.ONLY.And you would like to inform all word that "it's wrong"....

Govs also want to do that,to start using nukes in wars,to make safety
standards lower ,etc.Many officials "benefits" from under-estimating
level of danger.There's big money spent on that propagation.All that
awards to someone showing that it's isn't dangerous..on writing
fooling papers about safety,or about tank armour,etc. And another
side:how many money specially spent on "fooling" peoples that it's
dangerous? Show me any personal Bill Gates spending money on that as
many as govs spend for opposite direction.Of course you can talk about
mass-media,about doing money,but again show me organisation that
spends money from other sources on "fooling peoples" that it's
dangerous.


About m1 armour:official idiotic point of view.Of course danger that
someone will fire that tank by shot from T72 is highter than danger
from radioactivity,but you're fooled by official point that there's
less radioactivity in tank than normal background.


When i'm in moscow metro(underground) in tonnel without granite on the
walls,there's 0.1 or less of normal background(myself measured).When
i'm on station,there's equal or highter than normal background.And now
explain _how_ trick uranium armour is less radioactive than thin
plates of granite(they contain really small precent of uranium,and
even smaller precent of chains)?


Paint,radium light wathes,etc:Old official point of view.Not used
anymore.It now found really dangerous,and now it's in well-known
safety standards.Radiation on hand from 'em is 10..50 times more
radioactive than background(i have compass from aircraft,there's more
than 50 times bigger radioactivity than background,myself
measured).Also radium turns fluorescencing paint into non-luminous
scrap,that's sign of high enought radioactivity to turn all your DNA
into scrap too.
Even normal background sometimes causes some changes in DNA leads to
cancer.Having that watches only increases probablity.

Americium in smoke detectors:What idiot and from what hell got idea
about putting radioactive and dangerous as toxic because hardly
detectable because it's alfa-particles source,and not-so-cheap
material into smoke detector ??? There's no need for something
radioactive.Just led and photodiode,as used in other countries.


My IMO that long time after doing Chirosima ,Americans need fooling
himself,that thing they do is not so bad."Raskolnikov's sindrom".


To burrow waste we really need time mashine,to predict future,that
nothing will happen with that waste. Or there's chances our childs
will have to un-burrow that waste,it will cost orders of magnitude
more than burrowing,and it will be quite dangerous.


Also,your point of view is the same as USSR Stalin's time point of
view,do you know?  "Not so dangerous", "burrow and foget" , "cheapest
way" , "First time in the world nuclear power civilly used in
USSR,while USA imperialistic capitalists only using that for war" .
Translate your messages into russian,and voila,ready for "Pravda"
(search ~Heinlein Pravda means Truth~  in  google for information)

Now we have to remember/find and unburrow because that wastes going
into underground rivers.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20  6:31                                                                         ` Russ
@ 2003-11-20 11:35                                                                           ` Dmytry Lavrov
  2003-11-20 18:04                                                                             ` Chad R. Meiners
  2003-11-20 12:49                                                                           ` Georg Bauhaus
  2003-11-20 14:10                                                                           ` Robert I. Eachus
  2 siblings, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-20 11:35 UTC (permalink / raw)


18k11tm001@sneakemail.com (Russ) wrote in message news:<bebbba07.0311192231.48b3056a@posting.google.com>...
> dmytrylavrov@fsmail.net (Dmytry Lavrov) wrote in message news:<49cbf610.0311191248.7eb48a43@posting.google.com>...
> 
> > How you will "prove" that "nuclear plants is more harmless than solar
> > power"?
> 
> Go to http://RussP.org/nucpower.htm and click on the article called
> "The Hazards of Nuclear Power" by Bernard L. Cohen. Cohen is one of
> the top experts in the world on this topic and was awarded 

Of course was awarded because "someone" need to award papers that show
that plants isn't dangerous.

> the Health
> Physics Society Distinguished Scientific Achievement Award. The
> article is excellent and well worth reading, but if you don't have
> time to read it, scroll down to Table 1: Deaths per 1,000 MW plant per
> year of operation due to wastes. There you will see figures showing
> that solar power is nowhere as safe or as clean as nuclear power. And
> I'm talking about a difference of several orders of magnitude.
> 
> You probably think that's absurd, but that's only because you are
> badly misinformed, hence you haven't really had the opportunity to
> think things through. Don't feel too bad -- it's very common these
> days. You see, solar power requires more than sunlight hitting the
> earth. It requires truly massive amounts of materials to collect it
> and convert it to electric power on a large scale. We're talking about
> tens of square miles of collector surface to equal the power output of
> a large nuclear power plant.

What with agro-culture danger?Probably bigger than nuclear plants too?
Hehe,nuclear plants probably the safest thing on the planet ;-)

Anyway,they more_or_less_safe only because and while level of danger
from radioactivity is considered as high!We all alive now(no WW3)
because of that!
And you truing to "show that it's wrong".Ok,maybe wrong.But
_even_if_that_ my point is at least quite useful.

Why did you so like your point of view and so want to turn everyone
into it even if it will surely cause safety levels to fall,and might
even cause small nuclear wars?

My point of view is quite common now,and it's point of view with
pressure of that reactors are more-or-less safe now.Pressure of that
point of view don't causes to build less nuclear plants,all plants was
developed and build with this point as common. Yes,Chernobil caused to
build less plants.It was warning,we always need warnings to avoid
stupid things,like Chirosima and Nagasaki helps us to avoid nuclear
wars(anyway,second bomb was complete stupidity).

I recommend you to think on what will cause your point of view if
becomes common?To what side it will change safety?

> So much energy goes into producing the
> solar materials that you don't break even on the energy balance for
> quite a while. (I can't remember the figures off hand, but I think
> it's years in non-desert climates.)
> 
> Once you know the basic facts, it is easy to understand why nuclear
> power is orders of magnitude safer that solar power could ever be. But
> don't hold your breath waiting for the mass media to suddenly start
> informing the public about it.

Yes,there's more peoples engaged in building and mantaining solar
station.
But they works with risk same as risk we have when working on computer
or risk when walking,risk when we live.They anyway have to live and
work with that risk,on any normal job risk is the roundly same.It's
pretty inpossible to make something less dangerous.And there's more
accidents possible because there's more peoples engaged.It gives jobs
for peoples,do you think that jobs is bad because of risk existant on
any job or without any job?

That calculations is speculative.Developing
[non-safety-critical]software with 40 programmers is 4 times more
dangerous to programmers than with 10 ?

Estimation of level of danger by govs/officials/gov-awarded persons is
a theme for "evil anekdotes"(don't sure in my english).For
example,Space Shuttle.Claimed as safe as 1/100.000 .As Feyman
sayd,it's one launch per day and one failure per 270 years,it's simple
enought to check,isn't it?  So many orders of magnitude
underestimation of danger.

Show one example where gov's (esp. american govs as govs of leading
country) wasn't underestimated any danger(nuclear plants is not a
example for sure.Show example of something done by govs where was and
was expected many enought fails and fails was estimated by gov at
more-or-less careful level,non-harmless things like lifetime of light
bulbs is not about that).

2 shuttles.... we should launch every day for 540 years without any
problems now.

Pretty sure that with reactors there's something like that.



Of course i know(but mainly hope) that Chernobil is inpossible on
power plants commonly used in USA and western Europe.But waste
reprocessing plants are dangerous anywhere,and anywhere power plants
is lot safer than reprocessing plants.Even at normal processing on
reprocessing plant,there's leaks of waste into atmosphere and water.


Assume that terrorists hit reprocessing plant.It's second Chernobil.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-17 18:01                                                                 ` Hyman Rosen
@ 2003-11-20 12:14                                                                   ` Georg Bauhaus
  2003-11-20 15:14                                                                     ` Hyman Rosen
  0 siblings, 1 reply; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-20 12:14 UTC (permalink / raw)


Hyman Rosen <hyrosen@mail.com> wrote:

:  For an anti-nuclear activist, there is no storage
: facility that can ever be safe enough, there is no means of
: transporting the waste to the facility that can ever be safe
: enough, and there is no form of nuclear power that can ever
: be safe enough.

For pro-nuclear-facilities activists there is safety
and a funny mathematics of risk percentages, I could say.

Why do people get agitated instead of comparing risks of
commercial and military employment of different dangerous technologies?
Compare the risk of failing contraceptives (9x %) and
the risk of failing Plant<typename Technology>(9x %).
Figures in nearly the same range, risks in nearly the same range?
Can you compare risk numbers?

Nuclear Waste is at best a subsidiary subject I think, ideally suited
to distracting attention from the whole set of risks which is 
multidimensional.

A *scientist* has said that as long as there is no proof that some
products of largely untested "alpha"-technology impose a risk, though
collegues say they might, he is free to use it in every setting he
chooses, inside or outside the lab. (Genetically manipulated plants
in this case.)


Georg



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20  3:03                                                                               ` Warren Gay
@ 2003-11-20 12:19                                                                                 ` Lutz Donnerhacke
  2003-11-20 18:01                                                                                   ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Lutz Donnerhacke @ 2003-11-20 12:19 UTC (permalink / raw)


* Warren Gay wrote:
> What thinbind would be required to do, is to preprocess the header
> file somewhat differently than the C's preprocessor. Instead of

This destroys most of the original C API in a unusable way.

> Obviously any macros that provide C programmer conveniences, would
> be a challenge (like putchar()). It should be possible
> to infer inline Ada functions from them. I suppose one could apply the
> following C test :
>
>     Case 1 : with or without macro arguments
>                  Does the code fragment represent a complete compilable
>                  C statement/block? If so, is there an implied return value?
>                  Define an inline procedure/function with
>                  or without arguments matching the name.

Hard work. Especially when considering marco expansion down to the plain
syscall (Linux).

>    Case 2 : the defined macro components appear to not represent
>                 a complete statement, nor block of code. Just drop the
>                 code fragment, because it has already been used
>                 earlier for macro expansion and is no longer required.

Almost all API constants are marcos. A major part of structures are of compiler
option dependant design. Several structures are different in the man page
and in the implementation. Several macros are used to transform the API
conforming code into the real structure. This can't be ignored.

> #1 is also complicated by "do you expand macro functions?", or
> do you "translate them into Ada inline functions?" I think you would
> need to need to do both (a hints file could control this (see next)).

Thin binding to C is expected as a function/procedure and some
types/constants which can be combined like described in the C API man pages.

So you have to start from the man page and fill in the blanks by designing
the Ada types(!) and calls like expected. Then you have to find out how
these API-types are really defined and used. In a good number of cases you
need quite a different type than described in the man page. C does not know
about variant records and therefore collects a lot of things via unions and
some paragraphs of English text. This has to transformed to an approbriate
Ada type.

> But I think C code can be handled in a well defined way.

I tend to disagree. BTDT.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 13:05                                                                               ` Stephane Richard
@ 2003-11-20 12:40                                                                                 ` Marin David Condic
  2003-11-20 13:09                                                                                   ` Stephane Richard
  0 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-20 12:40 UTC (permalink / raw)




Stephane Richard wrote:
> 
> Wish more vendors would read (and understand clearly) this last paragraph of
> yours.  ISO does nothing as far as libraries go.  If we were to do a library
> and submit it to the ISO for inclusion, not sure what would happen then
> since they don't deal with libraries in the first place.  They would
> prpbably have to create something, a sub group or an annotation to the
> standard for libraries or something to do anything about including a
> library. and I'm not sure if they would.
> 
ISO is not the way to go. Any library would have to react too quickly to 
  changes in the world around it and freezing it in a standard would be 
to strangle it. Also, it is difficult to write up verifiable 
requirements such that you could validate against an ISO standard. It 
really isn't the place for it.

If the vendors themselves don't want to distribute it, one could 
conceive of other alternatives for a library, but I *still* think that 
it doesn't gain that "de facto standard" status unless you at least have 
the vendors somehow pointing their customers off to it or have something 
semi-official (like SIGAda) behind it.


> This is like 3rd party vendors for other languages.  they're there, but the
> commercial compilers don't include them per se in their distributions.
> Somebody else manages and sells it.  Not the language makers.  (unless it
> becomes so popular and useful) and this last parenthesis might be what we
> need to aim for.

It would be conceivable that one might start being a library vendor - 
there are small companies that sell C libraries for specialized 
purposes. However, you'd need to look at the economics of it: Is there 
enough Ada out there to make an Ada library a self-sustaining business? 
Especially considering you have no support from the vendors or any 
guarantee that your library gets considered to be the de facto standard. 
  I think that writing it, documenting it and maintaining it would be a 
full-time job for probably more than one guy. So either it has to 
generate enough income to provide that one or more guys with their 
weekly beer budget plus rent, or it needs to be done by the 
independently wealthy philanthropic Ada developers out there who have 
nothing better to do with their time and money.

SIGAda might make a forum for doing it, but I'd think it would need a 
small team that was able to get together frequently to argue it out. It 
also would likely need a little representation from the vendors to gain 
some perspective on what customers might want. That would be a volunteer 
effort so it would take a long time before something got very large, but 
it would at least have some kind of official standing.

MDC




-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20  6:31                                                                         ` Russ
  2003-11-20 11:35                                                                           ` Dmytry Lavrov
@ 2003-11-20 12:49                                                                           ` Georg Bauhaus
  2003-11-20 13:02                                                                             ` Vinzent 'Gadget' Hoefler
  2003-11-20 14:10                                                                           ` Robert I. Eachus
  2 siblings, 1 reply; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-20 12:49 UTC (permalink / raw)


Russ <18k11tm001@sneakemail.com> wrote:
: dmytrylavrov@fsmail.net (Dmytry Lavrov) wrote in message news:<49cbf610.0311191248.7eb48a43@posting.google.com>...
: 
: Once you know the basic facts, it is easy to understand why nuclear
: power is orders of magnitude safer that solar power could ever be.

Then explain: The loss of life expectancy due to ars*&l.$ driving
planes into buildings is ridiculously low, when compared to what
the article has to say about coal burners.
Why do they make such a fuss about a few thousand "fatalities",
spending billions on weapon systems, sending soldiers around
the world, apparently because of comparatively very few "fatalities"
(a word from the article)?

The article's argument is based on a certain view of risk, which it
points out. "Yet there has not been a single fatal accident in the
United States involving radiation for 25 years". What if there is
just one (be that whatever dangerous technololy is used),
what is the number Cohen will predict?
And still, in the light of a very low "probability of death" due to
plane crashes, the USA has become an unsafe place to live so there
needs to be a great deal more of homeland protection (all over the
world)?  Is that the mentioned single fatal accident that suddenly
readjusts the risk measuring policy?

Ah, well, of course! It's the media! ;-)

J. A. Paulos, "Innumeracy", has further examples and praise.


Georg



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
  2003-11-19 21:57                                                                                 ` Chad R. Meiners
  2003-11-20  1:39                                                                                 ` Wes Groleau
@ 2003-11-20 12:57                                                                                 ` Marin David Condic
  2003-11-20 17:47                                                                                   ` Warren W. Gay VE3WWG
  2 siblings, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-20 12:57 UTC (permalink / raw)


Warren W. Gay VE3WWG wrote:
> 
> 
> I have never had a problem with multi language projects. This
> only becomes a problem when impedance mismatches occur on
> interfaces and objects, in my experience.
> 
Yeah, but if your compiler is C and all the libraries in your problem 
domain are C and your operating system is C and all your de3velopment 
tools are in C and all your programming expertise is in C, it gets 
*really* tough to argue that it is economical to do some project in Ada. 
Everything that diverges back to some other language is another reason 
to avoid Ada. Hence, the effort should be to make Ada as capable as 
possible to remove the impediments to using it.

> 
> If all I had to do was add a Makefile command:
> 
>    adagen freds_fft.h
> 
> to generate a thin binding, in a consistent and
> portable way, then I'd have mighty little resistance
> to using Ada in a given project.
> 

Yeah, sure, there is nothing wrong with having an automatic translator 
to help you get a binding. I'm not against that. I just don't think it 
is a) the final answer, b) the best answer or c) the answer that is 
going to persuade C hackers to come over to Ada. It *still* comes down 
to "I've already got everything I need with C/C++ so why do I want to 
add effort and expense to my project by doing some part of it in Ada?" 
There has to be some really compelling reason to do that.

Consider that if Ada had some really spiffy library that did some 
wonderful things for a given problem domain and that this was a major, 
new advantage over C++ in some way. Then someone says "I want to use Ada 
to gain access to those features." C/C++ probably won't bind to Ada real 
well - or at least they'd need to develop a binding in Ada that reduced 
things to a level that C could handle. (Give the caller all sorts of 
pointers instead of the data, etc.) So now you've got a good economic 
reason why someone ought to do some part of their development in Ada. At 
that time, the ability to bind to C becomes an asset to them.



> The tough sell is when you have to report to management that
> it will add 3 weeks of work to build a binding to Fred's
> FFT routine, in order to use Ada. Project management will
> then ask, "can it be done in C/C++?" As soon as you answer
> affirmative to this, in the GP (non-embedded, non safety
> critical) world, the project management answer will be to
> use C/C++ instead. Bye bye Ada!
> 
> If instead, you don't have to add those 3 weeks to the
> project schedule, project management might even encourage
> the use of Ada, if it even cares. Alternatively, you
> might not even have to bring it up ;-)
> 
> For Open Source developers, I think this can make a difference
> too. Everyone has a limited free time, unless you have
> just won the lottery (but then would you still be coding? ;-)
> 

Ada has traditionally focused in on life-cycle costs and the problem is 
that for *most* development situations, the whole life cycle is 
irrelevant. Its the Time To Market that is critical. Development 
projects have to get done *Quickly* in most cases because getting there 
first means market dominance or (in the case of spare-time developers 
and some other projects) there is limited budget to get the project to 
completion. Hence, Ada ought to do something to try to add that 
leverage. Show your garden variety C++ programmer that he can get his 
job done in half the time (and have lower maintence thrown in as an 
added bonus) and maybe you've got something he is willing to look at.

MDC


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 12:49                                                                           ` Georg Bauhaus
@ 2003-11-20 13:02                                                                             ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-20 13:02 UTC (permalink / raw)


Georg Bauhaus wrote:

>Then explain: The loss of life expectancy due to ars*&l.$ driving
>planes into buildings is ridiculously low, when compared to what
>the article has to say about coal burners.

Right. And now compare that with the number of fatal car accidents
every year. ... - As a matter of fact, human mankind is killing
itself. This way or another.

Does it really matter *how* we achieve that? Something will survive.


Vinzent.

-- 
np: Kate Bush - Feel It



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20 12:40                                                                                 ` Marin David Condic
@ 2003-11-20 13:09                                                                                   ` Stephane Richard
  2003-11-20 13:37                                                                                     ` Marin David Condic
  0 siblings, 1 reply; 385+ messages in thread
From: Stephane Richard @ 2003-11-20 13:09 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3495 bytes --]


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FBCB64F.90703@noplace.com...

> ISO is not the way to go. Any library would have to react too quickly to
>   changes in the world around it and freezing it in a standard would be
> to strangle it. Also, it is difficult to write up verifiable
> requirements such that you could validate against an ISO standard. It
> really isn't the place for it.
>
> If the vendors themselves don't want to distribute it, one could
> conceive of other alternatives for a library, but I *still* think that
> it doesn't gain that "de facto standard" status unless you at least have
> the vendors somehow pointing their customers off to it or have something
> semi-official (like SIGAda) behind it.
>
*** Well pointing to it, without offering support to it per se is a
different avenue than having the vendor supply the library with his compiler
I think.  Might be an easier to reach goal.  I think they would probably all
agree to point to it :-). it would al teast get it know and propagated
(especially if it's a "at least minimal" quality library).
>
> It would be conceivable that one might start being a library vendor -
> there are small companies that sell C libraries for specialized
> purposes. However, you'd need to look at the economics of it: Is there
> enough Ada out there to make an Ada library a self-sustaining business?
> Especially considering you have no support from the vendors or any
> guarantee that your library gets considered to be the de facto standard.
>   I think that writing it, documenting it and maintaining it would be a
> full-time job for probably more than one guy. So either it has to
> generate enough income to provide that one or more guys with their
> weekly beer budget plus rent, or it needs to be done by the
> independently wealthy philanthropic Ada developers out there who have
> nothing better to do with their time and money.
>
*** Right now, economically speaking, with the current "GP" user base, it
might be suicide.  The library would play a secondary role, not a primary
one at spreading the Ada word I think.  like a vicious circle, is it the
library or the language vendors that are going to make it work?  Partly
both, in each their different realms, perhaps.  But I think the ones with
the financial backbone to "advertise" Ada properly are the one sthat should
start the big wheel turning.  Hence the vendors.  We could make a "never
before seen" library that can control the world. But if nobody uses the
language we make it for, no one will even control the world "so to speak
:-).  Granted, a library might e a good selling point, although most don't
seem to see it that way unless ISO tells them to see it that way, but no one
ever needed ISO in any other languages to make their mark  Like you said,
ISO isn't the place for it, at least not without specific reorganization for
Standard library mamagement.

> SIGAda might make a forum for doing it, but I'd think it would need a
> small team that was able to get together frequently to argue it out. It
> also would likely need a little representation from the vendors to gain
> some perspective on what customers might want. That would be a volunteer
> effort so it would take a long time before something got very large, but
> it would at least have some kind of official standing.
>
> MDC

*** I agree with you here, it would make a whole lot of sense.
-- 
St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20 13:09                                                                                   ` Stephane Richard
@ 2003-11-20 13:37                                                                                     ` Marin David Condic
  0 siblings, 0 replies; 385+ messages in thread
From: Marin David Condic @ 2003-11-20 13:37 UTC (permalink / raw)


Stephane Richard wrote:
>>SIGAda might make a forum for doing it, but I'd think it would need a
>>small team that was able to get together frequently to argue it out. It
>>also would likely need a little representation from the vendors to gain
>>some perspective on what customers might want. That would be a volunteer
>>effort so it would take a long time before something got very large, but
>>it would at least have some kind of official standing.
>>
>>MDC
> 
> 
> *** I agree with you here, it would make a whole lot of sense.

Here's the thing: I'd be willing to spend some time serving on a SIGAda 
committee to develop a library, but realistically, it would involve a 
bunch of guys from all over the place who could only communicate 
regularly via e-mail and maybe get together once or twice a year if they 
could fund their own travel. (Does anyone's company still support travel 
to SIGAda conferences?) I've been involved in this sort of attempt 
before where it was all e-mail and web pages and such and it never got 
anywhere. You need a *small* team of guys and they need to get together 
fairly regularly to have discussions and arguments about what it all 
ought to look like. Once you got some overall framework set and got a 
first-cut of a library going, *then* you could hand off individual 
pieces of work and do it over the internet.

If I had a half-dozen people in my local area willing to do a SIGAda 
chapter & get to be a SIGAda committee on libraries, it might be 
practical. I'd even be able to host it at my company. The problem is 
that the interested parties are all scattered all over the world and you 
*really* would need to do some very regular meetings to get something 
off the ground.

If I had a team locally and they were dedicated to getting a library 
going, I'd think that once a week for the first few months would be what 
was needed to get an all-volunteer library going. From there, it might 
be something needing less effort - or at least less face-to-face effort. 
There might be people willing to make the committment - especially if 
they saw an opportunity for some personal gain there - but despite 
technology, you still need to get together geographically. (Its really 
hard to get your fingers around someone's neck when they are a thousand 
miles away. :-)

Maybe it is doable where someone has a "pocket of Ada" in a local area - 
some big company using Ada with at least a half-dozen die-hard fans 
willing to do that work. I don't see it here in Beautiful Downtown Palm 
Beach Gardens, Florida. There are a very small handful of Ada fans that 
I know, but they don't love Ada *that* much. :-)

MDC
-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 10:21                                                                           ` Dmytry Lavrov
@ 2003-11-20 13:40                                                                             ` Robert I. Eachus
  2003-11-20 18:00                                                                               ` Alexandre E. Kopilovitch
  2003-11-29 23:22                                                                               ` Dmytry Lavrov
  2003-11-20 15:49                                                                             ` OT: Nuclear Waste (Was Re-Marketing Ada) Alexandre E. Kopilovitch
  1 sibling, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20 13:40 UTC (permalink / raw)


Dmytry Lavrov wrote:

>>Dmyytry, Dmytry, you really need to catch up on your technical reading:
>>
>>Teleportation: http://www.aip.org/physnews/graphics/html/teleport.htm
>>
>>Time travel: http://www.sciencenews.org/sn_arc98/4_11_98/fob3.htm
>>
>>Superluminal communication: 
>>http://adsabs.harvard.edu/cgi-bin/nph-bib_query?1999quant.ph..6113S
> 
> 
> Don't want to discuss more with someone who don't think that it's
> cheating _by_ _default_  . There was too many teleportations and
> superluminal communications and  time travel reports all over
> 20th,19th,18th and even 17th century,
> to many years BC.In next 10 years you will foget about links you're
> providing,and will use links to other sci-fi.

Huh?  The difference as far as I am concerned is that 1) they have done 
the math--all of the above results are consistant with quantum 
mechanics, etc.  And 2) these are reputable scientific experiments, with 
enough information published that 3) the results have been duplicated.

As for the Nimtz (superluminal communication) there have been a number 
of papers challenging whether or not it is a practical method.  I think 
it can be developed into a technique where you have alternating 
forbidden and amplifying regions in a waveguide.  The average data 
velocity would then be in the 2 to 3x lightspeed range.  But there is no 
bogus science in any of the papers or results I mentioned.  (The 
original quantum teleportion result involved only a single photon at a 
time, but people are working on scaling it up.  I think an electron has 
now been teleported, and the next project is to teleport a single atom.) 
   Startrek like teleportation of people is decades if not a century 
away, but at this point it is engineering, no new physics required.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20  6:31                                                                         ` Russ
  2003-11-20 11:35                                                                           ` Dmytry Lavrov
  2003-11-20 12:49                                                                           ` Georg Bauhaus
@ 2003-11-20 14:10                                                                           ` Robert I. Eachus
  2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
                                                                                               ` (2 more replies)
  2 siblings, 3 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20 14:10 UTC (permalink / raw)


Russ wrote:

> Once you know the basic facts, it is easy to understand why nuclear
> power is orders of magnitude safer that solar power could ever be. But
> don't hold your breath waiting for the mass media to suddenly start
> informing the public about it.

I looked at that data Russ, and while the risks from nuclear power 
plants look correct, the threat of coal burning plants is significantly 
understated.  Offhand, two major factors omitted are grade crossing 
accidents involving trains hauling coal to power plants, and the loss of 
life from mining the coal.  As I recall, the estimates for both are in 
the range of 1 to 2 deaths per year of operation.  Nowhere near the 
numbers for air pollution, but greater than the numbers for radon 
emissions and cancer causing chemicals.

But of course, the biggest shocker for those who haven't studied the 
issue is that the net effect of nuclear power plants is to significantly 
reduce the long-term exposure of the population to radiation.  Radon is 
nasty.  It is a gas and has a long enough lifetime to seep from the 
ground into enclosed places, then it decays into several other 
radioactive isotopes, some of which are also biologically active.  (For 
example, actiniums tends to accumulte in bones.)

Since nuclear reactors are designed to "burn-up" the radon emitted from 
the uranium in the fuel, and capture the heat generated, as long as the 
radon captured when mining the original ore is dealt with, the net risk 
from nuclear power plants is negative--they save more lives than they 
consume.  (This is true even if you add in the deaths associated with 
the construction and decomissioning of the reactor.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20  9:30                                                                           ` Preben Randhol
@ 2003-11-20 14:43                                                                             ` Robert I. Eachus
  2003-11-20 14:55                                                                               ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20 14:43 UTC (permalink / raw)


> On 2003-11-19, Robert I. Eachus <rieachus@comcast.net> wrote:

(No, I didn't.)



Preben Randhol wrote:

> While nuclear plants may be safe (depending on design) while operated
> properly, what would happen if one was attacked by terrorist? What would
> have happened if the morons had crashed a plane in a couple of nuclear
> plants and not in the Twin Towers? 

1) Everyone on the plane would get very dead.

2) If they crashed into the containment building, the plant could keep 
operating.  If they crashed several planes into the same containment 
building, they might penetrate it.  That doesn't mean the reactor would 
be damaged, but that the containment building around it could probably 
be breached by several fully-loaded 747s hitting the same spot. (The 
requirement for US nuclear plants is that they survive ONE crash of a 
jetliner full of fuel, not several in succession.

3) If they crashed into the turbine hall (where the electricity is 
generated).  There would probably be a LOCA (loss of cooling accident), 
the reactor would shut down, and the ECCS (emergency core cooling 
system) would kick in.  You can look at the plans for any particular 
nuclear plant to see if it is possible for an aircraft crash to damage 
both the regular and emergency cooling systems.  But believe me, for 
every nuclear plant in the US, those studies have already been done as 
part of the plant's certification process.

4) If the plant was a boiling water reactor (BWR) built by General 
Electric, there would be some tritium (radioactive hydrogen) in the 
steam released.  Of course, anyone exposed directly to this steam would 
also be killed, but not by its radioactivity.  This tritium, with a 
half-life of ten years could possible seriously contaminate water 
supplies downwind of the disaster.*  Studies on LOCA releases indicate 
that this is a low-probability scenario.  Normally, even without all 
that burning jet fuel, the "bubble" of water vapor created gets carried 
into the stratosphere, where the tritium decays to normal levels faster 
than the water vapor is exchanged into the lower atmosphere.  Think of 
the bubble as a lighter than air balloon.  Even HTO has a molecular 
weight of twenty (1+3+16) compared to around 28 for air (mostly N2).

*I'm not worried.  To do that would require that the terrorists hit the 
turbine hall in a driving rainstorm--at least twice.  An experienced 
pilot might be able to fly that low in bad weather in a commercial 
jectliner, but I think that a plane crashing into a turbine hall in such 
circumstances would be an accident--even if it had been hijacked.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 14:43                                                                             ` Robert I. Eachus
@ 2003-11-20 14:55                                                                               ` Preben Randhol
  2003-11-20 15:24                                                                                 ` Vinzent 'Gadget' Hoefler
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-20 14:55 UTC (permalink / raw)


On 2003-11-20, Robert I. Eachus <rieachus@comcast.net> wrote:
>> On 2003-11-19, Robert I. Eachus <rieachus@comcast.net> wrote:
>
> (No, I didn't.)

Sorry forgot to cut this line.

> 2) If they crashed into the containment building, the plant could keep 
> operating.  If they crashed several planes into the same containment 
> building, they might penetrate it.  That doesn't mean the reactor would 
> be damaged, but that the containment building around it could probably 
> be breached by several fully-loaded 747s hitting the same spot. (The 
> requirement for US nuclear plants is that they survive ONE crash of a 
> jetliner full of fuel, not several in succession.

Haven't we heard this before?

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 12:14                                                                   ` Georg Bauhaus
@ 2003-11-20 15:14                                                                     ` Hyman Rosen
  2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
                                                                                         ` (2 more replies)
  0 siblings, 3 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-20 15:14 UTC (permalink / raw)


Georg Bauhaus wrote:
> A *scientist* has said that as long as there is no proof that some
> products of largely untested "alpha"-technology impose a risk, though
> collegues say they might, he is free to use it in every setting he
> chooses, inside or outside the lab. (Genetically manipulated plants
> in this case.)

Yes, exactly. The response to GM plants is exactly like the response
to nuclear energy. The "anti" stance is formed on the basis of some
irrational belief, and is unshakable. Then pseudoscientific claims
of possible risk are used to try to destroy the hated technology, or
at least prevent it from being widely deployed. There will never be
a demonstration of sufficient lack of risk to satisfy the anti-GM
movement. You might as well try to disprove the existence of Satan
to fundamentalists.

The proper way to deal with new technology is to give it some minimal
amount of testing, looking for obvious problems, and if none are present,
go off and use it. If it turns out that problems appear subsequently,
clean them up.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 14:55                                                                               ` Preben Randhol
@ 2003-11-20 15:24                                                                                 ` Vinzent 'Gadget' Hoefler
  2003-11-20 19:30                                                                                   ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-20 15:24 UTC (permalink / raw)


Preben Randhol wrote:

>> 2) If they crashed into the containment building, the plant could keep 
>> operating.  If they crashed several planes into the same containment 
>> building, they might penetrate it.  That doesn't mean the reactor would 
>> be damaged, but that the containment building around it could probably 
>> be breached by several fully-loaded 747s hitting the same spot. (The 
>> requirement for US nuclear plants is that they survive ONE crash of a 
>> jetliner full of fuel, not several in succession.
>
>Haven't we heard this before?

Hmm. I agree, we should try it. Just to be sure. Any volunteers? :->


Vinzent.

-- 
np: Nightwish - Ocean Soul



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:14                                                                     ` Hyman Rosen
@ 2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-20 16:40                                                                         ` Hyman Rosen
  2003-11-20 22:55                                                                         ` Robert I. Eachus
  2003-11-20 16:27                                                                       ` Georg Bauhaus
  2003-11-20 19:25                                                                       ` Preben Randhol
  2 siblings, 2 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-20 15:41 UTC (permalink / raw)


Hyman Rosen wrote:

>The proper way to deal with new technology is to give it some minimal
>amount of testing, looking for obvious problems, and if none are present,
>go off and use it. If it turns out that problems appear subsequently,
>clean them up.

Well. What if you can't clean them up (fast enough)?

Remember Australia's rabbit problem? Having such thing on a larger
scale *could* be very disastrous and not be revealed by "some minimal
amount of testing".

I'd say, nuclear technology is understood enough that someone can
*calculate* the risks (I'm not talking about if they are too high or
what, I am just claiming that we understand most of the implications).

In contrast GM is still not really predictable. Its effects can only
be predicted by something known as "Chaos Theory". If you think, that
this is enough, go off and use it.

As I said somewhere else: Something *will* survive. It might be the
eight-legged flying frog, but who cares? ;-)


Vinzent.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 10:21                                                                           ` Dmytry Lavrov
  2003-11-20 13:40                                                                             ` Robert I. Eachus
@ 2003-11-20 15:49                                                                             ` Alexandre E. Kopilovitch
  2003-11-21 12:59                                                                               ` Marin David Condic
  2003-11-22 12:33                                                                               ` Dmytry Lavrov
  1 sibling, 2 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-20 15:49 UTC (permalink / raw)
  To: comp.lang.ada

Dmytry Lavrov wrote:

> Okay,let's assume that you're right that radioactivity is not so
> dangerous.

Radioactivity is certainly dangerous (in high doses). No one disputes that.
The problem, however, is what is more dangerous - to live with potential
sources of high radioactivity, such as nuclear power plants, or without them.

> Govs also want to do that,to start using nukes in wars,to make safety
> standards lower ,etc.Many officials "benefits" from under-estimating
> level of danger.There's big money spent on that propagation.All that
> awards to someone showing that it's isn't dangerous..on writing
> fooling papers about safety,or about tank armour,etc.

Naturally, there are forces - sometimes governments, sometimes businesses -
which are interested for understimating of that danger and lower safety
standards - for radioactivity as well as for many other issues.

> And another
> side:how many money specially spent on "fooling" peoples that it's
> dangerous? Show me any personal Bill Gates spending money on that as
> many as govs spend for opposite direction.Of course you can talk about
> mass-media,about doing money,but again show me organisation that
> spends money from other sources on "fooling peoples" that it's
> dangerous.

You seem to be somehow hypnotized by "big money". People generally need not
a presence of "big money" to be fooled - they can be fooled by an idea, by
a perceived need of community feeling, or even of their own accord. (Note,
that people fighting against the danger of radioactivity new almost nothing
about it - they new just what media and friends said them - as a rule... the
redioactivity is invisible for them in all senses.)

Look, a simple fire is a danger, isn't it? But we can't survive, at least our
civilization can't survive without that dangerous fire. So, we keep it with us,
but at the same time we keep firefighters and keep safety standards against
fire. And oh well, there always been attempts to avoid or lower those standards,
to save money on them etc. The situation with nuclear power plants (and nuclear
waste, by extension) is similar in several important aspects (although analogy
is not generally close for several reasons).

You may hope that current situation with nuclear power plant is relatively
temporary - perhaps for several decades, no more, and then they will be replaced
by other, better sources of energy (or at least they will be made inherently
safer). But for now we have alternative: either tolerate nuclear power plants
or suffer significantly worse troubles (not only dangers, but real and immediate
troubles) with substitute sources of energy, or severely limit our energy
consumption, taking all consequences of that.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
@ 2003-11-20 16:11                                                                               ` Vinzent 'Gadget' Hoefler
  2003-11-20 18:16                                                                               ` Chad R. Meiners
  1 sibling, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-20 16:11 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> Let 100% of European energy demand be
>covered by mills. Would it have any large scale effect on weather?

It would. The real question is "Which would the effect be?".


Vinzent.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 14:10                                                                           ` Robert I. Eachus
@ 2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
  2003-11-20 16:11                                                                               ` Vinzent 'Gadget' Hoefler
  2003-11-20 18:16                                                                               ` Chad R. Meiners
  2003-11-20 16:33                                                                             ` Georg Bauhaus
  2003-11-22 10:41                                                                             ` Dmytry Lavrov
  2 siblings, 2 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-20 16:12 UTC (permalink / raw)


On Thu, 20 Nov 2003 09:10:13 -0500, "Robert I. Eachus"
<rieachus@comcast.net> wrote:

>Russ wrote:
>
>> Once you know the basic facts, it is easy to understand why nuclear
>> power is orders of magnitude safer that solar power could ever be. But
>> don't hold your breath waiting for the mass media to suddenly start
>> informing the public about it.
>
>I looked at that data Russ, and while the risks from nuclear power 
>plants look correct, the threat of coal burning plants is significantly 
>understated.  Offhand, two major factors omitted are grade crossing 
>accidents involving trains hauling coal to power plants, and the loss of 
>life from mining the coal.  As I recall, the estimates for both are in 
>the range of 1 to 2 deaths per year of operation.  Nowhere near the 
>numbers for air pollution, but greater than the numbers for radon 
>emissions and cancer causing chemicals.
>
>But of course, the biggest shocker for those who haven't studied the 
>issue is that the net effect of nuclear power plants is to significantly 
>reduce the long-term exposure of the population to radiation.  Radon is 
>nasty.  It is a gas and has a long enough lifetime to seep from the 
>ground into enclosed places, then it decays into several other 
>radioactive isotopes, some of which are also biologically active.  (For 
>example, actiniums tends to accumulte in bones.)
>
>Since nuclear reactors are designed to "burn-up" the radon emitted from 
>the uranium in the fuel, and capture the heat generated, as long as the 
>radon captured when mining the original ore is dealt with, the net risk 
>from nuclear power plants is negative--they save more lives than they 
>consume.  (This is true even if you add in the deaths associated with 
>the construction and decomissioning of the reactor.)

True.

However there is a true long term perspective problem with nuclear
energy. Nuclear energy shifts the temperature balance, because it is a
source of energy indendent from what we are receiving from the sun. At
the present level it is nothing and will remain nothing for a very
long period of time. But some day it will be necessary to find a way
to radiate the heat dissipated in the atmosphere into space.

BTW, what about wind mills? Provided that they are destroying the
landscape. What about other dangers? Infrasound? I know that people (a
parachute jumper) were killed. Let 100% of European energy demand be
covered by mills. Would it have any large scale effect on weather?
What damage would do the necessary electricity accumulation stations?

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:14                                                                     ` Hyman Rosen
  2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 16:27                                                                       ` Georg Bauhaus
  2003-11-20 19:25                                                                       ` Preben Randhol
  2 siblings, 0 replies; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-20 16:27 UTC (permalink / raw)


Hyman Rosen <hyrosen@mail.com> wrote:
: 
:  The response to GM plants is exactly like the response
: to nuclear energy. The "anti" stance is formed on the basis of some
: irrational belief, and is unshakable.

It is not in this particular case; I should have added that this
scientist claimed that there is no risk as long as there is no
proof of a risk. Strange interpretation of the word risk.
And then some not at all
: pseudoscientific claims
  ^^^^^^^^^^^^^^^^
that we do not yet know enough about the effects of man-made
nature in nature-made nature just get wiped away by this
kind of logic.
(think of middle Asian rice crisis due to the Just One Kind of rice
campaign, or sheephogs that look like what they are: experiments.
Should we wait for the proof that just one rice grown on half a
continent (incestuous, so to speak) prooves to be a risk?
Are the corresponding warnings necessarily pseudoscientific,
or are there just some pseudoscientific warnings?)

The "anti" stance is not unshakable on several accounts. For example,
empirically it is fairly normal in the statistical sense
that people change attitudes as time goes by.
There are some that stay "anti" but from the opposite side.
How does science help here? Scienctific reports make assumptions.
And these assumptions haven't always been unshakable so there
is room for beeing sceptic.


: The proper way to deal with new technology is to give it some minimal
: amount of testing, looking for obvious problems, and if none are present,
: go off and use it. If it turns out that problems appear subsequently,
: clean them up.

O.K, how clean them up? I don't think it is a sign of suffering from
neophobia if in a society the sorcerer's aprrentices have to face some
criticism. If society decides to take the risk,
then I think it is not because people agree or disagree with the opinions of
extreme "anti"-people or of extreme anti-"anti"-people, for that matter.



Georg



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 14:10                                                                           ` Robert I. Eachus
  2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
@ 2003-11-20 16:33                                                                             ` Georg Bauhaus
  2003-11-21  9:05                                                                               ` Dmitry A. Kazakov
  2003-11-22 10:41                                                                             ` Dmytry Lavrov
  2 siblings, 1 reply; 385+ messages in thread
From: Georg Bauhaus @ 2003-11-20 16:33 UTC (permalink / raw)


Robert I. Eachus <rieachus@comcast.net> wrote:
: the net risk 
: from nuclear power plants is negative--they save more lives than they 
: consume.

Does this net risk take into account the fact that no major nuclear
disasters have happened during the last 25 years in the USA?
If it does, how would you compare an exploding nuclear power
plant to an exploding coal burner, in terms of risk?



Goerg



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 16:40                                                                         ` Hyman Rosen
  2003-11-20 17:03                                                                           ` Vinzent 'Gadget' Hoefler
  2003-11-20 19:26                                                                           ` Preben Randhol
  2003-11-20 22:55                                                                         ` Robert I. Eachus
  1 sibling, 2 replies; 385+ messages in thread
From: Hyman Rosen @ 2003-11-20 16:40 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler wrote:
> Well. What if you can't clean them up (fast enough)?

Then things change. You may even have a major disaster.
Too bad. You clean up, and you go forward.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 16:40                                                                         ` Hyman Rosen
@ 2003-11-20 17:03                                                                           ` Vinzent 'Gadget' Hoefler
  2003-11-20 18:59                                                                             ` Hyman Rosen
  2003-11-20 19:26                                                                           ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-20 17:03 UTC (permalink / raw)


Hyman Rosen wrote:

>Vinzent 'Gadget' Hoefler wrote:
>> Well. What if you can't clean them up (fast enough)?
>
>Then things change. You may even have a major disaster.
>Too bad. You clean up, and you go forward.

Yeah, that must be right. We only learn from mistakes.

To use a bad analogy: We shouldn't care about software bugs in
flight-control systems. If the thing crashes, *oops*. Well, it's too
bad, but still we can clean it up and try again.

Just go forward. Right down the abyss. Intelligence is just a bad
habit, we can overcome it.


Vinzent.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20 12:57                                                                                 ` Marin David Condic
@ 2003-11-20 17:47                                                                                   ` Warren W. Gay VE3WWG
  2003-11-21 12:53                                                                                     ` Marin David Condic
       [not found]                                                                                     ` <3FBF774C.2050108@shore.net>
  0 siblings, 2 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-20 17:47 UTC (permalink / raw)


Marin David Condic wrote:
> Warren W. Gay VE3WWG wrote:
>> I have never had a problem with multi language projects. This
>> only becomes a problem when impedance mismatches occur on
>> interfaces and objects, in my experience.
>>
> Yeah, but if your compiler is C and all the libraries in your problem 
> domain are C and your operating system is C and all your de3velopment 
> tools are in C and all your programming expertise is in C, it gets 
> *really* tough to argue that it is economical to do some project in Ada. 
> Everything that diverges back to some other language is another reason 
> to avoid Ada. Hence, the effort should be to make Ada as capable as 
> possible to remove the impediments to using it.

I won't disagree with this. But let's reduce the impedance
mismatch, to make the decision a path of lower resistance ;-)

>> If all I had to do was add a Makefile command:
>>
>>    adagen freds_fft.h
>>
>> to generate a thin binding, in a consistent and
>> portable way, then I'd have mighty little resistance
>> to using Ada in a given project.
> 
> Yeah, sure, there is nothing wrong with having an automatic translator 
> to help you get a binding. I'm not against that. I just don't think it 
> is a) the final answer, b) the best answer or c) the answer that is 
> going to persuade C hackers to come over to Ada. 

a) agreed and this was acknowledged up front
b) again agreed (see a)
c) this is a different hurdle, and I don't disagree

Again, the purpose of my point was to wear down
the opposition. The point is right now, even if
you manage to "sell Ada", the path is too narrow
for most to jump in.

You can get people to learn a new language (this can be
fun, if you're not on a deadline).

But my point is that if they realize that 95% of their
libraries must be left behind or that they have to build
bindings in order to use them, they'll balk at this
even more. I think this is the killer (we have already
talked about the need for bindings/libraries earlier).

> It *still* comes down 
> to "I've already got everything I need with C/C++ so why do I want to 
> add effort and expense to my project by doing some part of it in Ada?" 
> There has to be some really compelling reason to do that.

No argument there!  BUT, if we stop right there, then Ada has
lost, will be lost, and has no hope.

What I am suggesting is to make it easier. The only hope
I see is the following general path (by no means the only
and extensively documented one):

1. C/C++ folks need to start using Ada, but how?

    Make it easier to use the libraries they already have.

2. As people climb on board, more bindings and thick
    bindings become available (the catch up phase).

3. As the world switches over to Ada, having recognized
    its great benefits, more development starts to be
    in Ada, without starting in C + binding (C libraries
    start to lag).

4. New Ada friendly operating systems (or "Ada O/S shells")
    make it a friendly world for GP Ada work.

Now I know that all of this sounds like pie in the sky. So
maybe I have just admitted defeat as well :-(

> Consider that if Ada had some really spiffy library that did some 
> wonderful things for a given problem domain and that this was a major, 
> new advantage over C++ in some way. Then someone says "I want to use Ada 
> to gain access to those features." C/C++ probably won't bind to Ada real 
> well - or at least they'd need to develop a binding in Ada that reduced 
> things to a level that C could handle. (Give the caller all sorts of 
> pointers instead of the data, etc.) So now you've got a good economic 
> reason why someone ought to do some part of their development in Ada. At 
> that time, the ability to bind to C becomes an asset to them.

But that only works for the problem domain(s) that your
spiffy new library addresses. I think we need to find a
more general solution.

>> The tough sell is when you have to report to management that
>> it will add 3 weeks of work to build a binding to Fred's
>> FFT routine, in order to use Ada. Project management will
>> then ask, "can it be done in C/C++?" As soon as you answer
>> affirmative to this, in the GP (non-embedded, non safety
>> critical) world, the project management answer will be to
>> use C/C++ instead. Bye bye Ada!
>>
>> If instead, you don't have to add those 3 weeks to the
>> project schedule, project management might even encourage
>> the use of Ada, if it even cares. Alternatively, you
>> might not even have to bring it up ;-)
>>
>> For Open Source developers, I think this can make a difference
>> too. Everyone has a limited free time, unless you have
>> just won the lottery (but then would you still be coding? ;-)
>>
> 
> Ada has traditionally focused in on life-cycle costs and the problem is 
> that for *most* development situations, the whole life cycle is 
> irrelevant. 

Exactly. Day to day business is more concerned with quick
turn around. They pay lip service to the other, but they
never ever DO it. So this is why, I think, we need to
make Ada more C friendly.

> Its the Time To Market that is critical. 

Yes. Don't give them (project management) the excuse that
Ada prevents the job getting done quicker.

> Development 
> projects have to get done *Quickly* in most cases because getting there 
> first means market dominance or (in the case of spare-time developers 
> and some other projects) there is limited budget to get the project to 
> completion. Hence, Ada ought to do something to try to add that 
> leverage. Show your garden variety C++ programmer that he can get his 
> job done in half the time (and have lower maintence thrown in as an 
> added bonus) and maybe you've got something he is willing to look at.
> 
> MDC

To do this, you need to make it easy for the C++ programmer to
use what he already has. Eventually he will migrate away from
what he has (if he gets sold), but initially that is an
important investment he cannot turn is back on.

Ada asks C++ people to "bet the farm" to switch. You shouldn't
be forced to make an all or nothing call on language choice.
But the reality is that the decision _is_ in fact often made
at this all or nothing level, due to the lack of standard
interfaces between Ada95 and C++.

Maybe we've missed the whole point altogether?

Maybe we should have put a major push through Ada0Y to be C++
compatible, in a PORTABLE way.  A consistent set of pragmas
and conventions to make C++ interfacing less painful.

But even if you do all this, you still have the pain of getting
C/C++ macro constants into an Ada program for use. This is
what I envision thinbind to be all about.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 13:40                                                                             ` Robert I. Eachus
@ 2003-11-20 18:00                                                                               ` Alexandre E. Kopilovitch
  2003-11-20 23:47                                                                                 ` Robert I. Eachus
  2003-11-29 23:22                                                                               ` Dmytry Lavrov
  1 sibling, 1 reply; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-20 18:00 UTC (permalink / raw)
  To: comp.lang.ada

Robert I. Eachus

> >>Dmyytry, Dmytry, you really need to catch up on your technical reading:
> >>
> >>Teleportation: http://www.aip.org/physnews/graphics/html/teleport.htm
> >>
> >>Time travel: http://www.sciencenews.org/sn_arc98/4_11_98/fob3.htm
> >>
> >>Superluminal communication: 
> >>http://adsabs.harvard.edu/cgi-bin/nph-bib_query?1999quant.ph..6113S
> > 
> > 
> > Don't want to discuss more with someone who don't think that it's
> > cheating _by_ _default_  . There was too many teleportations and
> > superluminal communications and  time travel reports all over
> > 20th,19th,18th and even 17th century,
> > to many years BC.In next 10 years you will foget about links you're
> > providing,and will use links to other sci-fi.

> Huh?  The difference as far as I am concerned

Yes, that far as you concerned. But you are an Engineer, not a scientist.
You are accustomed to some formal criteria for scientific results. And you
have little chance to notice that those familiar criteria gradually become
insufficient nowadays. This happens because an approach to a science as to
a kind of industry leads to fast adaptation to any formal criteria. And more
that adaptation advances, the less those criteria reflect.

> is that 1) they have done the math

Exactly - they have *done the math*. Surely they did.

> --all of the above results are consistant with quantum 
> mechanics, etc.  And 2) these are reputable scientific experiments, with 
> enough information published that 3) the results have been duplicated.

But what those result *mean*? Are the *words* appropriate? Do those words
carry proper, familiar associations in this case? To which degree?

> As for the Nimtz (superluminal communication) there have been a number 
> of papers challenging whether or not it is a practical method.  I think 
> it can be developed into a technique where you have alternating 
> forbidden and amplifying regions in a waveguide.  The average data 
> velocity would then be in the 2 to 3x lightspeed range.  But there is no 
> bogus science in any of the papers or results I mentioned.  (The 
> original quantum teleportion result involved only a single photon at a 
> time, but people are working on scaling it up.  I think an electron has 
> now been teleported, and the next project is to teleport a single atom.) 

Although I have heard something about that, I neither have an intention to
look there nor recommend it to anybody. Better wait at least 10-15 years.
Not being prepared enough, not being a quite strong physisist, one have no
chance to evaluate such a result properly. Don't take hot results if you
aren't a professional in that area, just wait until these results cease to
be hot.

What does it mean - teleportation of a single photon? How can one identify
a single photon? (And it is just the first question).

And overall, well, although there are indeed enough difference, but there is
also much in common - unclear meaning, unexplored consequences and high
publicity.

>   Startrek like teleportation of people is decades if not a century 
>away, but at this point it is engineering, no new physics required.

What a beautiful perspective: we'll teleport our weapons on enemy sites, and
then issue the Anti-Teleportation Strategic Initiative. And oh, there will
be problems for immigration agencies - all those illegal immigrants will
simply teleport themselves into USA and Europe. And spies - all intelligence
agencies will be very happy. Terrorists will be happy also, though.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20 12:19                                                                                 ` Lutz Donnerhacke
@ 2003-11-20 18:01                                                                                   ` Warren W. Gay VE3WWG
  2003-11-21 10:55                                                                                     ` Generic thinbinding toolkit for C Lutz Donnerhacke
  0 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-20 18:01 UTC (permalink / raw)


Lutz Donnerhacke wrote:

> * Warren Gay wrote:
> 
>>What thinbind would be required to do, is to preprocess the header
>>file somewhat differently than the C's preprocessor. Instead of
> 
> This destroys most of the original C API in a unusable way.

Rubbish.

The whole purpose of preprocessing it in thinbind is to compile
a package for Ada use. It need _NOT_ be the same. You only
need to arrive at the correct internal answers. There are
many ways to skin a cat (pardon the expression to cat lovers
out there).

As long as
the end results work, then you as the user, do not care about
1 pass, 3 passes or n passes. You might care about performance,
but given the choice between coding a thin binding by hand
or having your computer do it for you, I think the choice is
still and easy one.

The challenge is to do it well, to make it work in a platform
neutral sort of way (the generated thin binding should look
consistent in all platforms, so that the clients of the binding
won't fail to compile).

>>Obviously any macros that provide C programmer conveniences, would
>>be a challenge (like putchar()). It should be possible
>>to infer inline Ada functions from them. I suppose one could apply the
>>following C test :
>>
>>    Case 1 : with or without macro arguments
>>                 Does the code fragment represent a complete compilable
>>                 C statement/block? If so, is there an implied return value?
>>                 Define an inline procedure/function with
>>                 or without arguments matching the name.
> 
> 
> Hard work. Especially when considering marco expansion down to the plain
> syscall (Linux).

You don't care about operating system details. You only care about
things at the C compiler level. Yes it is difficult, but this is
no more difficult than what GCC does now for optimization and
compilation.

>>   Case 2 : the defined macro components appear to not represent
>>                a complete statement, nor block of code. Just drop the
>>                code fragment, because it has already been used
>>                earlier for macro expansion and is no longer required.
> 
> 
> Almost all API constants are marcos. A major part of structures are of compiler
> option dependant design. Several structures are different in the man page
> and in the implementation. Several macros are used to transform the API
> conforming code into the real structure. This can't be ignored.

I am not suggesting that the macro expansions be ignored. But
some of them have to be expanded along the way to provide the
correct view of the code. But the other objective is to come
away with macro definitions that fold into constants. These
can be coded into an Ada spec. A tricky process to be sure,
but this can be done.

>>#1 is also complicated by "do you expand macro functions?", or
>>do you "translate them into Ada inline functions?" I think you would
>>need to need to do both (a hints file could control this (see next)).
> 
> Thin binding to C is expected as a function/procedure and some
> types/constants which can be combined like described in the C API man pages.
> 
> So you have to start from the man page and fill in the blanks by designing
> the Ada types(!) and calls like expected. 

Your point isn't clear to me. Name an example.

Lets take an example:

#define increment(x)   (++x)

Now you're right that there is no type information here. But this
can be written as a generic procedure. No type information is
required here.

> Then you have to find out how
> these API-types are really defined and used. In a good number of cases you
> need quite a different type than described in the man page. C does not know
> about variant records and therefore collects a lot of things via unions and
> some paragraphs of English text. This has to transformed to an approbriate
> Ada type.

No argument about unions. However, I do believe that Ada0Y
is opening the door to that solution.

>>But I think C code can be handled in a well defined way.
> 
> 
> I tend to disagree. BTDT.

It won't be a trivial task, but surely it is no MORE
difficult than a compiler. After all, what we're
speaking of here is "compiling" C header files into
Ada. If a C compiler can translate C code into object
code, then I am not convinced that another C compiler
could not generate Ada code. In this case, we are only
interested in a thin binding, not a complete
translation of the code.

Because of these trade offs, some things become easier,
while other things will challenge.

I have already acknowledged the practical need for a
hints file. I do agree that there will be some C
things that it will be hard to automate completely.

Perhaps some Computer Science major will take this
project on?  Professors out there looking for project
ideas?  Let's see if this is practical!

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 11:35                                                                           ` Dmytry Lavrov
@ 2003-11-20 18:04                                                                             ` Chad R. Meiners
  0 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-20 18:04 UTC (permalink / raw)



"Dmytry Lavrov" <dmytrylavrov@fsmail.net> wrote in message
news:49cbf610.0311200335.77d4caee@posting.google.com...
> Of course was awarded because "someone" need to award papers that show
> that plants isn't dangerous.

You of course realize that this type of argument is not valid for a rational
argument unless you fact some facts to backup your assertion?





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
  2003-11-20 16:11                                                                               ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 18:16                                                                               ` Chad R. Meiners
  2003-11-21  8:47                                                                                 ` Dmitry A. Kazakov
  1 sibling, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-20 18:16 UTC (permalink / raw)



"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
news:jioprvkn6v025drp4qf1iuolqdto3rtd89@4ax.com...
> However there is a true long term perspective problem with nuclear
> energy. Nuclear energy shifts the temperature balance, because it is a
> source of energy indendent from what we are receiving from the sun. At
> the present level it is nothing and will remain nothing for a very
> long period of time. But some day it will be necessary to find a way
> to radiate the heat dissipated in the atmosphere into space.

How would that compare to the extra energy that the earth traps from
increase of CO2 in the air?
;-)





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-19 21:57                                                                                 ` Chad R. Meiners
  2003-11-20  2:12                                                                                   ` Warren Gay
@ 2003-11-20 18:27                                                                                   ` Stephen Leake
  1 sibling, 0 replies; 385+ messages in thread
From: Stephen Leake @ 2003-11-20 18:27 UTC (permalink / raw)


"Chad R. Meiners" <crmeiners@hotmail.com> writes:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
> news:xKNub.11738$iT4.1349744@news20.bellglobal.com...
> > If all I had to do was add a Makefile command:
> >
> >     adagen freds_fft.h
> >
> > to generate a thin binding, in a consistent and
> > portable way, then I'd have mighty little resistance
> > to using Ada in a given project.
> 
> Why would it be a makefile command?  

Because it's highly likely that freds_fft.h will change, requiring the
matching Ada spec to change.

That is one of the problems with the current Win32Ada binding; it is
not up to date with the latest Win32 API from Microsoft, because the
tool that created it has not been rerun.

> Shouldn't you run the command once and then intergrate the resultant
> package into your project?

It is very important to keep traceability to the original source, and
to be able to repeat any part of the process that produced the final
result. 

-- 
-- Stephe



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 17:03                                                                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 18:59                                                                             ` Hyman Rosen
  2003-11-21  8:37                                                                               ` Vinzent 'Gadget' Hoefler
  0 siblings, 1 reply; 385+ messages in thread
From: Hyman Rosen @ 2003-11-20 18:59 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler wrote:
> Yeah, that must be right. We only learn from mistakes.
> 
> To use a bad analogy: We shouldn't care about software bugs in
> flight-control systems. If the thing crashes, *oops*. Well, it's too
> bad, but still we can clean it up and try again.
> 
> Just go forward. Right down the abyss. Intelligence is just a bad
> habit, we can overcome it.

The only abyss is in the imagination of the "anti"s.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:14                                                                     ` Hyman Rosen
  2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-20 16:27                                                                       ` Georg Bauhaus
@ 2003-11-20 19:25                                                                       ` Preben Randhol
  2003-11-20 23:54                                                                         ` Larry Elmore
  2 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-20 19:25 UTC (permalink / raw)


On 2003-11-20, Hyman Rosen <hyrosen@mail.com> wrote:

> The proper way to deal with new technology is to give it some minimal
> amount of testing, looking for obvious problems, and if none are present,
> go off and use it. If it turns out that problems appear subsequently,
> clean them up.

You mean the debrie after a couple of planes went down due to untested
software?

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 16:40                                                                         ` Hyman Rosen
  2003-11-20 17:03                                                                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 19:26                                                                           ` Preben Randhol
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-20 19:26 UTC (permalink / raw)


On 2003-11-20, Hyman Rosen <hyrosen@mail.com> wrote:
> Then things change. You may even have a major disaster.
> Too bad. You clean up, and you go forward.

Sounds like C++ ;-)


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:24                                                                                 ` Vinzent 'Gadget' Hoefler
@ 2003-11-20 19:30                                                                                   ` Preben Randhol
  0 siblings, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-20 19:30 UTC (permalink / raw)


On 2003-11-20, Vinzent 'Gadget' Hoefler <ada.rocks@jlfencey.com> wrote:
> Preben Randhol wrote:
>
>>> 2) If they crashed into the containment building, the plant could keep 
>>> operating.  If they crashed several planes into the same containment 
>>> building, they might penetrate it.  That doesn't mean the reactor would 
>>> be damaged, but that the containment building around it could probably 
>>> be breached by several fully-loaded 747s hitting the same spot. (The 
>>> requirement for US nuclear plants is that they survive ONE crash of a 
>>> jetliner full of fuel, not several in succession.
>>
>>Haven't we heard this before?
>
> Hmm. I agree, we should try it. Just to be sure. Any volunteers? :->
>

No thanks. But just that the requirements say it should isn't a
guarantee

At any rate I'm more concerened about the nuclear power plants closer to
my country.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-20 16:40                                                                         ` Hyman Rosen
@ 2003-11-20 22:55                                                                         ` Robert I. Eachus
  2003-11-21  0:00                                                                           ` Jeffrey Carter
  2003-11-21 13:25                                                                           ` Vinzent 'Gadget' Hoefler
  1 sibling, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20 22:55 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler wrote:

> Well. What if you can't clean them up (fast enough)?
> 
> Remember Australia's rabbit problem? Having such thing on a larger
> scale *could* be very disastrous and not be revealed by "some minimal
> amount of testing".

The zebra mussel problems in the Great Lakes and in the Mississippi 
River are probably a better example.

But what you have in Genetically Modified foods is a choice between 
products that have been developed by billions of years of blind 
evolution, including random mutations caused both by transcription 
errors and viruses, or products where a company took an existing food 
product, and the virus tools for modifying the genetic structure, and 
created a new version.  This version was then subjected to testing.

So compared to the GM foods, the "natural" foods can contain similar 
modifications.  Only in the case of the GM foods, there is design intent 
involved, and some testing.  In natural foods, the genetic splicing and 
random point mutations are just that, random.

Now of course if you are a farmer, you may buy your seeds from a company 
that does testing similar to that done on GM seeds, so the seeds you 
start with are no worse--but they are no better.

That is the reality.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 18:00                                                                               ` Alexandre E. Kopilovitch
@ 2003-11-20 23:47                                                                                 ` Robert I. Eachus
  2003-11-21  2:51                                                                                   ` Alexandre E. Kopilovitch
  2003-11-21  9:22                                                                                   ` Preben Randhol
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-20 23:47 UTC (permalink / raw)


Alexandre E. Kopilovitch wrote:

> Yes, that far as you concerned. But you are an Engineer, not a scientist.
> You are accustomed to some formal criteria for scientific results. And you
> have little chance to notice that those familiar criteria gradually become
> insufficient nowadays. This happens because an approach to a science as to
> a kind of industry leads to fast adaptation to any formal criteria. And more
> that adaptation advances, the less those criteria reflect.

Okay, if you say so.  But I think of myself as a software engineer, as 
well as someone who has done experimental physics.

> But what those result *mean*? Are the *words* appropriate? Do those words
> carry proper, familiar associations in this case? To which degree?

I can't say for you, which is why I recommend the math.  Followning the 
formal math in quantum mechanics is tough, but it tells you things.  For 
example in the Nimtz experiment, it said that the time for a signal to 
cross the forbidden region was a constant (about 83 picoseconds) and 
independent of the length of the gap.  But the amount of the signal that 
is not reflected is a negative exponential in the length of the 
forbidden gap.  So in the Nimtz experiment the maximum gap he tested was 
about 30 cm. for a speed of 6+ times the speed of light in a vaccum.

There is a different "better" way to achieve similar speeds, but the 
experiment is harder to do.  The speed of light between two conducting 
plates changes as the plates move closer together.  Unfortunately it 
goes up in the direction perpendicular to the plates, and down parallel 
to the surfaces.  But if you are careful you can create a stack of thin 
plates, drill a hole through it, thread a glass fiber through and 
measure the speed of light.  Works fine, except that the speed of light 
in the fiber is about 0.75 c, so it takes a lot of speedup to even get 
back to c.  What is really needed is a way to construct the stack of 
plates with a hole containing a vaccum, and design the stack of plates 
so that it doesn't absorb most of the beam you send through.  But again, 
we are talking engineering, not far out physics.  The change in the 
local value of c is real, and measurable--the trick is to take useful 
advantage of it.

> Although I have heard something about that, I neither have an intention to
> look there nor recommend it to anybody. Better wait at least 10-15 years.
> Not being prepared enough, not being a quite strong physisist, one have no
> chance to evaluate such a result properly. Don't take hot results if you
> aren't a professional in that area, just wait until these results cease to
> be hot.
> 
> What does it mean - teleportation of a single photon? How can one identify
> a single photon? (And it is just the first question).

You really need to study QM a lot to be able to answer those questions. 
  But not only can you identify a single photon you can create a pair of 
"entangled" photons, such that you can only measure one of two 
properties for the pair.  If you measure the polarization of one photon 
that is entangled, in one plane, the entangled photon will have the 
opposite polarization in that plane.  Try to measure the two 
polarizations at right angles, and you won't succeed.  This is standard QM.

What happens in the teleportation experiment is that the entangled state 
is teleported.  After the teleportation of one of the members of a pair, 
the NEW photon is entangled with the other member of the pair.  The 
original photon is no longer entangled with anything.  So quantum 
teleportation makes one photon or other particle (at a distance) into  a 
copy of another.  When the ability to do this advances sufficiently it 
willl be able to make a "perfect" copy of an object some arbitrary 
distance from the original.  But it will take apparatus and a pretty 
complex mechanism on the transmitting and recieving ends.  For getting 
around on earth?  Forget it.  But eventually teleportation may become 
practical from say, Earth to the Moon, or to Mars, or Titan.

> What a beautiful perspective: we'll teleport our weapons on enemy sites, and
> then issue the Anti-Teleportation Strategic Initiative. And oh, there will
> be problems for immigration agencies - all those illegal immigrants will
> simply teleport themselves into USA and Europe. And spies - all intelligence
> agencies will be very happy. Terrorists will be happy also, though.

Again, not how it works.  There has to be a pretty complex device at 
both the sending and recieving points.  And if you try to copy the 
object (or the information) being transported, it won't work.  Not 
something that we can build tomorrow, but at least the physics are 
becoming understood.

Similarly, the Alcubierre warp drive when first proposed, was completely 
impractical.  Now there are lots of papers published on the subject and 
the amount of negative energy required is becoming quite modest.  See: 
http://lanl.arxiv.org/abs/gr-qc/9905084 and 
http://xxx.lanl.gov/PS_cache/gr-qc/pdf/0207/0207109.pdf  That doesn't 
mean the human race can start building warp drive spaceships next week. 
  But the Alcubierre geometry is now getting to be close to reasonable. 
  (Now all we need is a way to make a few kilograms of negative mass.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 19:25                                                                       ` Preben Randhol
@ 2003-11-20 23:54                                                                         ` Larry Elmore
  2003-11-21  9:25                                                                           ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Larry Elmore @ 2003-11-20 23:54 UTC (permalink / raw)


Preben Randhol wrote:
> On 2003-11-20, Hyman Rosen <hyrosen@mail.com> wrote:
> 
> 
>>The proper way to deal with new technology is to give it some minimal
>>amount of testing, looking for obvious problems, and if none are present,
>>go off and use it. If it turns out that problems appear subsequently,
>>clean them up.
> 
> 
> You mean the debrie after a couple of planes went down due to untested
> software?

Straw man. No one said "untested" except you.

--Larry




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 22:55                                                                         ` Robert I. Eachus
@ 2003-11-21  0:00                                                                           ` Jeffrey Carter
  2003-11-21 13:25                                                                           ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Jeffrey Carter @ 2003-11-21  0:00 UTC (permalink / raw)


Robert I. Eachus wrote:
> 
> But what you have in Genetically Modified foods is a choice between 
> products that have been developed by billions of years of blind 
> evolution, including random mutations caused both by transcription 
> errors and viruses, or products where a company took an existing food 
> product, and the virus tools for modifying the genetic structure, and 
> created a new version.  This version was then subjected to testing.

Much of the "natural" food that people eat has been genetically modified 
using a technique called selective breeding. Take the large-breasted 
turkey that millions of Americans will eat on Nov 27. This started out 
as a wild, small-breasted bird. Through selective breeding this has been 
turned into a domesticated, large-breasted bird. These changes breed 
true, so it is clear that these are genetic changes. The difference 
between selective breeding and the direct manipulation of genetic 
material that most people think "genetically modified" means is that 
selective breeding is slow and haphazard, while more modern techniques 
are fast and direct.

Turkeys are hardly the only example. Wheat started out as a wild grass 
with a couple of grains per stalk, but thousands of years of genetic 
modification has produced the plant we consider wheat today. It's 
impossible to buy wheat that has not been genetically modified. Maize 
used to produce a couple of small ears with small, widely spaced 
kernels. Pigs used to be smaller and skinnier. Cows used to give much 
less milk.

I've been eating genetically modified food my whole life, and so have 
most, if not all, of the people reading c.l.a.

-- 
Jeff Carter
"I blow my nose on you."
Monty Python & the Holy Grail
03




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 23:47                                                                                 ` Robert I. Eachus
@ 2003-11-21  2:51                                                                                   ` Alexandre E. Kopilovitch
  2003-11-21  9:22                                                                                   ` Preben Randhol
  1 sibling, 0 replies; 385+ messages in thread
From: Alexandre E. Kopilovitch @ 2003-11-21  2:51 UTC (permalink / raw)
  To: comp.lang.ada

Robert I. Eachus wrote:

> > But what those result *mean*? Are the *words* appropriate? Do those words
> > carry proper, familiar associations in this case? To which degree?
>
> I can't say for you, which is why I recommend the math.  Followning the 
> formal math in quantum mechanics is tough, but it tells you things.

Unfortunately, I graduated from Moscow University (long ago) as mathematician,
and even worse, my specialization was infinitedimensional representations of
Lie groups - too close to quantum mechanics, you know. So, for me mathematics
can't say anything definite about physics in particular as well as about any
reality in general. Mathematics says only "if we believe in X then we should
believe also in Y... provided that our notions of X and Y are well-established
and that we did not violate many our silent assumptions, which are standard
for this domain". Certainly I know also the thesis, which claims that any
correct and beautiful mathematical model should represent some fact/law of
reality - well, I tend to agree with that, but even that thesis says nothing
about correspondence to particular interpretation.

> > What does it mean - teleportation of a single photon? How can one identify
> > a single photon? (And it is just the first question).
>
> You really need to study QM a lot to be able to answer those questions. 

So what is the use of that public claim? How many people studied QM enough
for that? Basic QM (that is, before QED) is most probably not enough, and
even that is taught for physisists and chemists only, I think.

I guess that I may be able to read that article, spending several weeks or
even months for that (I certainly need to recall many things and retrain
myself... I did similar things several times, so I know how much time and
effort it takes). Then, to evaluate the result, that is, to develop my own
opinion about it, I should spend on it several months more. Naturally, I will
not spend that much time for a result of very doubtful worthiness. And the
vast majority of educated people are in much worse position for this case.
So why that result should be broadcasted outside of the proper community of
physisists? We want people to lose a sense of difference between a reality
and a movie - just to keep them optimistic about Our Mighty Science?

>  But not only can you identify a single photon you can create a pair of 
> "entangled" photons, such that you can only measure one of two 
> properties for the pair.  If you measure the polarization of one photon 
> that is entangled, in one plane, the entangled photon will have the 
> opposite polarization in that plane.  Try to measure the two 
> polarizations at right angles, and you won't succeed.  This is standard QM.
>
> What happens in the teleportation experiment is that the entangled state 
> is teleported.  After the teleportation of one of the members of a pair, 
> the NEW photon is entangled with the other member of the pair.  The 
> original photon is no longer entangled with anything.  So quantum 
> teleportation makes one photon or other particle (at a distance) into  a 
> copy of another.

Well, I can honestly say that I did not understand almost anything - I got
just very vague glimpse of some part of the deal. And I didn't hope to get
more, of course. Please, get me right: I do not say that the experiment was
somehow incorrect or the result is unbelievable or unimportant - I just say
that this is wrong to broadcast it to general public as an important achievement
in teleportation, because the public (and even educated public) will interpet
these words another way, nothing similar to physisist's understanding of the
event.

> Similarly, the Alcubierre warp drive when first proposed, was completely 
> impractical.  Now there are lots of papers published on the subject and 
> the amount of negative energy required is becoming quite modest.  See: 
> http://lanl.arxiv.org/abs/gr-qc/9905084 and 
> http://xxx.lanl.gov/PS_cache/gr-qc/pdf/0207/0207109.pdf

No, never more! -;)  I followed that gr-qc several years in the mid of 90th,
and dropped that wrong habit with big relief.

>  That doesn't 
> mean the human race can start building warp drive spaceships next week. 

Well, I'll better wait until the people responsible for that succeed to build
something useful.

>  But the Alcubierre geometry is now getting to be close to reasonable. 

Although I saw enough various geometries, I don't recall that name... well,
one geometry more, one toy more. Grants should be received, of course.

>  (Now all we need is a way to make a few kilograms of negative mass.)

Hm, are you sure that they will not annihilate all us? -;)

Oh, I just guessed what is the famous Big Bang - it happens every time when
some civilization in Universe accumulates critical negative mass -;) .



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 18:59                                                                             ` Hyman Rosen
@ 2003-11-21  8:37                                                                               ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-21  8:37 UTC (permalink / raw)


Hyman Rosen wrote:

>The only abyss is in the imagination of the "anti"s.

Let's hope so. But I wouldn't be too sure about it.


Vinzent.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 18:16                                                                               ` Chad R. Meiners
@ 2003-11-21  8:47                                                                                 ` Dmitry A. Kazakov
  2003-11-21  9:28                                                                                   ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21  8:47 UTC (permalink / raw)


On Thu, 20 Nov 2003 13:16:16 -0500, "Chad R. Meiners"
<crmeiners@hotmail.com> wrote:

>"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
>news:jioprvkn6v025drp4qf1iuolqdto3rtd89@4ax.com...
>> However there is a true long term perspective problem with nuclear
>> energy. Nuclear energy shifts the temperature balance, because it is a
>> source of energy indendent from what we are receiving from the sun. At
>> the present level it is nothing and will remain nothing for a very
>> long period of time. But some day it will be necessary to find a way
>> to radiate the heat dissipated in the atmosphere into space.
>
>How would that compare to the extra energy that the earth traps from
>increase of CO2 in the air?
>;-)

In a long term perspective, there is no alternative to nuclear energy.
CO2 emission is rather a short term problem. However it illustrates a
rather obvous fact that old technology causes more damage for less
gain. It is amazing how greens became an obstacle to resolving CO2
problem.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 16:33                                                                             ` Georg Bauhaus
@ 2003-11-21  9:05                                                                               ` Dmitry A. Kazakov
  2003-11-21 16:36                                                                                 ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21  9:05 UTC (permalink / raw)


On Thu, 20 Nov 2003 16:33:54 +0000 (UTC), Georg Bauhaus
<sb463ba@l1-hrz.uni-duisburg.de> wrote:

>Robert I. Eachus <rieachus@comcast.net> wrote:
>: the net risk 
>: from nuclear power plants is negative--they save more lives than they 
>: consume.
>
>Does this net risk take into account the fact that no major nuclear
>disasters have happened during the last 25 years in the USA?
>If it does, how would you compare an exploding nuclear power
>plant to an exploding coal burner, in terms of risk?

It is a wrong question. The correct one is: what is the expected
damage per megawatt (mean + dispersion). If you compare the answers
for all sorts of plants, you will probably see that Robert is right.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 23:47                                                                                 ` Robert I. Eachus
  2003-11-21  2:51                                                                                   ` Alexandre E. Kopilovitch
@ 2003-11-21  9:22                                                                                   ` Preben Randhol
  2003-11-21 16:24                                                                                     ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-21  9:22 UTC (permalink / raw)


On 2003-11-20, Robert I. Eachus <rieachus@comcast.net> wrote:
> I can't say for you, which is why I recommend the math.  Followning the 
> formal math in quantum mechanics is tough, but it tells you things.  For 

Just bear in mind that math is just a model trying to explain the world.
There are no guarantees that something is true just because the math
says so. Tomorrow there may be a shift in the paradigm. If I recall
correctly wormholes are something the math concerning black holes makes
possible? Doesn't mean that there are wormholes though.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 23:54                                                                         ` Larry Elmore
@ 2003-11-21  9:25                                                                           ` Preben Randhol
  2003-11-21 16:13                                                                             ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-21  9:25 UTC (permalink / raw)


On 2003-11-20, Larry Elmore <ljelmoreat@comcastdot.net> wrote:
> Preben Randhol wrote:
>> On 2003-11-20, Hyman Rosen <hyrosen@mail.com> wrote:
>> 
>> 
>>>The proper way to deal with new technology is to give it some minimal
>>>amount of testing, looking for obvious problems, and if none are present,
>>>go off and use it. If it turns out that problems appear subsequently,
>>>clean them up.
>> 
>> 
>> You mean the debrie after a couple of planes went down due to untested
>> software?
>
> Straw man. No one said "untested" except you.

OK, fair enough. 

Rephrasing: 

You mean the debrie after a couple of planes went down due to minimal
amount of testing.

or perhaps the debrie of the Ariane missels?

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21  8:47                                                                                 ` Dmitry A. Kazakov
@ 2003-11-21  9:28                                                                                   ` Preben Randhol
  2003-11-21 12:57                                                                                     ` Dmitry A. Kazakov
  0 siblings, 1 reply; 385+ messages in thread
From: Preben Randhol @ 2003-11-21  9:28 UTC (permalink / raw)


On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
> In a long term perspective, there is no alternative to nuclear energy.
> CO2 emission is rather a short term problem. 

You never know. The main reason why so much fossile fule is used is the
low cost. Wind, wave, and solar power are also good alternatives, but
the electricity is much more expensive. Unfortunately there is little
research in alternative power sources.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Generic thinbinding toolkit for C
  2003-11-20 18:01                                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-21 10:55                                                                                     ` Lutz Donnerhacke
  2003-11-21 18:02                                                                                       ` Warren W. Gay VE3WWG
  2003-11-22  5:12                                                                                       ` Warren Gay
  0 siblings, 2 replies; 385+ messages in thread
From: Lutz Donnerhacke @ 2003-11-21 10:55 UTC (permalink / raw)


* Warren W. Gay VE3WWG wrote:
> Lutz Donnerhacke wrote:
>> * Warren Gay wrote:
>>>What thinbind would be required to do, is to preprocess the header
>>>file somewhat differently than the C's preprocessor. Instead of
>>
>> This destroys most of the original C API in a unusable way.
>
> Rubbish.

I beg to differ. You have to write down an example C source using the
API for the requested thinbinding. Then you preprocess this source code and
now you can parse the result in order to find out what really happend.

Example: Thinbinding to getc(3).
  #include <stdio.c>
  return getc(stdin);
results in
  extern struct _IO_FILE *stdin;
  return _IO_getc (stdin);
where
  struct _IO_FILE {
    int _flags;
    char* _IO_read_ptr;
    char* _IO_read_end;
    char* _IO_read_base;
    char* _IO_write_base;
    char* _IO_write_ptr;
    char* _IO_write_end;
    char* _IO_buf_base;
    char* _IO_buf_end;
    char *_IO_save_base;
    char *_IO_backup_base;
    char *_IO_save_end;
    struct _IO_marker *_markers;
    struct _IO_FILE *_chain;
    int _fileno;
    int _flags2;
    __off_t _old_offset;
    unsigned short _cur_column;
    signed char _vtable_offset;
    char _shortbuf[1];
    _IO_lock_t *_lock;
    __off64_t _offset;
    void *__pad1;
    void *__pad2;
    int _mode;
    char _unused2[15 * sizeof (int) - 2 * sizeof (void *)];
  };

  struct _IO_marker {
    struct _IO_marker *_next;
    struct _IO_FILE *_sbuf;
    int _pos;
  };

  typedef long int __off_t;
  typedef long long int __off64_t;
  typedef void _IO_lock_t;

You will notice, that the original API vanished by preprocessing. It
introduces a huge structure and a different name. What do you expect as the
generated Ada-API?

> The whole purpose of preprocessing it in thinbind is to compile
> a package for Ada use. It need _NOT_ be the same. You only
> need to arrive at the correct internal answers. There are
> many ways to skin a cat (pardon the expression to cat lovers
> out there).

You wrote about preprocessing and then searching the API. This does not work.
You have to specify the API and preprocessing it to find the real C code.

> As long as the end results work, then you as the user, do not care about
> 1 pass, 3 passes or n passes. You might care about performance, but given
> the choice between coding a thin binding by hand or having your computer
> do it for you, I think the choice is still and easy one.

The user will use "getc(FILE *)". He will never touch the bloody interenal.
He will even not user _IO_getc(struct _IO_FILE *) despite it's very close.

You might complain about high level library calls. Ok, let's go downstairs.
  #include <sys/time.h>
  #include <sys/types.h>
  #include <unistd.h>

  int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
             struct timeval *timeout);

  FD_CLR(int fd, fd_set *set);
  FD_ISSET(int fd, fd_set *set);
  FD_SET(int fd, fd_set *set);
  FD_ZERO(fd_set *set);
will result in
  int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
             struct timeval *timeout);

  (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] &= ~((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
  (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] & ((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
  (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] |= ((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
  do { unsigned int __i; fd_set *__arr = (fd_set *set); for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) ((__arr)->__fds_bits)[__i] = 0; } while (0);

You will never find anything about the FD_* API in a preprocessed header.

> The challenge is to do it well, to make it work in a platform
> neutral sort of way (the generated thin binding should look
> consistent in all platforms, so that the clients of the binding
> won't fail to compile).

The challenge is to convert this to:
  type fd_set is array(1 .. x) of Boolean;
  for fd_set'Size use x;
  for fd_set'Component_Size use 1;
  pragma Pack(fd_set);
and implement FD_* over this type.

>> Hard work. Especially when considering marco expansion down to the plain
>> syscall (Linux).
>
> You don't care about operating system details. You only care about
> things at the C compiler level.

Expansion to the syscall level happens in C-Header files.
  #include <unistd.h>
  pause();
will be translated to:
  pause();
where
  static inline int pause(void) {
    long __res;
    __asm__ volatile ("int $0x80" : "=a" (__res) : "0" (29));
    do {
      if ((unsigned long)(__res) >= (unsigned long)(-125)) {
        errno = -(__res);
	__res = -1;
      }
      return (int) (__res); 
    } while (0);
  }

Yes, that's exactly the thin binding of my kernel_calls.ads (in linux_ix86.adb)

> Yes it is difficult, but this is no more difficult than what GCC does now
> for optimization and compilation.

I still beg to differ.

> I am not suggesting that the macro expansions be ignored. But
> some of them have to be expanded along the way to provide the
> correct view of the code. But the other objective is to come
> away with macro definitions that fold into constants. These
> can be coded into an Ada spec. A tricky process to be sure,
> but this can be done.

From doing this by hand, I would gladly enjoy any hit for automatisms.

>> So you have to start from the man page and fill in the blanks by designing
>> the Ada types(!) and calls like expected. 
>
> Your point isn't clear to me. Name an example.

man 2 select.

> Lets take an example:
>
> #define increment(x)   (++x)

Let's assume the manpage contains a description of 'increment' describing it
for 'int' types. So you gain "function increment(x : int) returns int;" from
the man page (API). Now you can use the preprocessor to find out, what the
thin binding has to do. This gets more complicated if there is a macro and a
library call (for address reference or linking):
  extern int increment(int);
  #define increment(x) ((x)+1)

> Now you're right that there is no type information here.

Determine the Ada-Type of "struct fd_set".

> Ada. If a C compiler can translate C code into object
> code, then I am not convinced that another C compiler
> could not generate Ada code.

This would be no Ada code. It would be C Code with Ada syntax. Ugly and
unusable. In order to transform header files, you have to parse the API
description and define types, functions and procedures from there. Then you
have to map this to C. This binding can be very thin, but strongly typed. BTDT.

> In this case, we are only interested in a thin binding, not a complete
> translation of the code.

You proposes to recode the existing thin binding to the library from one
language to another. This does not work. Every binding models the imported
API in the importing language. This has to be done seperatly. A thin binding
written in C to the glibc or a kernel has to rewritten from scratch in Ada.

> I have already acknowledged the practical need for a hints file.

This hints file has to contain the API, because it can't regained from the
C header code (too much type information is missing).

> I do agree that there will be some C things that it will be hard to
> automate completely.

extern int printf(char * format, ...);

> Perhaps some Computer Science major will take this
> project on?  Professors out there looking for project
> ideas?  Let's see if this is practical!

Good luck.



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-20 17:47                                                                                   ` Warren W. Gay VE3WWG
@ 2003-11-21 12:53                                                                                     ` Marin David Condic
  2003-11-21 17:21                                                                                       ` Warren W. Gay VE3WWG
       [not found]                                                                                     ` <3FBF774C.2050108@shore.net>
  1 sibling, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-21 12:53 UTC (permalink / raw)


Let me conclude with this: I have no opposition to a C/C++ header file 
translator. It removes one more roadblock to using Ada. I have doubts 
about how achievable it is because header files are always context 
sensitive and Ada package specs are not. Perhaps the best that can be 
done is to generate a binding 90% of the time and puke over the rest of 
them. I also have doubts about the relative food value of having one. It 
would be useful, but would the effort be better spent coming up with 
something that makes Ada *more* attractive to people using C/C++ in some 
problem domains? Rather than a binding to some C/C++ library that does 
graphics - why not an *Ada* library that does graphics? (More work, 
clearly, but it provides a chance to *innovate* and do something that 
might provide a good reason to go with Ada.)

MDC


Warren W. Gay VE3WWG wrote:
> 
> But even if you do all this, you still have the pain of getting
> C/C++ macro constants into an Ada program for use. This is
> what I envision thinbind to be all about.
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21  9:28                                                                                   ` Preben Randhol
@ 2003-11-21 12:57                                                                                     ` Dmitry A. Kazakov
  2003-11-21 13:25                                                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-21 13:57                                                                                       ` Preben Randhol
  0 siblings, 2 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21 12:57 UTC (permalink / raw)


On Fri, 21 Nov 2003 09:28:42 +0000 (UTC), Preben Randhol
<randhol+valid_for_reply_from_news@pvv.org> wrote:

>On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>> In a long term perspective, there is no alternative to nuclear energy.
>> CO2 emission is rather a short term problem. 
>
>You never know. The main reason why so much fossile fule is used is the
>low cost.

Low *visible* cost. Nobody calculated the actual costs carried by
state in the forms of subventions, health care, etc

> Wind, wave, and solar power are also good alternatives,

They are not. They (and fossil fuel) are based on the solar energy. If
you take it from somewhere, you inevitable damage that place. The
damage is little, but if we consider a long term perspective, then we
should take into account an exponential growth of energy consumption.

> but
>the electricity is much more expensive. Unfortunately there is little
>research in alternative power sources.

Yes, but what we mean under alternative power sources? Wind and solar
elements are clearly no runners.

In a medium term pespective waves, earth gravitation field, earth
magnetic field (there were NASA experiments), genetically modified
living organisms could be.

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:49                                                                             ` OT: Nuclear Waste (Was Re-Marketing Ada) Alexandre E. Kopilovitch
@ 2003-11-21 12:59                                                                               ` Marin David Condic
  2003-11-21 15:29                                                                                 ` Frank J. Lhota
  2003-11-22 12:33                                                                               ` Dmytry Lavrov
  1 sibling, 1 reply; 385+ messages in thread
From: Marin David Condic @ 2003-11-21 12:59 UTC (permalink / raw)


I hate to be the Newsgroup Gestapo, but really, this thread is flooding 
my newsreader and it is waaaaaayyyyy off topic. It might even give 
newbies to this group the wrong impression. Could you guys pick this 
thread up in someplace that is more on-topic? Thanks.

MDC


Alexandre E. Kopilovitch wrote:
> Dmytry Lavrov wrote:
> 
> 
>>Okay,let's assume that you're right that radioactivity is not so
>>dangerous.
> 
> 
> Radioactivity is certainly dangerous (in high doses). No one disputes that.
> The problem, however, is what is more dangerous - to live with potential
> sources of high radioactivity, such as nuclear power plants, or without them.
> 
> 
>>Govs also want to do that,to start using nukes in wars,to make safety
>>standards lower ,etc.Many officials "benefits" from under-estimating
>>level of danger.There's big money spent on that propagation.All that
>>awards to someone showing that it's isn't dangerous..on writing
>>fooling papers about safety,or about tank armour,etc.
> 
> 
> Naturally, there are forces - sometimes governments, sometimes businesses -
> which are interested for understimating of that danger and lower safety
> standards - for radioactivity as well as for many other issues.
> 
> 
>>And another
>>side:how many money specially spent on "fooling" peoples that it's
>>dangerous? Show me any personal Bill Gates spending money on that as
>>many as govs spend for opposite direction.Of course you can talk about
>>mass-media,about doing money,but again show me organisation that
>>spends money from other sources on "fooling peoples" that it's
>>dangerous.
> 
> 
> You seem to be somehow hypnotized by "big money". People generally need not
> a presence of "big money" to be fooled - they can be fooled by an idea, by
> a perceived need of community feeling, or even of their own accord. (Note,
> that people fighting against the danger of radioactivity new almost nothing
> about it - they new just what media and friends said them - as a rule... the
> redioactivity is invisible for them in all senses.)
> 
> Look, a simple fire is a danger, isn't it? But we can't survive, at least our
> civilization can't survive without that dangerous fire. So, we keep it with us,
> but at the same time we keep firefighters and keep safety standards against
> fire. And oh well, there always been attempts to avoid or lower those standards,
> to save money on them etc. The situation with nuclear power plants (and nuclear
> waste, by extension) is similar in several important aspects (although analogy
> is not generally close for several reasons).
> 
> You may hope that current situation with nuclear power plant is relatively
> temporary - perhaps for several decades, no more, and then they will be replaced
> by other, better sources of energy (or at least they will be made inherently
> safer). But for now we have alternative: either tolerate nuclear power plants
> or suffer significantly worse troubles (not only dangers, but real and immediate
> troubles) with substitute sources of energy, or severely limit our energy
> consumption, taking all consequences of that.
> 
> 
> 
> Alexander Kopilovitch                      aek@vib.usr.pu.ru
> Saint-Petersburg
> Russia
> 


-- 
======================================================================
Marin David Condic
I work for: http://www.belcan.com/
My project is: http://www.jsf.mil/NSFrames.htm

Send Replies To: m   o   d   c @ a   m   o   g
                    c   n   i       c   .   r

     "Trying is the first step towards failure."
         --  Homer Simpson

======================================================================




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 22:55                                                                         ` Robert I. Eachus
  2003-11-21  0:00                                                                           ` Jeffrey Carter
@ 2003-11-21 13:25                                                                           ` Vinzent 'Gadget' Hoefler
  2003-11-21 16:03                                                                             ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-21 13:25 UTC (permalink / raw)


Robert I. Eachus wrote:

>So compared to the GM foods, the "natural" foods can contain similar 
>modifications.

Yes, of course. I don't have any concerns regarding genetically
modified food in general. I mean, we already eat a lot of crap every
day, so why bother? ;-)

>  Only in the case of the GM foods, there is design intent 
>involved, and some testing.  In natural foods, the genetic splicing and 
>random point mutations are just that, random.

Yes. So the probability to generate something harmful, because someone
simply forgot to think of *all* consequences, is pretty much reduced.
We call that risk management, don't we?

Growing plants which are resistant against most chemicals and
spreading their genes wide out into nature *might* have very
interesting effects on the whole world. It will probably take some
years. But after that, it might be very hard to "clean it up".
My trust in Mother Nature's capabilities of being able to handle that
is still big enough - but it might be the case that it will take
millions of years to clean up what human mankind did in just a few
years and unhappy moments. It might even be the simple case that human
mankind doesn't survive its own progress.

Well, perhaps it already happened... Atlantis might turn out to be a
true story.

There are still a lot of "might"s, "possible"s and "probable"s. Can
you "guarantee"? At least in the famous five-nines-range we are trying
to achieve in critical software?


Vinzent.

-- 
np: Avril Lavigne - I'm With You



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 12:57                                                                                     ` Dmitry A. Kazakov
@ 2003-11-21 13:25                                                                                       ` Vinzent 'Gadget' Hoefler
  2003-11-21 14:10                                                                                         ` Dmitry A. Kazakov
  2003-11-21 13:57                                                                                       ` Preben Randhol
  1 sibling, 1 reply; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-21 13:25 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

>genetically modified living organisms could be.

You mean that sort of "living batteries" like in "The Matrix"? ;-)


Vinzent.

-- 
np: T.Rex - Telegram Sam



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 12:57                                                                                     ` Dmitry A. Kazakov
  2003-11-21 13:25                                                                                       ` Vinzent 'Gadget' Hoefler
@ 2003-11-21 13:57                                                                                       ` Preben Randhol
  2003-11-21 14:00                                                                                         ` Preben Randhol
  2003-11-21 14:27                                                                                         ` Dmitry A. Kazakov
  1 sibling, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-21 13:57 UTC (permalink / raw)


On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>
> Low *visible* cost. Nobody calculated the actual costs carried by
> state in the forms of subventions, health care, etc

But of course. I wouldn't expect economists to see thus far ;-)

> They are not. They (and fossil fuel) are based on the solar energy. If
> you take it from somewhere, you inevitable damage that place. The
> damage is little, but if we consider a long term perspective, then we
> should take into account an exponential growth of energy consumption.

And you don't damage a plant with a nuclear power plant of a coal plant?

> Yes, but what we mean under alternative power sources? Wind and solar
> elements are clearly no runners.

Please explain.

> In a medium term pespective waves, earth gravitation field, earth
> magnetic field (there were NASA experiments), genetically modified
> living organisms could be.

Or drawing heat from the ground.

-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 13:57                                                                                       ` Preben Randhol
@ 2003-11-21 14:00                                                                                         ` Preben Randhol
  2003-11-21 14:27                                                                                         ` Dmitry A. Kazakov
  1 sibling, 0 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-21 14:00 UTC (permalink / raw)


On 2003-11-21, Preben Randhol <randhol+valid_for_reply_from_news@pvv.org> wrote:
>
> And you don't damage a plant with a nuclear power plant of a coal plant?
                         place


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 13:25                                                                                       ` Vinzent 'Gadget' Hoefler
@ 2003-11-21 14:10                                                                                         ` Dmitry A. Kazakov
  2003-11-21 14:24                                                                                           ` Preben Randhol
  0 siblings, 1 reply; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21 14:10 UTC (permalink / raw)


On Fri, 21 Nov 2003 14:25:27 +0100, Vinzent 'Gadget' Hoefler
<ada.rocks@jlfencey.com> wrote:

>Dmitry A. Kazakov wrote:
>
>>genetically modified living organisms could be.
>
>You mean that sort of "living batteries" like in "The Matrix"? ;-)

If we want to minimize risk, the system should to be distirbuted, self
repairing, self adapting. Sounds much like a living being!

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 14:10                                                                                         ` Dmitry A. Kazakov
@ 2003-11-21 14:24                                                                                           ` Preben Randhol
  2003-11-21 14:36                                                                                             ` Dmitry A. Kazakov
  2003-11-21 14:53                                                                                             ` Vinzent 'Gadget' Hoefler
  0 siblings, 2 replies; 385+ messages in thread
From: Preben Randhol @ 2003-11-21 14:24 UTC (permalink / raw)


On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>
> If we want to minimize risk, the system should to be distirbuted, self
> repairing, self adapting. Sounds much like a living being!

Would be interesting to find one that actually produces energy.
-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 13:57                                                                                       ` Preben Randhol
  2003-11-21 14:00                                                                                         ` Preben Randhol
@ 2003-11-21 14:27                                                                                         ` Dmitry A. Kazakov
  1 sibling, 0 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21 14:27 UTC (permalink / raw)


On Fri, 21 Nov 2003 13:57:10 +0000 (UTC), Preben Randhol
<randhol+valid_for_reply_from_news@pvv.org> wrote:

>On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>>
>> Low *visible* cost. Nobody calculated the actual costs carried by
>> state in the forms of subventions, health care, etc
>
>But of course. I wouldn't expect economists to see thus far ;-)
>
>> They are not. They (and fossil fuel) are based on the solar energy. If
>> you take it from somewhere, you inevitable damage that place. The
>> damage is little, but if we consider a long term perspective, then we
>> should take into account an exponential growth of energy consumption.
>
>And you don't damage a plant with a nuclear power plant of a coal plant?

Consider a level of consumption at, say, 2% of total solar radiation
received by the earth. Take this amount from waves, wind, whatsoever,
and the global ecological system would simply collapse.

>> Yes, but what we mean under alternative power sources? Wind and solar
>> elements are clearly no runners.
>
>Please explain.

1. watt / squaremeter of desolation

2. add here the unsolved problem of energy accumulation. Artificial
lakes in Alps? Hydrogen cisterns all over the country? Greens like
would-be-terrorists-attack arguments. Well, let's apply it here. BTW,
the worst man-made explosions were ones of mineral fertilizers!

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 14:24                                                                                           ` Preben Randhol
@ 2003-11-21 14:36                                                                                             ` Dmitry A. Kazakov
  2003-11-21 14:53                                                                                             ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Dmitry A. Kazakov @ 2003-11-21 14:36 UTC (permalink / raw)


On Fri, 21 Nov 2003 14:24:19 +0000 (UTC), Preben Randhol
<randhol+valid_for_reply_from_news@pvv.org> wrote:

>On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>>
>> If we want to minimize risk, the system should to be distirbuted, self
>> repairing, self adapting. Sounds much like a living being!
>
>Would be interesting to find one that actually produces energy.

Catch a Maxwell's daemon! (:-))

--
Regards,
Dmitry Kazakov
http://www.dmitry-kazakov.de



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 14:24                                                                                           ` Preben Randhol
  2003-11-21 14:36                                                                                             ` Dmitry A. Kazakov
@ 2003-11-21 14:53                                                                                             ` Vinzent 'Gadget' Hoefler
  1 sibling, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-21 14:53 UTC (permalink / raw)


Preben Randhol wrote:

>On 2003-11-21, Dmitry A Kazakov <mailbox@dmitry-kazakov.de> wrote:
>>
>> If we want to minimize risk, the system should to be distirbuted, self
>> repairing, self adapting. Sounds much like a living being!
>
>Would be interesting to find one that actually produces energy.

Can't be that hard. Or how do you think you keep your body's
temperature?


Vinzent.

-- 
np: Kate Bush - Wuthering Heights



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 12:59                                                                               ` Marin David Condic
@ 2003-11-21 15:29                                                                                 ` Frank J. Lhota
  2003-11-24 17:15                                                                                   ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 385+ messages in thread
From: Frank J. Lhota @ 2003-11-21 15:29 UTC (permalink / raw)


"Marin David Condic" <nobody@noplace.com> wrote in message
news:3FBE0C40.8020806@noplace.com...
> I hate to be the Newsgroup Gestapo, but really, this thread is flooding
> my newsreader and it is waaaaaayyyyy off topic. It might even give
> newbies to this group the wrong impression. Could you guys pick this
> thread up in someplace that is more on-topic? Thanks.

Will do. As noted before, cleaning up Nuclear power plants is a problem. The
Ada solution to this problem is to require that all such plants be derived
from Ada.Finalization.Limited_Controlled. I guess that you could also use
Ada.Finalization.Controlled, but then you have to deal with the issue of
moving a power plant. :)





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 13:25                                                                           ` Vinzent 'Gadget' Hoefler
@ 2003-11-21 16:03                                                                             ` Robert I. Eachus
  2003-11-21 16:31                                                                               ` Vinzent 'Gadget' Hoefler
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-21 16:03 UTC (permalink / raw)


Vinzent 'Gadget' Hoefler wrote:

> Growing plants which are resistant against most chemicals and
> spreading their genes wide out into nature *might* have very
> interesting effects on the whole world. It will probably take some
> years. But after that, it might be very hard to "clean it up".
> My trust in Mother Nature's capabilities of being able to handle that
> is still big enough - but it might be the case that it will take
> millions of years to clean up what human mankind did in just a few
> years and unhappy moments. It might even be the simple case that human
> mankind doesn't survive its own progress.
> 
> Well, perhaps it already happened... Atlantis might turn out to be a
> true story.
> 
> There are still a lot of "might"s, "possible"s and "probable"s. Can
> you "guarantee"? At least in the famous five-nines-range we are trying
> to achieve in critical software?

You still don't get it do you.  The probability that a genetically 
modified food has not already occured naturally somewhere is small.  The 
probability that a GM food that has an evolutionary advantage will not 
eventually be producted by random, natural mutations is zero.  Every day 
nature does millions of genetic experiments and immediately releases the 
resulting species into the wild.  Trying to hold GM foods to a higher 
standard than natural products is a bad joke.  In fact, let me put all 
this on a sound economic footing.  What is the probability that a GM 
foodstuff will do one millionth the damage that a new influenza variant 
will?  Near zero.  How often do natural processes create new 'flu 
variants?  About once a year.

So for every million dollars we spend on finding and controlling new 
'flu variants, how much should we spend on preventing GM food adverse 
effects? Or look at how much SARS cost the world economy this year, and 
it killed significantly more people than 9/11.  The only prediction I 
can be confident about is that in the future there will be another new 
disease like SARS that will be worse.  How much effort should be spent 
on containing the next SARS than on the possibility that some GM food 
plant will cause upset stomachs?  The real answer is that the developer 
of the GM food that hypothetically causes upset stomachs is going to 
consign it to the circular file before it ever becomes a problem.  No 
regulation required.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21  9:25                                                                           ` Preben Randhol
@ 2003-11-21 16:13                                                                             ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-21 16:13 UTC (permalink / raw)


Preben Randhol wrote:

> You mean the debrie after a couple of planes went down due to minimal
> amount of testing.
> 
> or perhaps the debrie of the Ariane missels?

How about the number of passengers who were killed during testing of the 
  Airbus 340?  It was monumentally stupid of Airbus to have passengers 
during required testing, but the crash was one that would only occur 
during thorough testing.  If thorough testing wasn't required, probably 
no other A340 would have crashed for the same reason.

So there is a trade-off involved, and the right answer is to cut-off the 
testing at a point where the testing is more likely to kill people than 
not doing the test.

Incidentally, the A320 is an example of the opposite effect.  There were 
flaws in the design of the autopilot that were not discovered during 
testing, and it took several crashes of the A320 in service with full 
passenger loads before the problems were found.

In the GM foods case, the equivalent point is where resources spent on 
testing could better be spent on dealing with natural mutations.  Right 
now, the GM foods are ridiculously over tested by that standard.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21  9:22                                                                                   ` Preben Randhol
@ 2003-11-21 16:24                                                                                     ` Robert I. Eachus
  0 siblings, 0 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-21 16:24 UTC (permalink / raw)


Preben Randhol wrote:

> Just bear in mind that math is just a model trying to explain the world.
> There are no guarantees that something is true just because the math
> says so. Tomorrow there may be a shift in the paradigm. If I recall
> correctly wormholes are something the math concerning black holes makes
> possible? Doesn't mean that there are wormholes though.

Correct.  On the other hand, physics has to describe what is possible so 
that astronomers can look for evidence of such things.  Recent examples 
of this are brown dwarfs, neutron stars, and black holes.  Actually the 
possible tie between small evaporating black holes and X-ray bursts is 
one of the more interesting areas of astronomy right now.  In the past 
decade the Alcubierre space drive has gone from an interesting 
mathematical trick, to something where it is seriously worth looking for 
evidence that some other civilization is using it.  (And to keep working 
on how to make one, just in case we can go look for evidence of other 
civilizations directly.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 16:03                                                                             ` Robert I. Eachus
@ 2003-11-21 16:31                                                                               ` Vinzent 'Gadget' Hoefler
  0 siblings, 0 replies; 385+ messages in thread
From: Vinzent 'Gadget' Hoefler @ 2003-11-21 16:31 UTC (permalink / raw)


Robert I. Eachus wrote:

>Vinzent 'Gadget' Hoefler wrote:
>
>> There are still a lot of "might"s, "possible"s and "probable"s. Can
>> you "guarantee"? At least in the famous five-nines-range we are trying
>> to achieve in critical software?
>
>You still don't get it do you.

I admit, I don't have the insight to really judge the problem.

>  The probability that a genetically 
>modified food has not already occured naturally somewhere is small.

Yes. But what is the probability that this mutation survives for at
least a couple of generations?

>  The 
>probability that a GM food that has an evolutionary advantage will not 
>eventually be producted by random, natural mutations is zero.

Well, but what is the evolutionary advantage of wheat with more and
bigger grains? It is the perfect food, so it will get eaten before it
can spread its seeds even further. So it would disappear very quickly.
;-)

>  Every day 
>nature does millions of genetic experiments and immediately releases the 
>resulting species into the wild.

Yes, of course. This is the random generator. But AFAICS it is sort of
uncontrolled (this only applies to the first result). If the new
species has advantages, it will survive. If not, it won't.

But does that process really apply to everything we are trying to
achieve in that area? What is the probability that nature actually
sees the advantage in something only we would call an advantage?

>So for every million dollars we spend on finding and controlling new 
>'flu variants, how much should we spend on preventing GM food adverse 
>effects?

Another million, I'd suggest. :-)

>  The only prediction I 
>can be confident about is that in the future there will be another new 
>disease like SARS that will be worse.

Worse in the view of a human being, yes.

Let me put it this way: What exactly would be the advantage of a human
being that is resistant against all sort of diseases and lives for
500+ years? Probably we as human beings would call that an advantage,
but IMO it would cause significant problems on the whole world
population of every other species. If nature would produce something
like that it would cancel itself out sooner or later.

>  How much effort should be spent 
>on containing the next SARS than on the possibility that some GM food 
>plant will cause upset stomachs?  The real answer is that the developer 
>of the GM food that hypothetically causes upset stomachs is going to 
>consign it to the circular file before it ever becomes a problem.

I'm really not concerned about upset stomachs from a genetically
modified tomato. I'm just thinking a little bit about possible
consequences. And as I said I don't have the insight to tell what's
right and what's wrong here.

>No regulation required.

Agreed. Evolution will do nicely. :->


Vinzent.

-- 
np: Nightwish - End of all Hope



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21  9:05                                                                               ` Dmitry A. Kazakov
@ 2003-11-21 16:36                                                                                 ` Robert I. Eachus
  2003-11-21 17:05                                                                                   ` Stephane Richard
  2003-11-22 10:45                                                                                   ` Dmytry Lavrov
  0 siblings, 2 replies; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-21 16:36 UTC (permalink / raw)


Dmitry A. Kazakov wrote:

> It is a wrong question. The correct one is: what is the expected
> damage per megawatt (mean + dispersion). If you compare the answers
> for all sorts of plants, you will probably see that Robert is right.

I'm going to try to stop posting on this subject, but...

With a BWR, AGR, or PWR nuclear power plant the expected number of 
deaths per quad is negative.  (Anyone who wants to argue against LMFBRs 
and in favor of MSRs as breeder reactors will get no arguments from me.)
With a coal buring power plant, the expected number of deaths  from the 
normal operation of the plant--excluding disasters--is too high for me 
to stomach.  Every time I look at this data and factor in the threat of 
global warming, I am tempted to do the human race a favor and go destroy 
coal buring power plants.  (But it wouldn't work.  What is needed is 
education.)

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 16:36                                                                                 ` Robert I. Eachus
@ 2003-11-21 17:05                                                                                   ` Stephane Richard
  2003-11-22 10:45                                                                                   ` Dmytry Lavrov
  1 sibling, 0 replies; 385+ messages in thread
From: Stephane Richard @ 2003-11-21 17:05 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 625 bytes --]



-- 

"Robert I. Eachus" <rieachus@comcast.net> wrote in message
news:Kdidnb0UxJpsoyOiRVn-tA@comcast.com...
> I'm going to try to stop posting on this subject, but...
>
>
> -- 
>                                            Robert I. Eachus
>
> 100% Ada, no bugs--the only way to create software.
>
Try huh?

Well it's better to try and fail than to never try at all ;-).

I don't know much about this subject at least...or should I say I didn't
before reading each and every thread ;-).  I happen to find it quite
interesting, what I've read so far :-).

St�phane Richard
"Ada World" Webmaster
http://www.adaworld.com






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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-21 12:53                                                                                     ` Marin David Condic
@ 2003-11-21 17:21                                                                                       ` Warren W. Gay VE3WWG
  2003-11-21 19:06                                                                                         ` Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-21 17:21 UTC (permalink / raw)


Marin David Condic wrote:
> Let me conclude with this: I have no opposition to a C/C++ header file 
> translator. It removes one more roadblock to using Ada. I have doubts 
> about how achievable it is because header files are always context 
> sensitive and Ada package specs are not. Perhaps the best that can be 
> done is to generate a binding 90% of the time and puke over the rest of 
> them. 

That is the likely result. But with the help of hint files,
you can probably direct thinbind to resolve or ignore the
pukey code within the header file.

> I also have doubts about the relative food value of having one. It 
> would be useful, 

Based upon the posts that I have seen over the last few years
here in cla, I would say that interfacing to C is not easy
for many Ada users.

The one problem that I constantly have to hand craft a solution
to is the interfacing with C components on different platforms.
A value in a C header file for FreeBSD may or may not be the
same as the same on a Linux host. That same value (or type
size) may differ again on a Linux/Alpha host for another.

This aspect is a royal pain. To make APQ portable (for example),
I have to resort to compiling short little C test programs
to generate Ada specs, or portions thereof. Sometimes shell
scripts massage that output further. A tool, like thinbind
could reduce this effort considerably to one line in a
Makefile. At least to me, this is a big issue.

> but would the effort be better spent coming up with 
> something that makes Ada *more* attractive to people using C/C++ in some 
> problem domains? 

This is a difficult call. But I know this much for sure:

Every open sourced project requires me to deal with this
interfacing to C issue, at some place or level. FLORIST
is great for some things, but if it doesn't compile on all
platforms, then you've limited your scope. If you have
things that FLORIST cannot cover (like UNIX sockets,
which are not yet supported), then you have to get down
to the bare metal or choose another library. But that
other library may have other issues (like is it easy
enough for the barely capable to compile
user to install _that_ library, before he compiles
your project), and so on.

So right now, this issue is royally painful for any
portable Ada project that must interface to the C
world.

> Rather than a binding to some C/C++ library that does 
> graphics - why not an *Ada* library that does graphics? (More work, 
> clearly, but it provides a chance to *innovate* and do something that 
> might provide a good reason to go with Ada.)

Clearly, there is a need for libraries and Graphics for Ada. No
argument there. I am glad to see the effort that is taking
place in GtkAda. But I wish we could have a better solution for
interfacing to C/C++. That would greatly lower the uphill slope
that any Ada95 enthusiast has to climb.
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: Re-Marketing Ada (was "With and use")
       [not found]                                                                                     ` <3FBF774C.2050108@shore.net>
@ 2003-11-21 17:42                                                                                       ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-21 17:42 UTC (permalink / raw)


David J.A. Koogler wrote:

> Warren,
> 
> Let me point one nasty feature of C include files: there are
> idiots out there that use the C preprocessor as a code
> generator (Oracle immediately comes to mind). The include
> file gets referenced multiple times within a source file. The
> expansion of the include file depends upon the setting of
> conditional variables. For instance, you include the file at
> the start of code and it generates a block of data definitions.
> Right after the #include you #define say CODE_GEN. Later on
> in the source you include the file again but this time it
> generates blocks of code.

Yes, I am familiar with this technique, and have used it
myself for many years. This problem is a bit nasty, but
I think it can be controlled (extra care is required, as
you point out).

> It is a powerful technique 

Well, I view it more of a hack: it is designed to free the
C/C++ programmer from having to worry about what comes
first: "cart or horse?" The obvious reason for this is the
complex sets of relationships that develop amongst the
various include files.

> and people use it as form of Ada
> package, especially when they want in-lining effects. I have
> seen the technique carried to an extreme where the include
> file is designed for recursive inclusion. It is pure hell
> to understand systems built in this way. I usually find you
> must reverse engineer the system using the compiler's -E
> option to see preprocesor's output. 

I have had to resort to the same technique. Sometimes the
compile error msgs just don't provide enough clues to the
nature of the error, because so many complex macro
iterations have occured to get you to the current
state of affairs. No argument there. Recursive inclusion
seems very much like an abuse of the feature to me (and
people focus on gotos!)

 > Thankfully there are few
> people who write such code and so it is an extreme case but
> look closely at some of the Linux include files and you may
> see similar sorts of idiotcy. Hence translating include files
> into Ada packages can be more challenging than expected.

No, I think I understand the problem well, having sorted
through many such problems before. In the end however,
the C preprocessor + compiler are able to make sense of
it all. So I try not to get discouraged by the job at
hand, because algorithms can handle complexity,
as long as the methods involved are not overly complex.

> Here is an alternative course of action for such a translator,
> which should appeal to your database outlook. I wrote a
> simple translation system based on the Progress database/
> language. The parser was quite basic and grabbed the data
> definitions, routine definitions and #defines. I took
> advantage of the fact that all names in C must be unique
> (i.e. there is but a single global namespace). I used
> the names as database keys. I created records that held
> the parsed C descriptions. From the C descriptions I
> generated a parallel set of Ada descriptions, linked to
> the original C records via the C name.
> 
> The translator is not expected to produce a perfect
> translation, but just to transcribe enough information to
> give you a good starting point. The translator does lots
...
> I have not worked on my translator in several years
> but if you are interested we could discuss this topic
> at greater depth.

Apart from the need for database, I think we're pretty
much on the same wavelength. If you look at my APQ
project, I use a combination of shell scripts and simple
run-once C programs to generate Ada specs that are
customized for the flavour of UNIX/Windows that the
user is compiling on (I don't handle cross compiles).

The thinbind tool could follow along the lines that you
and I have talked about. The first time the tool is
run in development, it is likely to spew warnings and
errors all over the place. In fact, one approach might
be to write a new hints file, with commented out lines
where the programmer could review, uncomment and choose
courses of action for. Feed in hints file for round 2,
and iterated until success.

Then iterate over a number of available platforms, so
that you encode in the final hints file, enough info
to handle just about any platform related issue. I
believe that what you use a database for, can all be
done in memory (as a compile process), with the final
state of problems and programmer coded hints being
written to some hints.new file. This can be discarded
or suppressed in the final stages of development, or
simply discarded with a "make clean".

If new problems come up, then you take the hints.new
file, edit it, and replace your current freds_fft.hints
file.

Agreed that an early rendition of the project could
just capture those local #defines (that is what I
do in the APQ make/shell/C-program mess). But function
prototypes are also very important. More sophisticated
releases would also address structures etc.

I do believe that with the correct design, you could
come very close on this. My problem, is that I already
have too many Ada projects to finish.

I just keep hoping that the seed of an idea gets
planted out there with someone else that is spoiling
for a good project to do. ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: Generic thinbinding toolkit for C
  2003-11-21 10:55                                                                                     ` Generic thinbinding toolkit for C Lutz Donnerhacke
@ 2003-11-21 18:02                                                                                       ` Warren W. Gay VE3WWG
  2003-11-22  4:25                                                                                         ` Warren Gay
  2003-11-22  5:12                                                                                       ` Warren Gay
  1 sibling, 1 reply; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-21 18:02 UTC (permalink / raw)


Lutz Donnerhacke wrote:

> * Warren W. Gay VE3WWG wrote:
> 
>>Lutz Donnerhacke wrote:
>>
>>>* Warren Gay wrote:
>>>
>>>>What thinbind would be required to do, is to preprocess the header
>>>>file somewhat differently than the C's preprocessor. Instead of
>>>
>>>This destroys most of the original C API in a unusable way.
>>
>>Rubbish.
> 
> I beg to differ. You have to write down an example C source using the
> API for the requested thinbinding. Then you preprocess this source code and
> now you can parse the result in order to find out what really happend.
> 
> Example: Thinbinding to getc(3).
>   #include <stdio.c>
>   return getc(stdin);

Well, first of all, you're focusing on the program
that is _using_ getc, that was defined in stdio.h.

I am only interested in processing the stdio.h file
(not the client code).  So within stdio.h (or nested
include), there is a #define for getc, if it is
a macro. That is what thinbind will be inspecting
closely.

> results in
>   extern struct _IO_FILE *stdin;
>   return _IO_getc (stdin);
> where
>   struct _IO_FILE {
>     int _flags;
>     char* _IO_read_ptr;
...
>     char _unused2[15 * sizeof (int) - 2 * sizeof (void *)];
>   };
> 
>   struct _IO_marker {
>     struct _IO_marker *_next;
>     struct _IO_FILE *_sbuf;
>     int _pos;
>   };
> 
>   typedef long int __off_t;
>   typedef long long int __off64_t;
>   typedef void _IO_lock_t;
> 
> You will notice, that the original API vanished by preprocessing. 

Which is to be expected: all macros disappear by preprocessing.

Thin bind would have to be CPP syntax aware, and C aware
at various stages (in some stages, it will be wearing two
hats).

> introduces a huge structure and a different name. What do you expect as the
> generated Ada-API?

I agree that there will still be some situations that will
be too difficult to solve (at least in the early stages
of such a tool at least). But this is where the hints
file comes in:

stdio.h.hints:
--------------
   wrapper: getc

or
   #ifdef FreeBSD_HOST
      wrapper: getc               -- Create C wrapper routine
   #else
      function returns int: getc  -- Use native function call
   ...

may be all that is necessary to get thinbind to compile a
little C wrapper routine, that Ada can easily call, and
that the C wrapper can invoke the real C macro. This is
not ideal from a performance perspective, but it works.

>>The whole purpose of preprocessing it in thinbind is to compile
>>a package for Ada use. It need _NOT_ be the same. You only
>>need to arrive at the correct internal answers. There are
>>many ways to skin a cat (pardon the expression to cat lovers
>>out there).
> 
> You wrote about preprocessing and then searching the API. This does not work.
> You have to specify the API and preprocessing it to find the real C code.

You can do both at the same time. You have to manage a lot
more state information this way, but it can be done.

I have to end this post here, because I must attend a meeting
right now. Stay tuned. ;-)

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-21 17:21                                                                                       ` Warren W. Gay VE3WWG
@ 2003-11-21 19:06                                                                                         ` Chad R. Meiners
  2003-11-22  4:20                                                                                           ` Warren Gay
  0 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-21 19:06 UTC (permalink / raw)



"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
news:PPrvb.1623$NB4.26040@news20.bellglobal.com...

> The one problem that I constantly have to hand craft a solution
> to is the interfacing with C components on different platforms.
> A value in a C header file for FreeBSD may or may not be the
> same as the same on a Linux host. That same value (or type
> size) may differ again on a Linux/Alpha host for another.

Instead of a hint file, perhaps a better reproach would be a to have an api
specification which declares the types and subroutines that you want to
appear in the thin binding, and where in the C header file to get there
definition?  This way you can guarantee the resulting thin binding will have
a consistent interface despite the changing representations.





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-21 19:06                                                                                         ` Chad R. Meiners
@ 2003-11-22  4:20                                                                                           ` Warren Gay
  2003-11-22 17:06                                                                                             ` Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Warren Gay @ 2003-11-22  4:20 UTC (permalink / raw)


"Chad R. Meiners" wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> wrote in message
> news:PPrvb.1623$NB4.26040@news20.bellglobal.com...
>
> > The one problem that I constantly have to hand craft a solution
> > to is the interfacing with C components on different platforms.
> > A value in a C header file for FreeBSD may or may not be the
> > same as the same on a Linux host. That same value (or type
> > size) may differ again on a Linux/Alpha host for another.
>
> Instead of a hint file, perhaps a better reproach would be a to have an api
> specification which declares the types and subroutines that you want to
> appear in the thin binding, and where in the C header file to get there
> definition?  This way you can guarantee the resulting thin binding will have
> a consistent interface despite the changing representations.

OK, I think were on similar wavelengths here. So instead of using
a hints file, specify what you hope to get out of the header file.

Well, I suppose this works very well for the API functions, structures,
types etc. One area where this falls down perhaps is for macro
constants (imagine trying to specify all the error code constants
from something like errno.h). But I suppose you could do the
following:

  - Choose all or nothing folded macro constant definitions
  - Choose all including or all except according to a set of
    regular expressions matching the macro name. For
    example, you could specify:

    Defines include "HAVE_.*"

    to grab those macros out of the MySQL my_config.h file.

Actually, the more I think about your idea, the more I like it. It has the
additional advantage that you only expose yourself to areas that are
important to your application. IOW, there is a much greater chance
of success on all platforms, if you stick to only what you need,
rather than everything and the kitchen sink. I like that idea.

Maybe you should be writing this tool? ;-)

--
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove the nospam from the email address: blame the worms]




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

* Re: Generic thinbinding toolkit for C
  2003-11-21 18:02                                                                                       ` Warren W. Gay VE3WWG
@ 2003-11-22  4:25                                                                                         ` Warren Gay
  0 siblings, 0 replies; 385+ messages in thread
From: Warren Gay @ 2003-11-22  4:25 UTC (permalink / raw)


I am correcting my last post from lunch time (foot in mouth time ;-)

"Warren W. Gay VE3WWG" wrote:

> Lutz Donnerhacke wrote:
>
> > * Warren W. Gay VE3WWG wrote:
> >
> >>Lutz Donnerhacke wrote:
> >>
> >>>* Warren Gay wrote:
> >>>
> >>>>What thinbind would be required to do, is to preprocess the header
> >>>>file somewhat differently than the C's preprocessor. Instead of
> >>>
> >>>This destroys most of the original C API in a unusable way.
> >>
> >>Rubbish.
> >
> > I beg to differ. You have to write down an example C source using the
> > API for the requested thinbinding. Then you preprocess this source code and
> > now you can parse the result in order to find out what really happend.
> >
> > Example: Thinbinding to getc(3).
> >   #include <stdio.c>
> >   return getc(stdin);
>
> Well, first of all, you're focusing on the program
> that is _using_ getc, that was defined in stdio.h.

Cancel that.. <insert foot>

OK, the problem at hand is what to do with how the getc()
macro code, and how to put that into Ada terms.

I agree that this is actually too messy to put into Ada terms (this is
a good example for illustration of a near worst case scenario).

Probably the best thing that can be done for this is to turn that
code into a "wrapped" C function, that is callable by Ada.
If such an interface to such as getc() was required, then I
think the best way to work with this is to generate a C wrapper
module, that is then callable from the generated Ada spec.

--
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove the nospam from the email address: blame the worms]




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

* Re: Generic thinbinding toolkit for C
  2003-11-21 10:55                                                                                     ` Generic thinbinding toolkit for C Lutz Donnerhacke
  2003-11-21 18:02                                                                                       ` Warren W. Gay VE3WWG
@ 2003-11-22  5:12                                                                                       ` Warren Gay
  2003-11-24 10:20                                                                                         ` Lutz Donnerhacke
  1 sibling, 1 reply; 385+ messages in thread
From: Warren Gay @ 2003-11-22  5:12 UTC (permalink / raw)


Lutz Donnerhacke wrote:

> * Warren W. Gay VE3WWG wrote:
> > Lutz Donnerhacke wrote:
> >> * Warren Gay wrote:
> >>>What thinbind would be required to do, is to preprocess the header
> >>>file somewhat differently than the C's preprocessor. Instead of
> >>
> >> This destroys most of the original C API in a unusable way.
> >
> > Rubbish.
>
> I beg to differ. You have to write down an example C source using the
> API for the requested thinbinding. Then you preprocess this source code and
> now you can parse the result in order to find out what really happend.
>
> Example: Thinbinding to getc(3).
>   #include <stdio.c>
>   return getc(stdin);
> results in
>   extern struct _IO_FILE *stdin;
>   return _IO_getc (stdin);
> where
> ...
> > As long as the end results work, then you as the user, do not care about
> > 1 pass, 3 passes or n passes. You might care about performance, but given
> > the choice between coding a thin binding by hand or having your computer
> > do it for you, I think the choice is still and easy one.
>
> The user will use "getc(FILE *)". He will never touch the bloody interenal.
> He will even not user _IO_getc(struct _IO_FILE *) despite it's very close.

See my earlier corrected post. I think a generated C wrapper is best for
macro-ized code, for the reasons you cite, and I conceded that point.

> You might complain about high level library calls. Ok, let's go downstairs.
>   #include <sys/time.h>
>   #include <sys/types.h>
>   #include <unistd.h>
>
>   int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
>              struct timeval *timeout);
>
>   FD_CLR(int fd, fd_set *set);
>   FD_ISSET(int fd, fd_set *set);
>   FD_SET(int fd, fd_set *set);
>   FD_ZERO(fd_set *set);
> will result in
>   int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
>              struct timeval *timeout);
>
>   (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] &= ~((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
>   (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] & ((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
>   (((fd_set *set)->__fds_bits)[((int fd) / (8 * sizeof (__fd_mask)))] |= ((__fd_mask) 1 << ((int fd) % (8 * sizeof (__fd_mask)))));
>   do { unsigned int __i; fd_set *__arr = (fd_set *set); for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) ((__arr)->__fds_bits)[__i] = 0; } while (0);
>
> You will never find anything about the FD_* API in a preprocessed header.

OK. But this issue isn't unsolvable! We just have to take
a different approach to handle these cases. You isolate an instance
of the macro, and paramaterize it into a C wrapper routine. Then thin
bind generates a pragma Import(C,Wrapped_FD_SET,"_Wrapped_FD_SET")
and an appropriate procedure definition. Compile and link with the thin
binding, C compile the wrapper module, and link. A little bit more
overhead, but it's solved.

> > The challenge is to do it well, to make it work in a platform
> > neutral sort of way (the generated thin binding should look
> > consistent in all platforms, so that the clients of the binding
> > won't fail to compile).
>
> The challenge is to convert this to:
>   type fd_set is array(1 .. x) of Boolean;
>   for fd_set'Size use x;
>   for fd_set'Component_Size use 1;
>   pragma Pack(fd_set);
> and implement FD_* over this type.

I don't think you would implement the fd_set with anything other
than an opaque type in the thin binding. Like you pointed out,
there isn't enough information for more than that. So the best
you can do is implement something opaque, and the same
size that can be used with the wrapper routines. I didn't
expect to improve upon the C code you know ;-)

> >> Hard work. Especially when considering marco expansion down to the plain
> >> syscall (Linux).
> >
> > You don't care about operating system details. You only care about
> > things at the C compiler level.
>
> Expansion to the syscall level happens in C-Header files.
>   #include <unistd.h>
>   pause();
> will be translated to:
>   pause();
> where
>   static inline int pause(void) {
>     long __res;
>     __asm__ volatile ("int $0x80" : "=a" (__res) : "0" (29));
>     do {
>       if ((unsigned long)(__res) >= (unsigned long)(-125)) {
>         errno = -(__res);
>         __res = -1;
>       }
>       return (int) (__res);
>     } while (0);
>   }
>
> Yes, that's exactly the thin binding of my kernel_calls.ads (in linux_ix86.adb)

OK, but _once again_, this can be solved with the wrapper module
approach. You shout defeat, instead of looking for answers. ;-)

> I still beg to differ.

And now?

> > I am not suggesting that the macro expansions be ignored. But
> > some of them have to be expanded along the way to provide the
> > correct view of the code. But the other objective is to come
> > away with macro definitions that fold into constants. These
> > can be coded into an Ada spec. A tricky process to be sure,
> > but this can be done.
>
> From doing this by hand, I would gladly enjoy any hit for automatisms.

Ok, so we're on the same page there at least ;-)

> >> So you have to start from the man page and fill in the blanks by designing
> >> the Ada types(!) and calls like expected.
> >
> > Your point isn't clear to me. Name an example.
>
> man 2 select.

Like I pointed out earlier, you're not going to implement specifics
for types that are presented to client programs as opaque. I don't
expect to do any more than that for the Ada spec either (at least
if I understand your point here).

> > Lets take an example:
> >
> > #define increment(x)   (++x)
>
> Let's assume the manpage contains a description of 'increment' describing it
> for 'int' types. So you gain "function increment(x : int) returns int;" from
> the man page (API). Now you can use the preprocessor to find out, what the
> thin binding has to do. This gets more complicated if there is a macro and a
> library call (for address reference or linking):
>   extern int increment(int);
>   #define increment(x) ((x)+1)

Ok, but who says I have to define this as:

  pragma import(C,Increment,"increment")

??  I can generate anything I want, including linking names that are very
unlikly to collide. A hints (or config) file could even pick an override name
if necessary. You see problems, but I see solutions.


> > Now you're right that there is no type information here.
>
> Determine the Ada-Type of "struct fd_set".

Once again: Opaque. I already have all the operations I need for the
type (clear, test, set etc.)  I don't need to see the internals in the Ada
code. Neither does your C code, for that matter.

> > Ada. If a C compiler can translate C code into object
> > code, then I am not convinced that another C compiler
> > could not generate Ada code.
>
> This would be no Ada code.

Yes, you are right <insert other foot>. But a generated wrapper routine
would take care of the ugly C internals, only generating interfaces
into and out of it (see above).

> It would be C Code with Ada syntax. Ugly and
> unusable. In order to transform header files, you have to parse the API
> description and define types, functions and procedures from there. Then you
> have to map this to C. This binding can be very thin, but strongly typed. BTDT.

There is no doubt in my mind that the process needs either a hints file
or a config file to specify what you are interested in. There are a number
of difficult problems, but all or most of them are solvable with a little
bit of help from the programmer. Tools reduce work -- not necessarily
completely eliminate it.

Remember, that my goal would be to specify a minimum amount of
API, and have the thinbind take care of the details that pertain to that
platform. This is the same idea as recompiling a C program that
#includes that same file. The only difference is that you want to
translate/interface some of that include file code into Ada terms
so that you can use it. Besides functions and macro functions,
the most important things are the macro constants, structures
and types.

Note also that because you're starting with C code, I don't expect
the resulting thin binding to be strongly typed. It might be stronger
with the help of hints/config entries, but I would not have the
unrealistic expectation that the spec is going to be strongly typed.

That is the job for the thick binding, which is now easier for you
to write!

> > In this case, we are only interested in a thin binding, not a complete
> > translation of the code.
>
> You proposes to recode the existing thin binding to the library from one
> language to another. This does not work. Every binding models the imported
> API in the importing language. This has to be done seperatly. A thin binding
> written in C to the glibc or a kernel has to rewritten from scratch in Ada.

I think you must have misunderstood my intentions. This is partly
because I stated a few things wrong earlier, and inserted feet in mouth.

I can call getuid() from Ada, almost as easily
as I can from C. The _problem_ is that I don't have a spec for that
function (with the matching sized type), for every platform.

With a generated thin binding that includes the necessary spec,
calling getuid() from Ada becomes effortless and is in all other
respects, including efficiency, on par with C.

So if I can determine the size and types of the return value for getuid(),
then there is no reason thinbind cannot generate a spec, a type (if
necessary), and a pragma import statement. In this case, no
C wrapper code is required and everyone is still happy.

> > I have already acknowledged the practical need for a hints file.
>
> This hints file has to contain the API, because it can't regained from the
> C header code (too much type information is missing).

This of course, depends on how far down the road to compiling
you want to go. The C compiler knows about types. There is no
theoretical reason that thinbind could not also (only the amount
of complexity and work, but no worse than GCC).

You are right in that it is _easier_ to configure certain
things like type information. However, I would still expect thinbind
to be able to determine the size of the types in question etc. and
reliably generate thin bindings to match, given enough starting
information. Later renditions of the tool could do better, as it
becomes more C aware.


> > I do agree that there will be some C things that it will be hard to
> > automate completely.
>
> extern int printf(char * format, ...);

This one is easy! Don't allow it!

You shouldn't be using this from Ada anyway ;-)
If you need to do this, then use C for that.

You constantly look for defeat. Look for solutions: that's what
programmers normally do. Otherwise, we might as well shut
everything down and say "it's too hard", and watch golf instead.

I don't know about you, but watching golf puts me to sleep ;-)

> > Perhaps some Computer Science major will take this
> > project on?  Professors out there looking for project
> > ideas?  Let's see if this is practical!
>
> Good luck.

Somebody took on the GNAT compiler! Thanks to optimists like
them, they saw it as an oportunity to solve a problem. Now many
of us benefit from their fine efforts (and continuing thanks to ACT).
Maybe someday, we'll benefit from a thin binding generator. Maybe
even ACT is spoiling for more fun? ;-)

Be positive. It helps.

--
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove the nospam from the email address: blame the worms]




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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 14:10                                                                           ` Robert I. Eachus
  2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
  2003-11-20 16:33                                                                             ` Georg Bauhaus
@ 2003-11-22 10:41                                                                             ` Dmytry Lavrov
  2 siblings, 0 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-22 10:41 UTC (permalink / raw)


> 
> But of course, the biggest shocker for those who haven't studied the 
> issue is that the net effect of nuclear power plants is to significantly 
> reduce the long-term exposure of the population to radiation.  Radon is 
> nasty.  It is a gas and has a long enough lifetime to seep from the 
> ground into enclosed places, then it decays into several other 
> radioactive isotopes, some of which are also biologically active.  (For 
> example, actiniums tends to accumulte in bones.)
> 
> Since nuclear reactors are designed to "burn-up" the radon emitted from 
> the uranium in the fuel, and capture the heat generated, as long as the 
> radon captured when mining the original ore is dealt with, the net risk 
> from nuclear power plants is negative--they save more lives than they 
> consume.  (This is true even if you add in the deaths associated with 
> the construction and decomissioning of the reactor.)

Statistics?Show me example of plant completly removed from somewhere.

Well,well,i said that i will not more reply to you,but that's enought
dumb to cause me to write something.

Ask yourself,
1:Are the plants used uranium from granite under my house?There's many
uranium
in granite.
2:Plants uses uranium from ocean(dissolved in water)?As with other
things,there's more uranium in ocean than in developing mines.
3:Do you know that radon half-life is 4 days or so?
4:When mining uranium,it causes more radon to escape (before several
half-lifes passed)?Are uranium mines normally under-ground enought
that it takes many half lifes for radon to escape?What when mine is
developed?It leaks more radon or what,assuming that there's lots(most)
of uranium left with concentration lesser than can be cheaply
processed.

How big precent of uranium(u238 ! ) reactors will use?
What you will do with waste?
What you will do with u238? Using it in armour and projectiles?
What with radon that in future escapes much simpler because u238 is
spreaded?

Risk on decomissioning:there's risk that all you're saying about radon
will not mean something because there will be some leaks again.At
processing waste,there's again leaks.Even small risk of Chernobil
causes many radiuactive isotops to "escape".

Why you so focussed on radon? There's leaks of tritium from
reactors(leaks of water from cooling system) at normal
exploatation.Half-life is 12 years or so.

About that tritium will stay in highter
atmosphere after terroristic act:Water is lighter than heavy water and
all our water don't stay in highter atmosphere.Can you explain why,and
then apply it to tritium?.
Also,tritium is quite hard to detect,because it emmits electrons with
13Kev(that anyway enought to damage DNA if tritium is inside body.)One
way to detect is to put probe into detector,that need special
dosimeters that aren't avaliable for public check.

You're now truing to prove most-dumbest thing in that thread:that
nuclear reactors does not increases radioactivity TODAY.Yes,it's
decreases radioactivity _of our olanet including under-ground_ for far
future because burns some uranium,but because all industry also
spreads uranium on surface it does not decreases radioactivity on
surface for that far future.Because of plants we have cheap u238
,cheap enought to use it instead of lead.Actually i think that mining
lead for guns also bad thing,but you're now talking about
radioactivity,right?



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 16:36                                                                                 ` Robert I. Eachus
  2003-11-21 17:05                                                                                   ` Stephane Richard
@ 2003-11-22 10:45                                                                                   ` Dmytry Lavrov
  1 sibling, 0 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-22 10:45 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<Kdidnb0UxJpsoyOiRVn-tA@comcast.com>...
> Dmitry A. Kazakov wrote:
> 
> > It is a wrong question. The correct one is: what is the expected
> > damage per megawatt (mean + dispersion). If you compare the answers
> > for all sorts of plants, you will probably see that Robert is right.
> 
> I'm going to try to stop posting on this subject, but...
> 
> With a BWR, AGR, or PWR nuclear power plant the expected number of 
> deaths per quad is negative.  (Anyone who wants to argue against LMFBRs 
> and in favor of MSRs as breeder reactors will get no arguments from me.)
> With a coal buring power plant, the expected number of deaths  from the 
> normal operation of the plant--excluding disasters--is too high for me 
> to stomach.  Every time I look at this data and factor in the threat of 
> global warming, I am tempted to do the human race a favor and go destroy 
> coal buring power plants.

What bad with NPP,that you can't go and destroy,you need to manage
waste for loong time.


And when i'm looking on statistics how many money spent on development
of reactors and how many on solar cells and accamulation,i also have
similar idea,but about nuclear plants.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 15:49                                                                             ` OT: Nuclear Waste (Was Re-Marketing Ada) Alexandre E. Kopilovitch
  2003-11-21 12:59                                                                               ` Marin David Condic
@ 2003-11-22 12:33                                                                               ` Dmytry Lavrov
  1 sibling, 0 replies; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-22 12:33 UTC (permalink / raw)


"Alexandre E. Kopilovitch" <aek@vib.usr.pu.ru> wrote in message news:<mailman.32.1069343431.3110.comp.lang.ada@ada-france.org>...
> Dmytry Lavrov wrote:
> 
> > Okay,let's assume that you're right that radioactivity is not so
> > dangerous.
> 
> Radioactivity is certainly dangerous (in high doses).

There's some critical point about small doses.There's 2 points on
that:If we will exposr n peoples(or animals) (not rats,needed animals
with long live enought to develop cancer) to k dose of rays,and k is <
1/10 LD50(there's some troubles with LD because there's short-term
results and long-term ones),there's some more animals died than in
control un-exposed group,let's name it m.If we will expose n*2 animals
to k/2,there's that point,actual results shows that m remains roundly
the same if it's animals with long live enought. Someone trust,someone
not,someone think that experiments with m near to LD50,or with
short-lived animals,etc.,are applicable to humans,someone not.

Sacharov's point of view:For small doses down to background,law
remains the same,and even if radiactivity is spreaded ,same number of
people dies...and every nuclear test kills trousands of peoples,some
of 'em die in next centuries.
Remember,bomb is equal to several kg's of high-activity waste.
Of course burning coal is not an solution.

> No one disputes that.
> The problem, however, is what is more dangerous - to live with potential
> sources of high radioactivity, such as nuclear power plants, or without them.

The thing i dislike that arguments from this ones from USA where for
last 25 years was "no accident"(why they don't count 50 years with
real accidents to calculate safety more accurate !?),propagating NPP
as safer thing than even solar cells,as safest thing on the planet,and
saying that inside tank uranium armour less radioactive than
background.(my reply:why in metro on stations with granite there's
1..2 background on surface,and in tonnel w/o granite,there's 0.1 of
surface background(myself measured).Even screws working in granite
stations exposed to more than normal dose).

How they can count deaths if Sacharov's concept is right and even
small leaks from reactors causes some peoples to die,without any
possibility to show why?

Yes,for last 25 years they was careful enought.There's "progress",so
after accident they will start counting years again from that
accident,calculating nice statistic without accident.
Also technic stupidity with that smoke detector containing
americium.For what,could anyone tell me? There's no reason i can
see.Maybe smoke detector is so difficult to understand for
me?Whay,they don't had any accident with manufacturing of that
detectors?What,no one child got dust from detector plate(it also
produces nice radioactive dust if it twisted,if i remember correctly).
I don't 100%sure,but no radioactive materials used in smoke detectors
in Russia,and in western Europe too.

Do you know why Challenger explodes?Read Feyman article about
that(nice way to make shape of rocket cylindrical,no one even tried on
cola can,PHDs saying that it's right way,boltturners that wrong,and
Nobel Prise Winner(Feyman) shows that boltturners are right).Same
applicable to russian rockets/landing capsules too.I assume that it's
possible(there's risk that it is) that same is applicable to reactors
and other things too.


 
> > Govs also want to do that,to start using nukes in wars,to make safety
> > standards lower ,etc.Many officials "benefits" from under-estimating
> > level of danger.There's big money spent on that propagation.All that
> > awards to someone showing that it's isn't dangerous..on writing
> > fooling papers about safety,or about tank armour,etc.
> 
> Naturally, there are forces - sometimes governments, sometimes businesses -
> which are interested for understimating of that danger and lower safety
> standards - for radioactivity as well as for many other issues.
> 
> > And another
> > side:how many money specially spent on "fooling" peoples that it's
> > dangerous? Show me any personal Bill Gates spending money on that as
> > many as govs spend for opposite direction.Of course you can talk about
> > mass-media,about doing money,but again show me organisation that
> > spends money from other sources on "fooling peoples" that it's
> > dangerous.
> 
> You seem to be somehow hypnotized by "big money". People generally need not
> a presence of "big money" to be fooled - they can be fooled by an idea,

Yes,of course.But someone spending money on fooling in opposite way is
ugually somehow interested in lowering safety,to get that money back.

To keep peoples in wrong way for long time,there's some resources
should be spent,as russian history shows.Of course USSR haven't
spended ~money~ because they makes that money.Instead,Stalin spent
many peoples.

Russia is actually radioactivity-dangerous country.Here pro-nuclears
even can't use fine statistics as USA does-it's even hard to show
plant without leaks massive enought to increase level of radioactivity
near plant to several tens background,nor safe storage pool.First
nuclear submarines ,and we now can't se someone from the screw,they
"somehow" died.Peoples died near place of underground tests.Non-marked
places of nuclear weapons tests,and accidents with it.Arrests of
"spys".
Old accident with part of fuel rod(don't know how in english) or other
source in the wall of bilding(many peoples died). Charachay pool.
All nice things Norway worry about(somewhere in that thread was link).

But some years ago on Russian TV(especially goverment-controlled) was
propagation of importing spent fuel into Russia.TV time costs
money.While up to 90% of peoples in russia don't want that,(wasn't
changed by TV ;-),it's not increases popularity of TV channels,nor
goverment. So somehow they will have money back.Storing/processing 
rods and waste is cheaper in russia because of low safety standards
and even lower possibility of enforcing that standards.

That USA ones will export spent fuel into Russia.Of course for them
there's no danger.

[found nice thing]
After Hiroshima and Nagasaki,there's slight "Raskolnikiv" sindrom in
the world(esp.USA):

0:They tried to show some reasons to bomb Hiroshima.No reasons for
Nagasaki,and even wasn't tried so much.
As with Raskolnikov.
1:All world uses Hiroshima in places where it's more right to write
"Hiroshima and Nagasaki"

Google report:
Searched the web for Hiroshima.   Results 1 - 30 of about 1,300,000.
Search took 0.09 seconds.
Searched the web for Nagasaki.   Results 1 - 30 of about 690,000.
Search took 0.22 seconds

interesting,huh?

2:tendency to under-estimate danger of radioactivity(in small doses)



> by
> a perceived need of community feeling, or even of their own accord. (Note,
> that people fighting against the danger of radioactivity new almost nothing
> about it - they new just what media and friends said them - as a rule... the
> redioactivity is invisible for them in all senses.)
> 
> Look, a simple fire is a danger, isn't it? But we can't survive, at least our
> civilization can't survive without that dangerous fire. So, we keep it with us,
> but at the same time we keep firefighters and keep safety standards against
> fire.

If everyone will more worry about fire even  in "small doses",there's
should be less fire accidents in forests,less deaths by
cancer(smocking),etc.

It's bad if our civilisation becomes so dependant to unsafe NPP's

> And oh well, there always been attempts to avoid or lower those standards,
> to save money on them etc. The situation with nuclear power plants (and nuclear
> waste, by extension) is similar in several important aspects (although analogy
> is not generally close for several reasons).
> 
> You may hope that current situation with nuclear power plant is relatively
> temporary - perhaps for several decades, no more, and then they will be replaced
> by other, better sources of energy (or at least they will be made inherently
> safer). But for now we have alternative: either tolerate nuclear power plants
> or suffer significantly worse troubles (not only dangers, but real and immediate
> troubles)

With nuclears there's troubles now (in russia.)

 with substitute sources of energy, or severely limit our energy
> consumption, taking all consequences of that.
> 

Of course that's bad too.

Point i dislike that if discussion is about chemical wastes,there's
reference to radioactive as more dangerous,and that chemical waste is
only one small problem.Same if discussion about radioactive
wastes,that it's only one small problem ,referring to chemical wastes
of any kind.Same applicable for any kind of problem,including
programming,speculation that one problem deattract from
"multidimensional set of other problems".


> 
> 
> Alexander Kopilovitch                      aek@vib.usr.pu.ru
> Saint-Petersburg
> Russia


p.s.
Dmytry Lavrov,Lithuania,

but for some reason i worry about radioactive things in Russia(USA
too).

(i pochemu mne ne po barabanu...)



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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-22  4:20                                                                                           ` Warren Gay
@ 2003-11-22 17:06                                                                                             ` Chad R. Meiners
  2003-11-23  2:17                                                                                               ` Warren Gay
  0 siblings, 1 reply; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-22 17:06 UTC (permalink / raw)



"Warren Gay" <ve3wwg@cogeco.ca> wrote in message
news:3FBEE403.623B5387@nospam.cogeco.ca...
> OK, I think were on similar wavelengths here. So instead of using
> a hints file, specify what you hope to get out of the header file.
>
> Well, I suppose this works very well for the API functions, structures,
> types etc. One area where this falls down perhaps is for macro
> constants (imagine trying to specify all the error code constants
> from something like errno.h). But I suppose you could do the
> following:

You might be able to solve the problem with a spec prep tool.  The tools
searches through header files and tries to find names for the API (such as
macro names, typedef name, constant names) and generates a default
specification for it.  The tools could be improved by adding better search
filtering such as "constants that match reg exp X"

> Actually, the more I think about your idea, the more I like it. It has the
> additional advantage that you only expose yourself to areas that are
> important to your application. IOW, there is a much greater chance
> of success on all platforms, if you stick to only what you need,
> rather than everything and the kitchen sink. I like that idea.

Yep, I have written a few thin bindings and this was the manual technique I
used.

> Maybe you should be writing this tool? ;-)

I would actually like to work on it because it sounds funs.  Unfortunately,
I currently have very little time for creative efforts since my research and
thesis are occupying most of my creative time.  I would be interested seeing
how I could help we could form a working group for the tool.

-CRM





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

* Re: Re-Marketing Ada (was "With and use")
  2003-11-22 17:06                                                                                             ` Chad R. Meiners
@ 2003-11-23  2:17                                                                                               ` Warren Gay
  2003-11-25  0:06                                                                                                 ` Re-Marketing Ada (was "With and use") A new project for generating thin bindings Chad R. Meiners
  0 siblings, 1 reply; 385+ messages in thread
From: Warren Gay @ 2003-11-23  2:17 UTC (permalink / raw)


Chad R. Meiners wrote:
> "Warren Gay" <ve3wwg@cogeco.ca> wrote in message
> news:3FBEE403.623B5387@nospam.cogeco.ca...
> 
>>OK, I think were on similar wavelengths here. So instead of using
>>a hints file, specify what you hope to get out of the header file.
>>
>>Well, I suppose this works very well for the API functions, structures,
>>types etc. One area where this falls down perhaps is for macro
>>constants (imagine trying to specify all the error code constants
>>from something like errno.h). But I suppose you could do the
>>following:
> 
> You might be able to solve the problem with a spec prep tool.  The tools
> searches through header files and tries to find names for the API (such as
> macro names, typedef name, constant names) and generates a default
> specification for it.  

This was originally discussed as the behavior for thinbind. However,
I like the idea of configuring those aspects that you need to
get out of the header file. Perhaps thinbind could just default
to everything, and do its heroic best.

I my mind, picking up the #define macros for folded constants
etc. represents the easiest part of this assignment. The other
aspects, such as function prototypes, structures and macro functions
(like fputc()) are more difficult.

> I would actually like to work on it because it sounds funs.  Unfortunately,
> I currently have very little time for creative efforts since my research and
> thesis are occupying most of my creative time.  I would be interested seeing
> how I could help we could form a working group for the tool.
> 
> -CRM

Well, I would be willing to sign on a source forge project, in an
advisory participant. I have too many other Ada projects to finish,
to work on another on my own. If you want to lead it, I'll
participate with comments and suggestions if you like. Perhaps you
can garner some other more helpful partners too.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove the nospam from the email address: blame the worms]




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

* Re: Generic thinbinding toolkit for C
  2003-11-22  5:12                                                                                       ` Warren Gay
@ 2003-11-24 10:20                                                                                         ` Lutz Donnerhacke
  0 siblings, 0 replies; 385+ messages in thread
From: Lutz Donnerhacke @ 2003-11-24 10:20 UTC (permalink / raw)


* Warren Gay wrote:
> Note also that because you're starting with C code, I don't expect
> the resulting thin binding to be strongly typed. It might be stronger
> with the help of hints/config entries, but I would not have the
> unrealistic expectation that the spec is going to be strongly typed.

Currently I get a strongly typed thin binding. The generated object code
contains a single "INT 80" line in most cases.

Your proposal with wrapper bindings works an can be automated. Intrestingly
enough you do not need any tool for this job, because you have to specify
the necessary API yourself (it can't be derivated from the header files as
proven upthreads). When you did this, you are finished anyway, because you
have the wrapper code and directly importable linker objects for Ada. Done.

> That is the job for the thick binding, which is now easier for you to
> write!

Thick binding is completely different. For thick binding you redesign the
API the Ada way. Then you transform this API to the called library API.

I prefer stronly typed thin bindings. This is an slightly expanded API very
close to the original one. The only enhancements consist of Ada style
parameter passing, Ada style constants and semantically different types
based on the same implementation type (i.e. type Filename is new C_String;)

> I can call getuid() from Ada, almost as easily as I can from C. The
> _problem_ is that I don't have a spec for that function (with the
> matching sized type), for every platform.

Yep.

> With a generated thin binding that includes the necessary spec,
> calling getuid() from Ada becomes effortless and is in all other
> respects, including efficiency, on par with C.

Because you don't have the size of the types, you have to introduce a level
of indirection into the wrapper code. You can't access those values, unless
you use wrapper code as well. Therefor every wrapper will copy data twice or
more to call the library. This will be inefficient at least.

> So if I can determine the size and types of the return value for getuid(),
> then there is no reason thinbind cannot generate a spec, a type (if
> necessary), and a pragma import statement. In this case, no
> C wrapper code is required and everyone is still happy.

You will generate an Ada-Spec from external programms? You will get horrible
problems with compile time errors at the Ada side when switching to a
different platform? Good luck.

>> This hints file has to contain the API, because it can't regained from the
>> C header code (too much type information is missing).
>
> This of course, depends on how far down the road to compiling
> you want to go. The C compiler knows about types. There is no
> theoretical reason that thinbind could not also (only the amount
> of complexity and work, but no worse than GCC).

The C compiler does know nothing about types. The real types are defined in
the semantics (man page). The C compiler does know only about base types.

> You constantly look for defeat. Look for solutions: that's what
> programmers normally do. Otherwise, we might as well shut everything down
> and say "it's too hard", and watch golf instead.

Ada style solution:
1.0k kernel.ads
 27k kernel-calls.adb
601k kernel-calls.ads
 26k kernel-linux_i86.adb
 29k kernel-linux_i86.ads

Example:
	.file	"test_kernel.adb"
	.version	"01.01"
gcc2_compiled.:
.section	.rodata
.LC0:
	.string	"kernel-linux_i86.adb"
.LC1:
	.string	"kernel-calls.adb"
.LC2:
	.ascii	"Hello world.\n"
.data
	.type	 outs.68,@object
	.size	 outs.68,13
outs.68:
	.ascii	"Hello world.\n"
.text
	.align 4
.globl _start
	.type	 _start,@function
_start:
	pushl %esi
	pushl %ebx
	movl $4,%eax
	movl $1,%ebx
	movl $outs.68,%ecx
	movl $13,%edx
#APP
	int $0x80
#NO_APP
	movl %eax,%esi
	movl %ebx,%eax
	movl %esi,%ebx
#APP
	int $0x80
#NO_APP
	popl %ebx
	popl %esi
	ret
.Lfe1:
	.size	 _start,.Lfe1-_start
	.ident	"GCC: (GNU) 2.8.1"


Spark style solution:
1.0k kernel.ads
3.0k kernel-io.adb
 12k kernel-io.ads
1.0k kernel-io-chdir.adb
1.0k kernel-io-close.adb
1.0k kernel-io-creat.adb
1.0k kernel-io-fchdir.adb
1.0k kernel-io-fullpath_to_long.adb
2.0k kernel-io-getdents.adb
1.0k kernel-io-getdents_empty.adb
2.0k kernel-io-getdents_read.adb
1.0k kernel-io-integer_to_permissions.adb
1.0k kernel-io-link.adb
1.0k kernel-io-llseek.adb
1.0k kernel-io-mkdir.adb
2.0k kernel-io-mode_to_string.adb
1.0k kernel-io-open.adb
1.0k kernel-io-open_flags_to_long.adb
1.0k kernel-io-permissions_to_integer.adb
1.0k kernel-io-permission_to_string.adb
1.0k kernel-io-read.adb
1.0k kernel-io-rename.adb
1.0k kernel-io-string_to_fullpath.adb
1.0k kernel-io-string_to_long.adb
1.0k kernel-io-unlink.adb
1.0k kernel-io-write.adb
6.0k kernel-linux_i86.adb
 26k kernel-linux_i86.ads
3.0k kernel-processes.adb
7.0k kernel-processes.ads
1.0k kernel-processes-cstring_array_from_collection.adb
1.0k kernel-processes-cstring_nul_count.adb
1.0k kernel-processes-fork.adb
1.0k kernel-processes-kill_all.adb
1.0k kernel-processes-kill_group.adb
1.0k kernel-processes-kill_my_group.adb
1.0k kernel-processes-kill_process.adb
1.0k kernel-processes-signal_to_long.adb
1.0k kernel-processes-sysexit.adb
1.0k kernel-processes-wait.adb
1.0k kernel-processes-wait_group.adb
1.0k kernel-processes-wait_my_group.adb
3.0k kernel-processes-waitpid.adb
1.0k kernel-processes-wait_process.adb

-------------------------------------------------------------------------------
			  Semantic Analysis Summary
-------------------------------------------------------------------------------

Summary of:
 Verification Condition files (.vcg)
 Simplified Verification Condition files (.siv)

in the directory: /var/home/lutz/work/ada/src/kernel

VCs for kernel_/processes/cstring_nul_count
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 7 |                 DOIT
    2 | start                |               assert @ 7 |                 DOIT
    3 | assert @ 7           |               assert @ 7 |     yes
    4 | assert @ 7           |               assert @ 7 |     yes
    5 | assert @ 7           |           rtc check @ 10 |     yes
    6 | assert @ 7           |           rtc check @ 11 |                 DOIT
    7 | start                |                   finish |     yes
    8 | assert @ 7           |                   finish |                 DOIT
    9 | assert @ 7           |                   finish |     yes
-------------------------------------------------------------------------------
VC Hashs for kernel_/processes/cstring_nul_count
    1 : efe586a0bd3de1bb8b8f2cc880f46a98
    2 : 75e2c969ead1d0dea799bf625d14e3a7
    6 : 4d2360999a219c96aa8045a50b190c05
    8 : 673f9713dfc6afd15b10a0e3a4e30cdf

VCs for kernel_/io/write
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 9 |     yes
    2 | start                |           rtc check @ 10 |     yes
    3 | start                |               check @ 11 |     yes
    4 | start                |           rtc check @ 12 |     yes
    5 | start                |           rtc check @ 12 |     yes
    6 | start                |           rtc check @ 16 |     yes
    7 | start                |           rtc check @ 17 |                 DOIT
    8 | start                |           rtc check @ 19 |     yes
    9 | start                |           rtc check @ 20 |     yes
   10 | start                |           rtc check @ 23 |     yes
   11 | start                |                   finish |     yes
   12 | start                |                   finish |     yes
   13 | start                |                   finish |     yes
-------------------------------------------------------------------------------
VC Hashs for kernel_/io/write
    7 : dc437863df9e7bbc38a3b6a01eea04aa

VCs for kernel_/linux_i86/syscall1
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 62 |     yes
    2 | start                |           rtc check @ 63 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/mode_to_string
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 21 |     yes
    2 | start                |           rtc check @ 28 |     yes
    3 | start                |           rtc check @ 29 |     yes
    4 | start                |              assert @ 32 |     yes
    5 | start                |              assert @ 32 |     yes
    6 | start                |              assert @ 32 |     yes
    7 | assert @ 32          |           rtc check @ 34 |     yes
    8 | assert @ 32          |           rtc check @ 35 |     yes
    9 | assert @ 32          |              assert @ 38 |     yes
   10 | assert @ 32          |              assert @ 38 |     yes
   11 | assert @ 32          |              assert @ 38 |     yes
   12 | assert @ 38          |           rtc check @ 40 |     yes
   13 | assert @ 38          |           rtc check @ 41 |     yes
   14 | assert @ 38          |              assert @ 44 |     yes
   15 | assert @ 38          |              assert @ 44 |     yes
   16 | assert @ 38          |              assert @ 44 |     yes
   17 | assert @ 44          |           rtc check @ 46 |     yes
   18 | assert @ 44          |           rtc check @ 47 |     yes
   19 | assert @ 44          |           rtc check @ 48 |     yes
   20 | assert @ 44          |           rtc check @ 49 |     yes
   21 | assert @ 44          |           rtc check @ 50 |     yes
   22 | assert @ 44          |           rtc check @ 51 |     yes
   23 | assert @ 44          |           rtc check @ 52 |     yes
   24 | assert @ 44          |                   finish | yes
   25 | assert @ 44          |                   finish | yes
   26 | assert @ 44          |                   finish | yes
   27 | assert @ 44          |                   finish | yes
   28 | assert @ 44          |                   finish | yes
   29 | assert @ 44          |                   finish | yes
   30 | assert @ 44          |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/io/open
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |           rtc check @ 10 |     yes
    3 | start                |           rtc check @ 11 |     yes
    4 | start                |           rtc check @ 13 |     yes
    5 | start                |           rtc check @ 14 |     yes
    6 | start                |           rtc check @ 17 |     yes
    7 | start                |                   finish |     yes
    8 | start                |                   finish |     yes
    9 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/chdir
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/wait_group
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 7 |     yes
    2 | start                |            rtc check @ 8 |     yes
    3 | start                |            rtc check @ 9 |     yes
    4 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/syscall4
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |          rtc check @ 134 |     yes
    2 | start                |          rtc check @ 135 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/close
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 5 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/link
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/getdents
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 21 |     yes
    2 | start                |           rtc check @ 21 |     yes
    3 | start                |           rtc check @ 24 |     yes
    4 | start                |           rtc check @ 25 |     yes
    5 | start                |           rtc check @ 27 |     yes
    6 | start                |           rtc check @ 29 |     yes
    7 | start                |                   finish |     yes
    8 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/creat
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |            rtc check @ 9 |     yes
    3 | start                |           rtc check @ 10 |     yes
    4 | start                |           rtc check @ 12 |     yes
    5 | start                |           rtc check @ 13 |     yes
    6 | start                |           rtc check @ 16 |     yes
    7 | start                |                   finish |     yes
    8 | start                |                   finish |     yes
    9 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/kill_my_group
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |            rtc check @ 6 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/waitpid
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 77 |     yes
    2 | start                |           rtc check @ 82 |     yes
    3 | start                |           rtc check @ 83 |     yes
    4 | start                |           rtc check @ 85 |     yes
    5 | start                |                   finish |     yes
    6 | start                |                   finish |     yes
    7 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/syscall0
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 38 |     yes
    2 | start                |           rtc check @ 39 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/wait
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/permission_to_string
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 7 |     yes
    2 | start                |            rtc check @ 8 |     yes
    3 | start                |            rtc check @ 8 |     yes
    4 | start                |            rtc check @ 9 |     yes
    5 | start                |            rtc check @ 9 |     yes
    6 | start                |            rtc check @ 9 |     yes
    7 | start                |            rtc check @ 9 |     yes
    8 | start                |                   finish | yes
    9 | start                |                   finish | yes
   10 | start                |                   finish | yes
   11 | start                |                   finish | yes
   12 | start                |                   finish | yes
   13 | start                |                   finish | yes
   14 | start                |                   finish | yes
   15 | start                |                   finish | yes
-------------------------------------------------------------------------------

VCs for test_kernel
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 16 |     yes
    2 | start                |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/io/unlink
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/kill_all
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 5 |     yes
    2 | start                |            rtc check @ 5 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/open_flags_to_long
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 14 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/wait_my_group
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/read
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |            rtc check @ 6 |     yes
    3 | start                |           rtc check @ 11 |     yes
    4 | start                |           rtc check @ 12 |     yes
    5 | start                |                   finish |     yes
    6 | start                |                   finish |     yes
    7 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/fchdir
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 5 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/getdents_read
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 34 |     yes
    2 | start                |           rtc check @ 35 |     yes
    3 | start                |           rtc check @ 39 |     yes
    4 | start                |           rtc check @ 40 |     yes
    5 | start                |           rtc check @ 43 |     yes
    6 | start                |           rtc check @ 44 |     yes
    7 | start                |           rtc check @ 45 |     yes
    8 | start                |           rtc check @ 46 |     yes
    9 | start                |           rtc check @ 46 |     yes
   10 | start                |              assert @ 46 |     yes
   11 | assert @ 46          |              assert @ 46 |     yes
   12 | assert @ 46          |           rtc check @ 49 |     yes
   13 | assert @ 46          |           rtc check @ 50 |     yes
   14 | start                |           rtc check @ 57 |     yes
   15 | start                |           rtc check @ 57 |     yes
   16 | assert @ 46          |           rtc check @ 57 |     yes
   17 | assert @ 46          |           rtc check @ 57 |     yes
   18 | start                |                   finish | yes
   19 | start                |                   finish | yes
   20 | start                |                   finish | yes
   21 | start                |                   finish | yes
   22 | assert @ 46          |                   finish | yes
   23 | assert @ 46          |                   finish | yes
   24 | assert @ 46          |                   finish | yes
   25 | assert @ 46          |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/syscall5
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |          rtc check @ 158 |     yes
    2 | start                |          rtc check @ 159 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/string_to_fullpath
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |               assert @ 6 |     yes
    3 | assert @ 6           |               assert @ 6 |     yes
    4 | assert @ 6           |            rtc check @ 9 |     yes
    5 | start                |           rtc check @ 11 |     yes
    6 | assert @ 6           |           rtc check @ 11 |     yes
    7 | start                |                   finish | yes
    8 | assert @ 6           |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/sysexit
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/kill_process
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |            rtc check @ 6 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/fork
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 5 |     yes
    2 | start                |            rtc check @ 6 |     yes
    3 | start                |            rtc check @ 8 |     yes
    4 | start                |            rtc check @ 9 |     yes
    5 | start                |           rtc check @ 13 |     yes
    6 | start                |                   finish |     yes
    7 | start                |                   finish |     yes
    8 | start                |                   finish |     yes
    9 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/getdents_empty
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |                   finish | yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/wait_process
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/errorcode
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 9 |     yes
    2 | start                |           rtc check @ 10 |     yes
    3 | start                |           rtc check @ 12 |     yes
    4 | start                |                   finish |     yes
    5 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/processes/kill_group
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 7 |     yes
    2 | start                |            rtc check @ 8 |     yes
    3 | start                |            rtc check @ 9 |     yes
    4 | start                |            rtc check @ 9 |     yes
    5 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/syscall3
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |          rtc check @ 110 |     yes
    2 | start                |          rtc check @ 111 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/mkdir
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/linux_i86/syscall2
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |           rtc check @ 86 |     yes
    2 | start                |           rtc check @ 87 |     yes
    3 | start                |                   finish |     yes
-------------------------------------------------------------------------------

VCs for kernel_/io/rename
-------------------------------------------------------------------------------
      |                      |                          | -- Proved In --
 No   | From                 | To                       | vcg siv plg prv TODO
-------------------------------------------------------------------------------
    1 | start                |            rtc check @ 6 |     yes
    2 | start                |                   finish |     yes
-------------------------------------------------------------------------------

===============================================================================
                          --------------- Proved By --------------
                          Total Examiner Simplifier Checker Review Undischarged
Assert                       16        0         15       0      0            1
Check                         1        0          1       0      0            0
Postcondition                76       28         47       0      0            1
Runtime check               124        0        121       0      0            3
-------------------------------------------------------------------------------
Totals                      217       28        184       0      0            5
% Totals                             12%        84%      0%     0%           2%
===================== End of Semantic Analysis Summary ========================

> I don't know about you, but watching golf puts me to sleep ;-)

I prefer to program myself, instead of wait for a generic solution.

> Be positive. It helps.

I prefer matching Ada solutions over generated Ada syntax from C code.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-21 15:29                                                                                 ` Frank J. Lhota
@ 2003-11-24 17:15                                                                                   ` Warren W. Gay VE3WWG
  0 siblings, 0 replies; 385+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-11-24 17:15 UTC (permalink / raw)


Frank J. Lhota wrote:

> "Marin David Condic" <nobody@noplace.com> wrote in message
> news:3FBE0C40.8020806@noplace.com...
> 
>>I hate to be the Newsgroup Gestapo, but really, this thread is flooding
>>my newsreader and it is waaaaaayyyyy off topic. It might even give
>>newbies to this group the wrong impression. Could you guys pick this
>>thread up in someplace that is more on-topic? Thanks.
> 
> 
> Will do. As noted before, cleaning up Nuclear power plants is a problem. The
> Ada solution to this problem is to require that all such plants be derived
> from Ada.Finalization.Limited_Controlled. I guess that you could also use
> Ada.Finalization.Controlled, but then you have to deal with the issue of
> moving a power plant. :)

Or worse, duplication by assignment ;-)
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg
[Remove nospam from the email address:
the worms made me do it!]




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

* Re: Re-Marketing Ada (was "With and use") A new project for generating thin bindings
  2003-11-23  2:17                                                                                               ` Warren Gay
@ 2003-11-25  0:06                                                                                                 ` Chad R. Meiners
  0 siblings, 0 replies; 385+ messages in thread
From: Chad R. Meiners @ 2003-11-25  0:06 UTC (permalink / raw)


"Warren Gay" <ve3wwg@nospam.cogeco.ca> wrote in message
news:ZSUvb.971$oe.73939@read1.cgocable.net...
> Well, I would be willing to sign on a source forge project, in an
> advisory participant. I have too many other Ada projects to finish,
> to work on another on my own. If you want to lead it, I'll
> participate with comments and suggestions if you like. Perhaps you
> can garner some other more helpful partners too.

Well, I have created a Source Forge project called AdaFromC  (from because
the specification pulls the desired information out of the C headers).  If
you want to join, send me an e-mail through my Source Forge address.  It
might be a little bit before I can get some information up on the site with
Thanksgiving and traveling plans as they are.

-CRM





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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-20 13:40                                                                             ` Robert I. Eachus
  2003-11-20 18:00                                                                               ` Alexandre E. Kopilovitch
@ 2003-11-29 23:22                                                                               ` Dmytry Lavrov
  2003-11-30  2:33                                                                                 ` Robert I. Eachus
  1 sibling, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-29 23:22 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<Ss-dndA1oMOnWSGi4p2dnA@comcast.com>...
> Dmytry Lavrov wrote:
> 
> >>Dmyytry, Dmytry, you really need to catch up on your technical reading:
> >>
> >>Teleportation: http://www.aip.org/physnews/graphics/html/teleport.htm
> >>
> >>Time travel: http://www.sciencenews.org/sn_arc98/4_11_98/fob3.htm
> >>
> >>Superluminal communication: 
> >>http://adsabs.harvard.edu/cgi-bin/nph-bib_query?1999quant.ph..6113S
> > 
> > 
> > Don't want to discuss more with someone who don't think that it's
> > cheating _by_ _default_  . There was too many teleportations and
> > superluminal communications and  time travel reports all over
> > 20th,19th,18th and even 17th century,
> > to many years BC.In next 10 years you will foget about links you're
> > providing,and will use links to other sci-fi.
> 
> Huh?  The difference as far as I am concerned is that 1) they have done 
> the math--all of the above results are consistant with quantum 
> mechanics, etc.  And 2) these are reputable scientific experiments, with 
> enough information published that 3) the results have been duplicated.

I checked that papers,rereaded some other papers about same
effects,and got:

That "teleportation" have absolutely nothing with teleportation
in_any_meaning.
It's "entangling" or something like that.If i want to teleport
,say,electron,i need to use one positron and 2 electrons to "entangle"
positron entangled with electron 1 with other electron.I'm
"teleporting" electron that it becomes a positron.So,because our world
_is_not_ simmetric for antimatter,that's not a teleportation in any
meaning anyway.It only shows "another strange thing" in our quantum
statistics,shows that pair of particle and anti-particle formed
together are one object and not 2 separate objects.light and
"anti-light" are the same things except perpendicular polarisation.

It's really working experiment.But it have nothing with teleportation,
it's _old_thing_ but _only_now_ it's named as teleportation.That's bad
when such things are so widely published with so incorrect name just
only to show that now we have lots of new researches and discoveries.

There's no meaning of "teleportation" in science.
That experiment is more like to be telekines or telepathy than
teleportation.

Other 2 papers only shows "possibility" of time loop and super-luminal
communications.No experiments,no duplications,nothing proves it.

Super-luminal communications lead to time travel,it's quite simple can
be derived from special relativity and it's 100% surely for me because
SR proved by experiments even if SR is incorrect a bit , but why that
papers are closely related and aren't referencing one to other?

About "they do the math".For first example it's right ,math was done
nearly half century ago! .For other two,even if they do the math(Do
you know that math? Can you check that? Why you think that they done
if you haven't checked yourself? I can trust something if i checked or
quite less trust if someone IMO reputable checked)
there's _nothing_ that shows that it's applicable to our world.
Even if shows,it's quite possible that it's again like that
"teleportation",have nothing with name.

About past reports:It's now them looks like bad old sci-fi.At that
time them looked like good sci-fi.

I have no reason to >50% trust thing i can't prove for myself.Their
math only may help me to prove for myself.

I haven't fogot good lessons with proving something like that all
triangles have "at least one" 90 degrees angle and more good-looking
cases.It's good idea to theach that with math.

I can even trust last two papers ;-).They shows that time travel and
superluminal is _maybe_ possible.Even don't have reason to non-trust
'em ;-),i also think that it's maybe possible.
Even if it's right and proved there's nothing with time mashine or at
least time phone.

in math,there's right and proved,it's different things.



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

* Re: OT: Nuclear Waste (Was Re-Marketing Ada)
  2003-11-29 23:22                                                                               ` Dmytry Lavrov
@ 2003-11-30  2:33                                                                                 ` Robert I. Eachus
  2003-11-30 17:40                                                                                   ` OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada)) Dmytry Lavrov
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-11-30  2:33 UTC (permalink / raw)


Dmytry Lavrov wrote:

> It's really working experiment.But it have nothing with teleportation,
> it's _old_thing_ but _only_now_ it's named as teleportation.That's bad
> when such things are so widely published with so incorrect name just
> only to show that now we have lots of new researches and discoveries.
> 
> There's no meaning of "teleportation" in science.
> That experiment is more like to be telekines or telepathy than
> teleportation.

We'll have to agree to disagree.  To me teleportation is a term that 
describes making a exact copy of something at a different location, 
without the thing itself traversing the intervening distance. 
Teleportation in science fiction has used both moving the object itself 
though some other dimension or dimensions, or a copying process. 
Whether the copy has continuity with its predecessor is of interest only 
if you are being teleported.

Quantum teleportation incidently comes down on the continuity side of 
that issue, which in part is why it can't be used to duplicate 
something.  (If you could make two copies, one of them must not be the 
original.)

> Super-luminal communications lead to time travel,it's quite simple can
> be derived from special relativity and it's 100% surely for me because
> SR proved by experiments even if SR is incorrect a bit , but why that
> papers are closely related and aren't referencing one to other?

Uh, did you understand the Lentz, et. al. result?  When I first saw it, 
I felt as you did, that it implied time-travel.  But when you do the 
thought experiment of moving the waveguide with respect to the labratory 
reference frame, the time required for the signal to transit the gap 
remains the same for all observers.

If you think someone should accelerate a waveguide to a significant 
fraction of c to verify it be my guest.  But since the transit time is 
independent of the actual lenght of the gap, I would be very surprised 
if there is some other effect that makes it depend on the apparent 
length of the gap.

Notice incidently that the amount of signal that is transmitted does 
depend on the apparent length of the gap.  But again, if you do the 
math, it all works out.  If the reciever and transmitter are moving with 
respect to each other, the total energy measured (reflection plus 
transmission) can be than the original signal.  But that difference is 
accounted for by the shift in the frequency of the reflected beam.

> I can even trust last two papers ;-). They shows that time travel and
> superluminal is _maybe_ possible.Even don't have reason to non-trust
> 'em ;-),i also think that it's maybe possible.
> Even if it's right and proved there's nothing with time mashine or at
> least time phone.

Have you looked at Hawking's recent work on closed timelike loops?  As I 
understand it, the only way you can use a black hole as a time machine 
is to change its mass.  (Adding small black holes--or any large quantity 
of matter will do.)  There is a shell around the black hole where there 
are an infinite number of photons following closed timelike curves 
(orbits).  These photon shells have no energy/rest mass in the 
containing space, but an infinite amount of energy relative to anything 
entering the ergosphere, so touch one and die.  But if you change the 
mass of the black hole by dropping mass in, the shell inside of your 
path will cease to exist and a new layer will form enclosing you.  If 
your course is backwards in time, you can exit where two smaller black 
holes are colliding to create the one you entered.

Time travel by this method may be possible, but talk about dangerous! 
You need colliding black holes to get in, another collision where you 
exit, and a microsecond error in plotting your course could be fatal.

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* OT: Relativity ,super-luminal communications and time travel    (Was OT: Nuclear Waste (Was Re-Marketing Ada))
  2003-11-30  2:33                                                                                 ` Robert I. Eachus
@ 2003-11-30 17:40                                                                                   ` Dmytry Lavrov
  2003-12-01  3:40                                                                                     ` Robert I. Eachus
  0 siblings, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-11-30 17:40 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<Q8adnThtfsuTylSiRVn-uw@comcast.com>...
> Dmytry Lavrov wrote:
> 
> > It's really working experiment.But it have nothing with teleportation,
> > it's _old_thing_ but _only_now_ it's named as teleportation.That's bad
> > when such things are so widely published with so incorrect name just
> > only to show that now we have lots of new researches and discoveries.
> > 
> > There's no meaning of "teleportation" in science.
> > That experiment is more like to be telekines or telepathy than
> > teleportation.
> 
> We'll have to agree to disagree.  To me teleportation is a term that 
> describes making a exact copy of something at a different location,

Exact?

Here it's not a exact copy are teleported.It's anti-particle.For
light,it have perpendicular polarisation because there's no
anti-light.If we teleporting hidrogen atom with that method,we need to
make 2 hidrogen athoms,hidrogen and anti-hydrogen at same moment (from
energy)And we need third hidrogen athom to be teleported.
That applicable only to particles.And we don't need to teleport
particles anyway-we already have 'em at destination.

To "teleport" you,assuming that you are just big elementary
particle,we need you and your anti-copy to be maked in same
process,then need to destroy you and your copy,while your anti-copy
arrives to destination mirror :)At some moment just before destroy you
will be entangled with your anti-copy.

Also,if we will teleport you or me particle by particle,we anyway have
removing particle from body before "teleportation" as first step,so
making exact copy of that particle gives nothing.

That experiment,anyway,have absolutely nothing with teleportation even
in your meaning and it's very old thing only now named as
"teleportation".Incorrect promotion of science is bad.


> without the thing itself traversing the intervening distance. 

In that experiment,thing and anti-thing itself traversing that
distance.

> Teleportation in science fiction has used both moving the object itself 
> though some other dimension or dimensions, or a copying process. 

You can read Stanislaw Lem article about that(Summa Technologiae in
translation to English),analysis of sci-fil. IMO teleportation is a
way to build copy at distance using -normal-data-communication-.Any
other way is not a teleportation exactly.Source may need to be
destroyed in scanning(even theoretically),so that's not necessary a
duplication(but you anyway can make 2 copyes of same man while "he" is
destroyed).

> Whether the copy has continuity with its predecessor is of interest only 
> if you are being teleported.
> 
> Quantum teleportation incidently comes down on the continuity side of 
> that issue, which in part is why it can't be used to duplicate 
> something.  (If you could make two copies, one of them must not be the 
> original.)

Both could be original,IMO,if copyed very well.
Anyway i or you is a copy(many atoms replaced, in brain too) of me or
you month ago-but who cares ;-)

> 
> > Super-luminal communications lead to time travel,it's quite simple can
> > be derived from special relativity and it's 100% surely for me because
> > SR proved by experiments even if SR is incorrect a bit , but why that
> > papers are closely related and aren't referencing one to other?
> 
> Uh, did you understand the Lentz, et. al. result?  When I first saw it, 
> I felt as you did, that it implied time-travel.  But when you do the 
> thought experiment of moving the waveguide with respect to the labratory 
> reference frame, the time required for the signal to transit the gap 
> remains the same for all observers.
>

Will check,will check.But i saw it's proved in some book(fogot title)
many years ago,and proving looked right and was simple(SR is simple
enought and i can check it)

Remembering drawing from that book and proving:

                <-   -U                                     <-   -U
           z-transmitter A---------------------------->z-receiver A  
           We U=0                                         Mr.X U=0
           z-receiver B<-------------------------------z-transmitter B
                U   ->                                    U   ->
(all in "We" coordinate system)
U<c,of course."z-rays" speed may be >c(it  aren't necessary to be a
rays,it was named z-rays in that nice book)

We send signal to "z-transmitter"(transmitter of super-luminal
data,"emmits z-rays" :),it's sends to z-receiver A,then Mr. X routes
it to z-transmitter B(Mr X can use normal light to route data,in facts
X is not needed),then it comes to z-receiver B,and we can get it
before we sends,and if time is too short,we routes it again to A to
get necessary "negative time".

and some equations here...

distance from "We" to "Mr.X" = x :)

by ' here we mean system A, " mean system B.

time back we got at first step (to X) =Dt
Dt'=time needed to pass from 0 to x'

Dt=gamma * Dt' - gamma * u/c^2 x'

where gamma=(1-u^2/c^2)^(-1/2)

then back with same Dt. 

 x=x'/gamma , Dt'/x' = 1/Udata  < 1/c if z-data are super-luminal,and

Dt=1/sqrt(1-u^2/c^2)*(Dt' - u/c^2 x')

to make time phone we need 

Dt' < u/c^2 x' ,because x'>0,
Dt'/x' < u/c^2

x'/Dt > c^2/U,
so we need 
Udata>c^2/u  

And i have now a nice phone to talk with grand-grand-parent or to
order someone to kill our grand-grand-parent ( who maked that phone to
talk with me :).

Inpossibility to sent information faster-than-light was proved by that
cool anekdote with grandparent ;-).(inpossibility of time travel was
"given")


If i remember correctly there was test questions like how many steps
we need to send data to 100 years before for x=1 light year and u
=c/2, Udata = infinity.

Super-luminal data channel here does not rely on absolute speed. 



Probably you mean that with one back-time step(using only A line)
signal are far away and out of my light cone.But with 2 steps tricks
signal are where i stay and before i sent.

Dopler shift:No problem to compensate using right angles between Mr.X
,receiver and transmitter(lenght of A and B don't have to be the
same).
Here we assuming that distance from A to B is "small" and lenght of
super-luminal data channels is big.
.

(to someone who better know SR than me,please check for mistakes.)

> > I can even trust last two papers ;-). They shows that time travel and
> > superluminal is _maybe_ possible.Even don't have reason to non-trust
> > 'em ;-),i also think that it's maybe possible.
> > Even if it's right and proved there's nothing with time mashine or at
> > least time phone.
> 
> Have you looked at Hawking's recent work

Where?
And can i see the math?(at least  to check for simple mistakes ;-)

> on closed timelike loops?  As I 
> understand it, the only way you can use a black hole as a time machine 
> is to change its mass.  (Adding small black holes--or any large quantity 
> of matter will do.)  There is a shell around the black hole where there 
> are an infinite number of photons following closed timelike curves 
> (orbits).  These photon shells have no energy/rest mass in the 
> containing space, but an infinite amount of energy relative to anything 
> entering the ergosphere, so touch one and die.  But if you change the 
> mass of the black hole by dropping mass in, the shell inside of your 
> path will cease to exist and a new layer will form enclosing you.  If 
> your course is backwards in time, you can exit where two smaller black 
> holes are colliding to create the one you entered.
> 
> Time travel by this method may be possible, but talk about dangerous! 
> You need colliding black holes to get in, another collision where you 
> exit, and a microsecond error in plotting your course could be fatal.

Don't sure that it's even possible to "do the math".There's no proved
general field theory,and no quantum-gravitation theory yet.So ,here,we
will probably have some new law that disallows time travel ;-)

Also,even if everything is right,it's probably yet another way to see
your twidle young while you're old.

Also about name.Even without digging deep,"Closed timelike curve".If
it's closed,it's mean that for particle there's no future.Particle
stay on that loop.That's NOT the time mashine in any meaning,time
mashine 1:don't have scientific meaning too;2:it have only sci-fi
meaning that have nothing with looped particle or looped you.

If it's on a timelike loop,it's on a loop.Can't enter or exit.It's not
an ADA loop.And no exceptions ;-)


.............
Quite old theory that,i think,was developed to allow
time-travel:fatalism.You can't kill grantparent because can't kill.

Other time mashine:We feel,that our future depend to current
moment,pisics laws shows that.But for same reason current moment
depend to future.And we can't build time phone anyway-here it's
thermodynamics issue :).



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

* Re: OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada))
  2003-11-30 17:40                                                                                   ` OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada)) Dmytry Lavrov
@ 2003-12-01  3:40                                                                                     ` Robert I. Eachus
  2003-12-01 13:02                                                                                       ` Dmytry Lavrov
  0 siblings, 1 reply; 385+ messages in thread
From: Robert I. Eachus @ 2003-12-01  3:40 UTC (permalink / raw)


Dmytry Lavrov wrote:

> Both could be original,IMO,if copyed very well.

That is where quantum mechanics comes in.  Heisenberg's Uncertainty 
Principle limits exact copying.  Quantum teleportation gets around that 
ALL of the QM state is copied exactly.  But the QM state of the orignial 
is destroyed and you can't use the process to make two different copies.

If a you think a copy of YOU without the QM data is still you, go for 
it.  I believe otherwise, but it will be a while before the experiment 
is tried.

> We send signal to "z-transmitter"(transmitter of super-luminal
> data,"emmits z-rays" :),it's sends to z-receiver A,then Mr. X routes
> it to z-transmitter B(Mr X can use normal light to route data,in facts
> X is not needed),then it comes to z-receiver B,and we can get it
> before we sends,and if time is too short,we routes it again to A to
> get necessary "negative time"...

The reason that the Nimtz process can't be used this way is that the 
superluminal transition takes the same (positive) time in all frames. 
You can calculate an equivalent velocity by taking the distance traveled 
with respect to some observer and divide by the (constant) transition 
time.  But since the time is constant and always positive there is no 
way to send data back in time.

Look at it this way.  We have three observers A and B a distance apart 
and C at A's location but travelling at 1/2 c.

    A,C ---------------------> B
        <---------------------

A sends a message to B, which takes k picoseconds.  B then sends a copy 
back to C again taking k picoseconds.  A and C see B recieve the message 
at different times in the future.  But both see the message from B 
arriving 2k picoseconds after A's message was sent.  Paradox averted. 
Notice that A and B compute the distances and (round trip) velocity the 
same, but C sees the distance (and speed) differently.

It is one of those elegant things that once your mind says "Aha!" you 
see that it is the only way to have superluminal communication without 
causality violations--the transmission time, not the speed must be the 
same for all observers.

> Also about name.Even without digging deep,"Closed timelike curve".If
> it's closed,it's mean that for particle there's no future.Particle
> stay on that loop.That's NOT the time mashine in any meaning,time
> mashine 1:don't have scientific meaning too;2:it have only sci-fi
> meaning that have nothing with looped particle or looped you.

Yes, and no.  This stuff gets pretty deep quickly, but some parts are 
simple.  Around any singuality (including black holes) in a steady state 
there must be a surface where any photon travelling perpendicular to the 
surface is on a closed timelike curve.  In other words it is in orbit 
around the black hole.  In the rest frame distant from the black hole, 
these photons have zero energy, but they have considerable energy 
relative to anything falling into the black hole.

Now rotate the black hole.  The radius at which a photon travels in a 
closed loop is different depending on whether it is going in the 
direction of the rotation or against it.  Orbits at an angle to the 
plane of rotation precess, an the number of orbits before a photon comes 
back to its starting point can be large.  (In fact it will pass "near" 
that point at a different angle at least once before it returns to 
approximately the same point with the same velocity vector.)  So for a 
rotating black hole there are many of these shells and they overlap.

Now let's look at two (non-rotating or with small angular momentum) 
black holes coming together.  There is a volume on the connecting axis 
where at one instant you are outside both sets of closed timelike 
curves, then you are inside another larger set around both black holes. 
  But how can you get out?  At a different matter infall, or the same 
one, you can exit if and only if you are moving backwards in time.  See 
how easy that is?  (Riiiggght!)

Constant mass infall doesn't create this situation, so just because a 
black hole has an accretion disk doesn't mean you can exit just anywhere 
in time.  For any black hole there are a finite number of potential 
entry and exit points, and the point of formation may or may not be one 
of them.  On the other hand even if a black hole that was formed in a 
supernova explosion did have the right characteristics at formation, you 
could come out in the middle of a supernova explosion.  (Ouch!)  Same 
for black holes formed during the first few milliseconds after the big 
bang, the exit point is going to be a little hot!

-- 
                                           Robert I. Eachus

100% Ada, no bugs--the only way to create software.




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

* Re: OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada))
  2003-12-01  3:40                                                                                     ` Robert I. Eachus
@ 2003-12-01 13:02                                                                                       ` Dmytry Lavrov
  2003-12-02  4:38                                                                                         ` Alexander Kopilovitch
  0 siblings, 1 reply; 385+ messages in thread
From: Dmytry Lavrov @ 2003-12-01 13:02 UTC (permalink / raw)


"Robert I. Eachus" <rieachus@comcast.net> wrote in message news:<R8Gdnad7DsbeJVeiRVn-gg@comcast.com>...
> Dmytry Lavrov wrote:
> 
> > Both could be original,IMO,if copyed very well.
> 
> That is where quantum mechanics comes in.  Heisenberg's Uncertainty 
> Principle limits exact copying.  Quantum teleportation gets around that 
> ALL of the QM state is copied exactly.

As i have said,that is antiparticle or light with perpendicular
polarisation.It's not exact copy anyway.And you can't teleport
something more or less massive and complex(say,one hidrogen atom is
massive enought) because you need atom and anti-atom formed from
energy at same moment in same process AND atom to be teleported.Or you
have to teleport particle-by-particle,that's not required thing
anyway.


>  But the QM state of the orignial 
> is destroyed and you can't use the process to make two different copies.

I can use the process to make 2 copyes ;-) from one source(read that
source and make 2 copies)

> 
> If a you think a copy of YOU without the QM data is still you, go for 
> it.

Well,i'm now is a copy without qm data of i'm ,say,1E-nn seconds ago.

>  I believe otherwise, but it will be a while before the experiment 
> is tried.

To yourself check if you're a copy with qm or without,you need to
destroy that qm state anyway ;-).

> 
> > We send signal to "z-transmitter"(transmitter of super-luminal
> > data,"emmits z-rays" :),it's sends to z-receiver A,then Mr. X routes
> > it to z-transmitter B(Mr X can use normal light to route data,in facts
> > X is not needed),then it comes to z-receiver B,and we can get it
> > before we sends,and if time is too short,we routes it again to A to
> > get necessary "negative time"...
> 
> The reason that the Nimtz process can't be used this way is that the 
> superluminal transition takes the same (positive) time in all frames. 

What with zero time _in_system_ A?
Or infinitely small positive value?
My experiment still work as time phone,if time is _zero_ in frame
A,it's _negative_ in  frame "We" and frame B .
The speed when we don't have time phone is equal to speed of light.

> You can calculate an equivalent velocity by taking the distance traveled 
> with respect to some observer and divide by the (constant) transition 
> time.  But since the time is constant and always positive there is no 
> way to send data back in time.
> 
> Look at it this way.  We have three observers A and B a distance apart 
> and C at A's location but travelling at 1/2 c.
> 
>     A,C ---------------------> B
>         <---------------------
> 
> A sends a message to B, which takes k picoseconds.  B then sends a copy 
> back to C again taking k picoseconds.  A and C see B recieve the message 
> at different times in the future.  But both see the message from B 
> arriving 2k picoseconds after A's message was sent.  Paradox averted. 

And what's with principes of special relativity ?
They don't work here.

My example assumes that SRT work right.If your example assumes that
there's no relativity,ok,if there's no relativity,no problems :).


> Notice that A and B compute the distances and (round trip) velocity the 
> same, but C sees the distance (and speed) differently.

principial question:
What when distance is perpendicular to velocity?
We have absolute time now?

> 
> It is one of those elegant things that once your mind says "Aha!" you 
> see that it is the only way to have superluminal communication without 
> causality violations--the transmission time, not the speed must be the 
> same for all observers.
> 
> > Also about name.Even without digging deep,"Closed timelike curve".If
> > it's closed,it's mean that for particle there's no future.Particle
> > stay on that loop.That's NOT the time mashine in any meaning,time
> > mashine 1:don't have scientific meaning too;2:it have only sci-fi
> > meaning that have nothing with looped particle or looped you.
> 
> Yes, and no.  This stuff gets pretty deep quickly, but some parts are 
> simple.  Around any singuality (including black holes) in a steady state 
> there must be a surface where any photon travelling perpendicular to the 
> surface is on a closed timelike curve.  In other words it is in orbit 
> around the black hole.  In the rest frame distant from the black hole, 
> these photons have zero energy, but they have considerable energy 
> relative to anything falling into the black hole.
> 
> Now rotate the black hole.  The radius at which a photon travels in a 
> closed loop is different depending on whether it is going in the 
> direction of the rotation or against it.  Orbits at an angle to the 
> plane of rotation precess, an the number of orbits before a photon comes 
> back to its starting point can be large.  (In fact it will pass "near" 
> that point at a different angle at least once before it returns to 
> approximately the same point with the same velocity vector.)  So for a 
> rotating black hole there are many of these shells and they overlap.
> 
> Now let's look at two (non-rotating or with small angular momentum) 
> black holes coming together.  There is a volume on the connecting axis 
> where at one instant you are outside both sets of closed timelike 
> curves, then you are inside another larger set around both black holes. 
>   But how can you get out?  At a different matter infall, or the same 
> one, you can exit if and only if you are moving backwards in time.  See 
> how easy that is?  (Riiiggght!)

And then you have to close the curve .Or it's not a closed timelike
curve,ops?.

> 
> Constant mass infall doesn't create this situation, so just because a 
> black hole has an accretion disk doesn't mean you can exit just anywhere 
> in time.  For any black hole there are a finite number of potential 
> entry and exit points, and the point of formation may or may not be one 
> of them.  On the other hand even if a black hole that was formed in a 
> supernova explosion did have the right characteristics at formation, you 
> could come out in the middle of a supernova explosion.  (Ouch!)  Same 
> for black holes formed during the first few milliseconds after the big 
> bang, the exit point is going to be a little hot!

When you're escaping,you have to travel forward in time and go into
hole again.Again and again. (i'm assuming that it's really CLOSED
timelike curve) If you haven't born in blackhole or particles your
body formed from aren't from the same blackhole(s),you can't
travel,that not in your fatum.

_Closed_  timelike curve have nothing with time mashine(because it's
closed) anyway and that promotion that "our works will show us way to
build time mashine" is a bad thing and symptom that there's something
changes in bad direction.
I pretty sure that it's closed in time and particle can't have complex
time-loop.(ex. travel from t1 to t2>t1,then from t2 to t3,t2>t3>t1,and
so-on)
Pretty sure that this inpossible:

|big bang
----------------->
            |    *
      <-----|----
     *      |
     --------------------------------> and back to big-bang because we
maybe live in closed curve.

here | mean possible interaction with itself.
When travelling backward, it's protected from interaction because in
blackhole.Should be protected in forward too
Absolutely sure that this closed curves also forbid causal loop well.


With quantum:there's no general relativity+quantum theory.So it's at
least "strange" way to do the math for time travel now before doing
that theory.

Our future depents to current state.Our current state,so,depend to our
future.

And last but not least:Who is author of that sci-fi interpretation?
Serious scientist newer makes such sci-fi interpretations of his own
work.
Of course,good old sci-fi used something old to travel,and not
surprising that now it uses blackholes+quantum to travel because not
many peoples understands general relativity well ,and there's no
theory for general relativity and quantum.  Of course while simple mix
of general relativity and quantum phisicaly have no meaning,so it's
possible to do some "right" math with wrong sources.
It have all signs of bad sci-fi,even if it's really a good work.



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

* Re: OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada))
  2003-12-01 13:02                                                                                       ` Dmytry Lavrov
@ 2003-12-02  4:38                                                                                         ` Alexander Kopilovitch
  0 siblings, 0 replies; 385+ messages in thread
From: Alexander Kopilovitch @ 2003-12-02  4:38 UTC (permalink / raw)


dmytrylavrov@fsmail.net (Dmytry Lavrov) wrote:
> there's no theory for general relativity and quantum.

I strongly suspect that many people make living from that theory,
though.
So, I reckon that this theory exists, in some quite physical sense.

>  Of course while simple mix

Why simple? It is quite complicated. 

> of general relativity and quantum phisicaly have no meaning,

It isn't a problem. Just because whatever meaning it may have, we
still
have absolutely no chance to touch that meaning in reasonable future -
before we produce entirely different theories on those matters, and
not once.

> so it's possible to do some "right" math with wrong sources.

Those who "do math" never worry too much about the correspondence
between
mathematics and meaning. They are too busy doing math - you know, they
must do it right and meet a deadline for a conference, and this is not
an easy or simple job - they are working hard enough, and competition
level
is high.

> It have all signs of bad sci-fi,even if it's really a good work.

How can it be otherwise? Recall that the most important common notion
of
relativity (both special and general) theory and quantum mechanics is
the
notion of observer - and then guess who is observer here.

  Well. let me tell one very old personal story, for relaxation. When
I was
a child (about 10 years old) I attended a public popular lecture on
quantum
mechanics, given by one of the most prominent Soviet physisists of
that time,
I.M.Lifshitz. At the end of the lecture he invited the public to ask
questions,
and I asked him: how can we speak about the law of conservation of
energy in
the presence of inequality (delta E) * (delta t) >= h ? That is, as we
can't
measure this things - time moments and energy levels - simultaneously
and
precisely, how can we claim that the energy is the same in different
moments?
He almost laughed and "explained" that just because of that
fundamental fact
we can say that the law of conservation of energy is true in quantum
mechanics.
It sounds like that inequality saves that law. Naturally, I was deeply
unsatisfied with this explanation. Several months later I was a guest
in his
home, and he tried to explain me the same thing personally, and
wasted,
perhaps, half an hour for that, but in vain - I remained stubborn.
This story
has no happy end - I must confess that I still don't understand that
way of
thinking (or expression), and many beautiful and really consistent
mathematical
theories of which I became aware later (and which give various
interpretations
for that inequality) can't help here.



Alexander Kopilovitch                      aek@vib.usr.pu.ru
Saint-Petersburg
Russia



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

end of thread, other threads:[~2003-12-02  4:38 UTC | newest]

Thread overview: 385+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-10-31 21:02 Clause "with and use" Gautier Write-only
2003-10-31 21:51 ` Warren W. Gay VE3WWG
2003-10-31 22:29 ` Randy Brukardt
2003-11-01 13:39   ` Gautier Write-only
2003-11-01 14:32     ` Marius Amado Alves
2003-11-01 16:23       ` Gautier Write-only
2003-11-01 19:59         ` Marius Amado Alves
2003-11-01  3:39 ` Alexandre E. Kopilovitch
2003-11-02 12:03   ` Stephane Richard
2003-11-03  2:26     ` Alexandre E. Kopilovitch
2003-11-01  4:07 ` Alexandre E. Kopilovitch
2003-11-03  8:22   ` Lutz Donnerhacke
2003-11-03 17:37     ` Alexandre E. Kopilovitch
2003-11-01  7:09 ` Russ
2003-11-01 10:29   ` Pascal Obry
2003-11-01 11:57     ` Marius Amado Alves
2003-11-01 13:24     ` Gautier Write-only
2003-11-01 22:12       ` Pascal Obry
2003-11-02 10:45         ` Stephane Richard
2003-11-02 11:34           ` Preben Randhol
2003-11-02 12:04             ` Stephane Richard
2003-11-02 13:03             ` Marin David Condic
2003-11-02 13:10               ` Stephane Richard
2003-11-02 13:49                 ` Software vs Hardware productivity (was: Re: Clause "with and use") Marin David Condic
     [not found]               ` <pn4g71-ned.ln1@beastie.ix.netcom.com>
2003-11-02 22:25                 ` Clause "with and use" Marin David Condic
2003-11-04 17:25                   ` Warren W. Gay VE3WWG
2003-11-03 14:36               ` Preben Randhol
2003-11-04  9:57                 ` Marin David Condic
2003-11-04 11:22                   ` Preben Randhol
2003-11-04 12:45                     ` Marin David Condic
2003-11-04 15:46                       ` Wes Groleau
2003-11-04 16:08                         ` Marius Amado Alves
2003-11-06 10:10                           ` Preben Randhol
2003-11-18  0:07                           ` Brian Gaffney
2003-11-18  1:25                             ` Stephane Richard
2003-11-18  8:50                             ` Marius Amado Alves
2003-11-18 10:43                               ` Preben Randhol
2003-11-18 10:58                                 ` Marius Amado Alves
2003-11-18 11:33                                   ` Preben Randhol
2003-11-18 12:11                                     ` Marius Amado Alves
2003-11-18 13:46                                       ` Preben Randhol
2003-11-20  3:53                                       ` Brian Gaffney
2003-11-20  9:20                                         ` Preben Randhol
2003-11-18 12:33                                     ` Stephane Richard
2003-11-04 17:37                   ` Warren W. Gay VE3WWG
2003-11-05 19:08                     ` Russ
2003-11-05 21:11                       ` Mark Lorenzen
2003-11-06  3:10                         ` Russ
2003-11-06  8:26                           ` Vinzent 'Gadget' Hoefler
2003-11-06 18:52                             ` Russ
2003-11-06 20:03                               ` Martin Dowie
2003-11-07  0:22                                 ` Robert I. Eachus
2003-11-07  7:02                                   ` Martin Dowie
2003-11-07 19:04                                     ` Robert I. Eachus
2003-11-07 19:23                                       ` Martin Dowie
2003-11-07 19:38                                         ` Robert I. Eachus
2003-11-07 22:46                                           ` Martin Dowie
2003-11-09  6:49                                             ` Robert I. Eachus
2003-11-07  5:04                                 ` Russ
2003-11-07 20:31                                 ` Russ
2003-11-07 22:59                                   ` Martin Dowie
2003-11-07 23:33                                     ` Martin Dowie
2003-11-08  8:22                                     ` Russ
2003-11-08  9:04                                       ` Martin Dowie
2003-11-09  6:59                                   ` Robert I. Eachus
2003-11-09 14:27                                   ` Martin Dowie
2003-11-10  7:47                               ` Vinzent 'Gadget' Hoefler
2003-11-06 11:53                           ` Stephane Richard
2003-11-06 13:36                             ` Marin David Condic
2003-11-07  1:15                               ` Stephane Richard
2003-11-07  0:09                           ` Mark Lorenzen
2003-11-05 21:20                       ` Warren W. Gay VE3WWG
2003-11-05 21:48                       ` Alexandre E. Kopilovitch
2003-11-03  5:59           ` Russ
2003-11-03 14:32             ` Preben Randhol
2003-11-03 22:11               ` Gautier Write-only
2003-11-04 10:58                 ` Preben Randhol
2003-11-04 13:16                   ` Hyman Rosen
2003-11-04 15:09                     ` Vinzent 'Gadget' Hoefler
2003-11-04 15:49                     ` Wes Groleau
2003-11-06 10:55                     ` Preben Randhol
2003-11-06 13:03                       ` Hyman Rosen
2003-11-06 15:35                         ` Preben Randhol
2003-11-06 17:26                         ` Warren W. Gay VE3WWG
2003-11-06 20:38                           ` Gautier Write-only
2003-11-06 21:12                             ` Warren W. Gay VE3WWG
2003-11-07  7:08                             ` Russ
2003-11-07  8:48                             ` Preben Randhol
2003-11-08 10:56                               ` Gautier Write-only
2003-11-08 11:35                                 ` Preben Randhol
2003-11-11 22:28                                   ` Gautier Write-only
2003-11-12 12:42                                     ` Preben Randhol
2003-11-08 19:40                                 ` Russ
2003-11-10  7:38                                   ` Preben Randhol
2003-11-10 13:03                                     ` Marin David Condic
2003-11-10 13:19                                       ` Preben Randhol
2003-11-10 13:38                                         ` Marin David Condic
2003-11-11  7:20                                       ` Russ
2003-11-11  8:12                                         ` Preben Randhol
2003-11-11 19:43                                           ` Russ
2003-11-12 12:35                                             ` Preben Randhol
2003-11-11  8:31                                         ` Preben Randhol
2003-11-11  8:57                                           ` Vinzent 'Gadget' Hoefler
2003-11-11 10:10                                             ` Marin David Condic
2003-11-11 10:49                                               ` Stephane Richard
2003-11-11 14:17                                               ` Vinzent 'Gadget' Hoefler
2003-11-11 15:36                                                 ` Wes Groleau
2003-11-11 16:08                                                   ` Preben Randhol
2003-11-11 16:24                                                   ` Vinzent 'Gadget' Hoefler
2003-11-12 12:01                                                     ` Marin David Condic
2003-11-12 13:07                                                       ` Vinzent 'Gadget' Hoefler
2003-11-13 12:12                                                         ` Marin David Condic
2003-11-13 17:49                                                           ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
2003-11-14  5:00                                                             ` Robert I. Eachus
2003-11-17  2:31                                                             ` Russ
2003-11-17  3:04                                                               ` Chad R. Meiners
2003-11-17 12:06                                                                 ` Marin David Condic
2003-11-17 12:49                                                                   ` Marius Amado Alves
2003-11-17 12:56                                                                     ` Stephane Richard
2003-11-17 13:14                                                                       ` Marius Amado Alves
2003-11-17 17:31                                                                     ` Warren W. Gay VE3WWG
2003-11-18 11:52                                                                     ` Marin David Condic
2003-11-17 20:17                                                                   ` Chad R. Meiners
2003-11-18 12:31                                                                     ` Marin David Condic
2003-11-18 13:19                                                                       ` Stephane Richard
2003-11-18 17:38                                                                         ` Marin David Condic
2003-11-18 17:11                                                                       ` Chad R. Meiners
2003-11-18 17:58                                                                         ` Warren W. Gay VE3WWG
2003-11-18 20:00                                                                           ` Chad R. Meiners
2003-11-20  2:07                                                                             ` Warren Gay
2003-11-18 21:20                                                                           ` Alexandre E. Kopilovitch
2003-11-19 17:12                                                                             ` Warren W. Gay VE3WWG
2003-11-18 22:42                                                                           ` Stephane Richard
2003-11-19  2:25                                                                             ` Wes Groleau
2003-11-19  2:38                                                                               ` tmoran
2003-11-19  2:53                                                                                 ` Stephane Richard
2003-11-19 17:18                                                                                 ` Warren W. Gay VE3WWG
2003-11-19 12:42                                                                             ` Marin David Condic
2003-11-19 13:05                                                                               ` Stephane Richard
2003-11-20 12:40                                                                                 ` Marin David Condic
2003-11-20 13:09                                                                                   ` Stephane Richard
2003-11-20 13:37                                                                                     ` Marin David Condic
2003-11-19 17:28                                                                               ` Warren W. Gay VE3WWG
2003-11-19 21:57                                                                                 ` Chad R. Meiners
2003-11-20  2:12                                                                                   ` Warren Gay
2003-11-20 18:27                                                                                   ` Stephen Leake
2003-11-20  1:39                                                                                 ` Wes Groleau
2003-11-20 12:57                                                                                 ` Marin David Condic
2003-11-20 17:47                                                                                   ` Warren W. Gay VE3WWG
2003-11-21 12:53                                                                                     ` Marin David Condic
2003-11-21 17:21                                                                                       ` Warren W. Gay VE3WWG
2003-11-21 19:06                                                                                         ` Chad R. Meiners
2003-11-22  4:20                                                                                           ` Warren Gay
2003-11-22 17:06                                                                                             ` Chad R. Meiners
2003-11-23  2:17                                                                                               ` Warren Gay
2003-11-25  0:06                                                                                                 ` Re-Marketing Ada (was "With and use") A new project for generating thin bindings Chad R. Meiners
     [not found]                                                                                     ` <3FBF774C.2050108@shore.net>
2003-11-21 17:42                                                                                       ` Re-Marketing Ada (was "With and use") Warren W. Gay VE3WWG
2003-11-19 21:07                                                                               ` Wes Groleau
2003-11-20  9:31                                                                                 ` Preben Randhol
2003-11-19 17:15                                                                             ` Warren W. Gay VE3WWG
2003-11-19 17:52                                                                             ` Stephen Leake
2003-11-19 18:15                                                                               ` Hyman Rosen
2003-11-20  3:03                                                                               ` Warren Gay
2003-11-20 12:19                                                                                 ` Lutz Donnerhacke
2003-11-20 18:01                                                                                   ` Warren W. Gay VE3WWG
2003-11-21 10:55                                                                                     ` Generic thinbinding toolkit for C Lutz Donnerhacke
2003-11-21 18:02                                                                                       ` Warren W. Gay VE3WWG
2003-11-22  4:25                                                                                         ` Warren Gay
2003-11-22  5:12                                                                                       ` Warren Gay
2003-11-24 10:20                                                                                         ` Lutz Donnerhacke
2003-11-17 17:29                                                               ` OT: Nuclear Waste (Was Re-Marketing Ada) Warren W. Gay VE3WWG
2003-11-17 18:01                                                                 ` Hyman Rosen
2003-11-20 12:14                                                                   ` Georg Bauhaus
2003-11-20 15:14                                                                     ` Hyman Rosen
2003-11-20 15:41                                                                       ` Vinzent 'Gadget' Hoefler
2003-11-20 16:40                                                                         ` Hyman Rosen
2003-11-20 17:03                                                                           ` Vinzent 'Gadget' Hoefler
2003-11-20 18:59                                                                             ` Hyman Rosen
2003-11-21  8:37                                                                               ` Vinzent 'Gadget' Hoefler
2003-11-20 19:26                                                                           ` Preben Randhol
2003-11-20 22:55                                                                         ` Robert I. Eachus
2003-11-21  0:00                                                                           ` Jeffrey Carter
2003-11-21 13:25                                                                           ` Vinzent 'Gadget' Hoefler
2003-11-21 16:03                                                                             ` Robert I. Eachus
2003-11-21 16:31                                                                               ` Vinzent 'Gadget' Hoefler
2003-11-20 16:27                                                                       ` Georg Bauhaus
2003-11-20 19:25                                                                       ` Preben Randhol
2003-11-20 23:54                                                                         ` Larry Elmore
2003-11-21  9:25                                                                           ` Preben Randhol
2003-11-21 16:13                                                                             ` Robert I. Eachus
2003-11-17 18:45                                                                 ` Jeffrey Carter
2003-11-17 19:58                                                                   ` Warren W. Gay VE3WWG
2003-11-17 21:22                                                                     ` Stephane Richard
2003-11-18 18:00                                                                       ` Warren W. Gay VE3WWG
2003-11-18 20:02                                                                         ` Alexandre E. Kopilovitch
2003-11-19 17:30                                                                           ` Warren W. Gay VE3WWG
2003-11-19 20:48                                                                       ` Dmytry Lavrov
2003-11-19 21:10                                                                         ` Hyman Rosen
2003-11-20  1:34                                                                         ` Robert I. Eachus
2003-11-20 10:21                                                                           ` Dmytry Lavrov
2003-11-20 13:40                                                                             ` Robert I. Eachus
2003-11-20 18:00                                                                               ` Alexandre E. Kopilovitch
2003-11-20 23:47                                                                                 ` Robert I. Eachus
2003-11-21  2:51                                                                                   ` Alexandre E. Kopilovitch
2003-11-21  9:22                                                                                   ` Preben Randhol
2003-11-21 16:24                                                                                     ` Robert I. Eachus
2003-11-29 23:22                                                                               ` Dmytry Lavrov
2003-11-30  2:33                                                                                 ` Robert I. Eachus
2003-11-30 17:40                                                                                   ` OT: Relativity ,super-luminal communications and time travel (Was OT: Nuclear Waste (Was Re-Marketing Ada)) Dmytry Lavrov
2003-12-01  3:40                                                                                     ` Robert I. Eachus
2003-12-01 13:02                                                                                       ` Dmytry Lavrov
2003-12-02  4:38                                                                                         ` Alexander Kopilovitch
2003-11-20 15:49                                                                             ` OT: Nuclear Waste (Was Re-Marketing Ada) Alexandre E. Kopilovitch
2003-11-21 12:59                                                                               ` Marin David Condic
2003-11-21 15:29                                                                                 ` Frank J. Lhota
2003-11-24 17:15                                                                                   ` Warren W. Gay VE3WWG
2003-11-22 12:33                                                                               ` Dmytry Lavrov
2003-11-20  6:31                                                                         ` Russ
2003-11-20 11:35                                                                           ` Dmytry Lavrov
2003-11-20 18:04                                                                             ` Chad R. Meiners
2003-11-20 12:49                                                                           ` Georg Bauhaus
2003-11-20 13:02                                                                             ` Vinzent 'Gadget' Hoefler
2003-11-20 14:10                                                                           ` Robert I. Eachus
2003-11-20 16:12                                                                             ` Dmitry A. Kazakov
2003-11-20 16:11                                                                               ` Vinzent 'Gadget' Hoefler
2003-11-20 18:16                                                                               ` Chad R. Meiners
2003-11-21  8:47                                                                                 ` Dmitry A. Kazakov
2003-11-21  9:28                                                                                   ` Preben Randhol
2003-11-21 12:57                                                                                     ` Dmitry A. Kazakov
2003-11-21 13:25                                                                                       ` Vinzent 'Gadget' Hoefler
2003-11-21 14:10                                                                                         ` Dmitry A. Kazakov
2003-11-21 14:24                                                                                           ` Preben Randhol
2003-11-21 14:36                                                                                             ` Dmitry A. Kazakov
2003-11-21 14:53                                                                                             ` Vinzent 'Gadget' Hoefler
2003-11-21 13:57                                                                                       ` Preben Randhol
2003-11-21 14:00                                                                                         ` Preben Randhol
2003-11-21 14:27                                                                                         ` Dmitry A. Kazakov
2003-11-20 16:33                                                                             ` Georg Bauhaus
2003-11-21  9:05                                                                               ` Dmitry A. Kazakov
2003-11-21 16:36                                                                                 ` Robert I. Eachus
2003-11-21 17:05                                                                                   ` Stephane Richard
2003-11-22 10:45                                                                                   ` Dmytry Lavrov
2003-11-22 10:41                                                                             ` Dmytry Lavrov
2003-11-17 23:33                                                                   ` Dmytry Lavrov
2003-11-18  0:31                                                                     ` Ludovic Brenta
2003-11-18 11:49                                                                       ` Dmytry Lavrov
2003-11-18 18:06                                                                       ` Warren W. Gay VE3WWG
2003-11-18  7:38                                                                   ` Preben Randhol
2003-11-18  7:42                                                                     ` Preben Randhol
2003-11-18  7:53                                                                     ` Preben Randhol
2003-11-18 16:06                                                                       ` Dmytry Lavrov
2003-11-17 22:32                                                                 ` Russ
2003-11-18 16:38                                                                   ` Robert I. Eachus
2003-11-19  5:36                                                                     ` Russ
2003-11-19 15:28                                                                       ` Dmytry Lavrov
2003-11-19 20:01                                                                         ` Robert I. Eachus
2003-11-20  9:30                                                                           ` Preben Randhol
2003-11-20 14:43                                                                             ` Robert I. Eachus
2003-11-20 14:55                                                                               ` Preben Randhol
2003-11-20 15:24                                                                                 ` Vinzent 'Gadget' Hoefler
2003-11-20 19:30                                                                                   ` Preben Randhol
2003-11-19 15:41                                                                       ` Robert I. Eachus
2003-11-18 18:12                                                                   ` Warren W. Gay VE3WWG
2003-11-18 18:47                                                                     ` Hyman Rosen
2003-11-19  0:44                                                                     ` Russ
2003-11-19 17:33                                                                       ` Warren W. Gay VE3WWG
2003-11-13 22:04                                                           ` Clause "with and use" Wes Groleau
2003-11-14  4:16                                                             ` Marin David Condic
2003-11-12 11:55                                                 ` Marin David Condic
2003-11-12 13:10                                                   ` Vinzent 'Gadget' Hoefler
2003-11-11 19:49                                               ` Russ
2003-11-11 20:35                                             ` Russ
2003-11-11 22:06                                               ` Mark Lorenzen
2003-11-11 22:08                                               ` Vinzent 'Gadget' Hoefler
2003-11-11 22:20                                                 ` Gautier Write-only
2003-11-11 22:38                                                   ` Vinzent 'Gadget' Hoefler
2003-11-12 12:46                                                     ` Preben Randhol
2003-11-13  7:26                                                     ` Russ
2003-11-13 19:59                                                       ` Chad R. Meiners
2003-11-14  5:09                                                         ` Robert I. Eachus
2003-11-14  6:47                                                           ` Chad R. Meiners
2003-11-14  5:45                                                         ` Russ
2003-11-14  7:51                                                           ` Chad R. Meiners
2003-11-14 23:23                                                             ` Russ
2003-11-15  4:39                                                               ` Chad R. Meiners
2003-11-15 11:35                                                                 ` Stephane Richard
2003-11-15 12:53                                                                   ` Marin David Condic
2003-11-16  0:36                                                                     ` Russ
2003-11-16  2:38                                                                       ` Chad R. Meiners
2003-11-16  0:19                                                                   ` Russ
2003-11-16  1:41                                                                     ` Stephane Richard
2003-11-16  2:11                                                                       ` Frank J. Lhota
2003-11-16  2:28                                                                         ` Stephane Richard
2003-11-16 14:04                                                                         ` Hyman Rosen
2003-11-16  6:15                                                                       ` Russ
2003-11-16 14:00                                                                       ` Hyman Rosen
2003-11-16 13:56                                                                     ` Hyman Rosen
2003-11-15 22:12                                                                 ` Russ
2003-11-16  2:29                                                                   ` Chad R. Meiners
2003-11-16  7:01                                                                     ` Russ
2003-11-16 20:02                                                                       ` Chad R. Meiners
2003-11-17  2:34                                                                         ` Way off topic was: " Robert I. Eachus
2003-11-17 21:12                                                                           ` Russ
2003-11-17 21:29                                                                             ` Hyman Rosen
2003-11-17 23:28                                                                               ` Alexandre E. Kopilovitch
2003-11-17 23:19                                                                             ` Wes Groleau
2003-11-15 15:19                                                               ` Robert I. Eachus
2003-11-15 16:15                                                                 ` Gautier Write-only
2003-11-15 19:44                                                                   ` Frank J. Lhota
2003-11-16  0:02                                                                   ` Robert I. Eachus
2003-11-16 10:41                                                                     ` Gautier Write-only
2003-11-17  9:04                                                                     ` Dmitry A. Kazakov
2003-11-17 14:38                                                                       ` Robert I. Eachus
2003-11-17 19:40                                                                         ` Russ
2003-11-18 17:01                                                                           ` Robert I. Eachus
2003-11-18  8:35                                                                         ` Dmitry A. Kazakov
2003-11-16  5:55                                                                 ` Russ
2003-11-16 19:31                                                                   ` Robert I. Eachus
2003-11-17  1:34                                                                     ` Robert I. Eachus
2003-11-15 16:40                                                             ` Gautier Write-only
2003-11-16  0:25                                                               ` Robert I. Eachus
2003-11-16  1:20                                                                 ` Wes Groleau
2003-11-16 14:59                                                                   ` Gautier Write-only
2003-11-16 19:39                                                                     ` Robert I. Eachus
2003-11-16 21:04                                                                     ` Wes Groleau
2003-11-16 10:19                                                                 ` Gautier Write-only
2003-11-14  7:51                                                           ` Chad R. Meiners
2003-11-14  7:51                                                           ` Chad R. Meiners
2003-11-11 22:30                                                 ` Stephane Richard
2003-11-11 22:54                                                   ` Vinzent 'Gadget' Hoefler
2003-11-11 14:35                                           ` Hyman Rosen
2003-11-11 15:04                                             ` Preben Randhol
2003-11-11 20:01                                               ` Russ
2003-11-12 12:41                                                 ` Preben Randhol
2003-11-13  6:27                                                   ` Chad R. Meiners
2003-11-13  7:32                                                     ` Anders Wirzenius
2003-11-13 12:29                                                       ` Marin David Condic
2003-11-13 17:51                                                       ` Warren W. Gay VE3WWG
2003-11-14  8:32                                                         ` Dmitry A. Kazakov
2003-11-14 14:51                                                           ` Warren W. Gay VE3WWG
2003-11-17  9:22                                                             ` Dmitry A. Kazakov
2003-11-17 16:42                                                               ` Warren W. Gay VE3WWG
2003-11-18  8:49                                                                 ` Dmitry A. Kazakov
2003-11-19 17:46                                                                   ` Warren W. Gay VE3WWG
2003-11-20  8:26                                                                     ` Dmitry A. Kazakov
2003-11-14 20:44                                                           ` Robert I. Eachus
2003-11-14  9:05                                                         ` Anders Wirzenius
2003-11-14 12:37                                                       ` Georg Bauhaus
2003-11-14 15:18                                                         ` Robert I. Eachus
2003-11-15 13:04                                                           ` Marin David Condic
2003-11-18 22:45                                                             ` Georg Bauhaus
2003-11-11 15:36                                         ` Robert I. Eachus
2003-11-11 19:46                                           ` Eachus' Measure of Goodness (was: Clause "with and use") Jeffrey Carter
2003-11-12 16:08                                             ` Eachus' Measure of Goodness Robert I. Eachus
2003-11-12 17:24                                               ` Stephane Richard
2003-11-12 17:37                                               ` tmoran
2003-11-13  3:04                                                 ` Robert I. Eachus
2003-11-13  5:17                                                   ` Jeffrey Carter
2003-11-13  6:28                                                     ` Mark A. Biggar
2003-11-13  9:53                                                   ` Alexandre E. Kopilovitch
2003-11-13  6:37                                           ` Clause "with and use" Chad R. Meiners
2003-11-13 19:11                                             ` tmoran
2003-11-14  4:57                                               ` Robert I. Eachus
2003-11-14  7:05                                                 ` tmoran
2003-11-14 15:06                                                   ` Robert I. Eachus
2003-11-14 15:15                                                     ` Robert Spooner
2003-11-14 15:54                                                       ` Robert I. Eachus
2003-11-11 16:24                                         ` Vinzent 'Gadget' Hoefler
2003-11-11 17:36                                           ` Stephane Richard
2003-11-08 20:08                               ` Russ
2003-11-09  4:23                                 ` Alexandre E. Kopilovitch
2003-11-07 15:54                             ` Frank J. Lhota
2003-11-06 22:42                         ` Dale Stanbrough
2003-11-03 15:35             ` Stephane Richard
2003-11-03 16:26             ` Robert I. Eachus
2003-11-04  7:28               ` Vinzent 'Gadget' Hoefler
2003-11-03 22:04         ` Gautier Write-only
2003-11-03 10:47 ` Dmitry A. Kazakov
2003-11-03 16:30   ` Robert I. Eachus
2003-11-03 22:07   ` Gautier Write-only
2003-11-04  7:28   ` Vinzent 'Gadget' Hoefler
2003-11-06 20:12     ` Gautier Write-only
  -- strict thread matches above, loose matches on Subject: below --
2003-11-03 11:02 christoph.grein
2003-11-06  8:39 christoph.grein
2003-11-06 11:11 amado.alves

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