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 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,57c2a52b53b360c2 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,UTF8 Path: g2news1.google.com!news3.google.com!feeder.news-service.com!de-l.enfer-du-nord.net!feeder2.enfer-du-nord.net!news.weisnix.org!newsfeed.ision.net!newsfeed2.easynews.net!ision!newsfeed.arcor.de!newsspool1.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Wed, 15 Jun 2011 18:21:14 +0200 From: Georg Bauhaus User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Multiple dispatch References: <7loar137gjid$.qrn6ghii6ee$.dlg@40tude.net> <11peqoimzzkd9$.foyzy9udb4dt$.dlg@40tude.net> <4df8c8c1$0$6557$9b4e6d93@newsspool4.arcor-online.net> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Message-ID: <4df8dbfa$0$7608$9b4e6d93@newsspool1.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 15 Jun 2011 18:21:14 CEST NNTP-Posting-Host: f44a237b.newsspool1.arcor-online.net X-Trace: DXC=O>OK1BEOIZLh>_cHTX3j]e\[XAd6OelS X-Complaints-To: usenet-abuse@arcor.de Xref: g2news1.google.com comp.lang.ada:19855 Date: 2011-06-15T18:21:14+02:00 List-Id: On 15.06.11 17:18, Yannick DuchĂȘne (Hibou57) wrote: > Le Wed, 15 Jun 2011 16:59:13 +0200, Georg Bauhaus > a Ă©crit: >> You could build something around (external) tag names. >> >> Or you could build a compiler into an ASIS program or >> vice versa. This should be a pretty powerful team. > If he/she was talking about runtime introspection, the former is more advised > (I supposed runtime introspection). Hypothetically, you compile GNAT into a program that uses the ASIS libraries (seems redundant, but anyway). Then, the compiler, being part of the running program, may be able to replace parts of the running program with new ones that have new types in them. Based on the program or based on information gathered at runtime. There is - code compiled from sources input at runtime; information about previous compiler runs is preserved - code compiled from sources produced by some ASIS machinery; the sources may be the product of the running program - code that is possible to make because the compiler knows enough about the program that it has produced. For example, when a compiler knows the layout of any dispatch tables, then it can compute more elaborate dispatch tables as it wishes. Providing for code injection, say.