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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,84bf0ec36cf20893 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-05-17 10:44:10 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed1.cidera.com!Cidera!cyclone.columbus.rr.com!cyclone3.kc.rr.com!news3.kc.rr.com!twister.socal.rr.com.POSTED!not-for-mail Message-ID: <3CE5417F.F1524695@san.rr.com> From: Darren New X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Would an *AdaScript* language be a good / bad idea? References: <5ee5b646.0205140618.2d789fc9@posting.google.com> <5ee5b646.0205151846.4b14a73f@posting.google.com> <3CE3D8B4.C272C737@san.rr.com> <3CE3EA03.394B3EA@despammed.com> <3CE3FFE7.775E5103@san.rr.com> <3CE514CD.DC9C679@despammed.com> <3CE52E77.FC3FC588@san.rr.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Fri, 17 May 2002 17:44:09 GMT NNTP-Posting-Host: 66.75.151.160 X-Complaints-To: abuse@rr.com X-Trace: twister.socal.rr.com 1021657449 66.75.151.160 (Fri, 17 May 2002 10:44:09 PDT) NNTP-Posting-Date: Fri, 17 May 2002 10:44:09 PDT Organization: RoadRunner - West Xref: archiver1.google.com comp.lang.ada:24300 Date: 2002-05-17T17:44:09+00:00 List-Id: Pascal Obry wrote: > > Right, Ada is not designed for this. Although the distributed annex > > comes close; you could change out a partition without restarting the > > other partitions. > > I'm not sure this is true. To use this object the type must be known at > _compile_ time. Darren said "a new type at run-time", and to this question > I would answer no. The distributed annexe does not help here. Well, think of how Java does it. Your partition could define a tagged type called Transaction, and you could load up different partitions with derived types called AddTransaction, RemoveTransaction, etc as you develop them. Still messier than just sourcing an additional file, mind. I do things all the time like Read the name of the requested transaction. See if the file "trans-$name.tcl" exists. If not, return an error. Otherwise, load trans-$name.tcl and invoke the trans_$name procedure, passing all the arguments from the transaction. I don't have to change anything to add a transaction. Just put the file in the code directory. :-) *That* is the sort of thing people do with scripting languages. But you could do a similar thing with the distributed annex. Recompile the "handle transaction" code to add the new transaction and add it to the name->access_to_procedure table, and then at the end of the current transaction, kill the old partition and start the new partition and somehow get them hooked up again. Not sure how you'd actually do this, using (say) GNAT, tho. -- Darren New San Diego, CA, USA (PST). Cryptokeys on demand. ** http://home.san.rr.com/dnew/DNResume.html ** ** http://images.fbrtech.com/dnew/ ** My brain needs a "back" button so I can remember where I left my coffee mug.