* 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ messages in thread
[parent not found: <pn4g71-ned.ln1@beastie.ix.netcom.com>]
* 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ messages in thread
[parent not found: <3FBF774C.2050108@shore.net>]
* 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ 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; 382+ 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] 382+ messages in thread
end of thread, other threads:[~2003-12-02 4:38 UTC | newest] Thread overview: 382+ 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
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox