From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,88ed72d98e6b3457 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-10-11 10:58:22 PST Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!wn14feed!worldnet.att.net!204.127.198.203!attbi_feed3!attbi.com!rwcrnsc54.POSTED!not-for-mail Message-ID: <3F88449A.503@comcast.net> From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Standard Library Interest? References: <3F7F760E.2020901@comcast.net> <3F8035B0.7080902@noplace.com> <3F816A35.4030108@noplace.com> <3F81FBEC.9010103@noplace.com> <6Ingb.30667$541.13861@nwrdny02.gnilink.net> <3F82B4A4.5060301@noplace.com> <3F82F527.3020101@noplace.com> <3F846B5E.9080502@comcast.net> <3F855460.6020804@noplace.com> <3F86211B.103@comcast.net> <3F8640CA.6090306@noplace.com> <3F86FE09.3050302@comcast.net> <3F8816EB.1010009@noplace.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 24.34.139.183 X-Complaints-To: abuse@comcast.net X-Trace: rwcrnsc54 1065895102 24.34.139.183 (Sat, 11 Oct 2003 17:58:22 GMT) NNTP-Posting-Date: Sat, 11 Oct 2003 17:58:22 GMT Organization: Comcast Online Date: Sat, 11 Oct 2003 17:58:22 GMT Xref: archiver1.google.com comp.lang.ada:679 Date: 2003-10-11T17:58:22+00:00 List-Id: I said: > By the way, the ARM A.2(4) says that: "In the standard mode, it is > illegal to compile a child of package Ada." > But don't take that to mean what it doesn't say. The AARM adds a > reason, a ramification, and an Implementation Note... Marin David Condic said: >Note that the ARM doesn't appear to say "Thou shalt provide a mode under >which a common, ordinary, garden-variety user can extend and modify >packages under Ada...". Hence there may not be. There may be no source >delivered for things under Ada. There may be no method provided to >recompile the source even if it is provided. The source may not even be >in Ada - it could be in C or assembler or in Jovial for all that the >standard has to say about it. Um, yes, the ARM doesn't say that, and I like it that way. But I do think the paragraph I pointed to needs fixing, and I think that we will definitely end up with an Ada.Containers hierarchy that vendors--and users--should be allowed to extend. There are a couple of places where vendors are currently encouraged to add packages to Ada or modify the standard packages. It might be worthwhile to pull all of those together in one place, as well as their current locations: A.3.3(31): "An implementation may provide additional packages as children of Ada.Characters, to declare names for the symbols of the local character set or other character sets." A.5.1(48): "The nongeneric equivalent packages may, but need not, be actual instantiations of the generic package for the appropriate predefined type." A.15(21): "An alternative declaration is allowed for package Command_Line if different functionality is appropriate for the external execution environment." Stephane Richard wrote: > I think so, seems reasonable for me, but shouldn't it basically depend on > the licence? or would anything in there have the same licence? or an > OpenSource Based licence so to speak so that it is available? I don't think that is an issue. If the specifications are in the standard, then providing an additional child package does not necessarily require knowing the contents of the package body, or even, to some extent, the contents of the private part of the package. So I think we are okay leaving this undefined. If a compiler vendor wants to make it difficult for a user to extend a package defined in the standard, they can. But I don't expect the situation to come up. Most "sensible" extensions to Ada will be in places like Ada.Characters.XXX, Ada.Strings.XXX, Ada.Numerics.XXX, etc. These packages don't have a private part. -- Robert I. Eachus "Quality is the Buddha. Quality is scientific reality. Quality is the goal of Art. It remains to work these concepts into a practical, down-to-earth context, and for this there is nothing more practical or down-to-earth than what I have been talking about all along...the repair of an old motorcycle." -- from Zen and the Art of Motorcycle Maintenance by Robert Pirsig