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-Thread: 103376,9905bd32158c3563 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Wed, 30 May 2007 22:22:55 -0500 From: "Steve" Newsgroups: comp.lang.ada References: <1180552110.488340.247990@g37g2000prf.googlegroups.com> Subject: Re: About studying Ada's implementation on its concurrent programming features. Date: Wed, 30 May 2007 20:23:26 -0700 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.3028 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3028 Message-ID: NNTP-Posting-Host: 24.20.111.245 X-Trace: sv3-2NBDyQocmfOg4UkSS/QnW9dZK/lv7feywiXUHLv1LyiD0IVincchtxC48fR8qRPwj39raJgRa/9ZCLq!C9ho7XDC12XmjmHqthhaGhgAUHhqGbxtk162AaYC7PgmxNfTg0CfRmQw/ipuaMIPswUjmHhbtw0r!x3N9Ba6w9xhjHvqvc3Lu7Kq6OBJp6g== X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.34 Xref: g2news1.google.com comp.lang.ada:15984 Date: 2007-05-30T20:23:26-07:00 List-Id: wrote in message news:1180552110.488340.247990@g37g2000prf.googlegroups.com... > Hi ALL, > > I am currently working on implementing an experimental parallel/ > concurrent programming language, and I am advised to look into Ada's > implementation on its concurrent programming constructs, e.g. the Ada > multi-tasking. I could be wrong, but I would think that the suggestion of looking into Ada with regard to concurrent programming was more of a suggestion of how Ada programs use concurrent programming, not how it is implemented by a particular compiler or run-time system. The Ada programming language provides task types and protected objects that hide the implementation of tasking from the programmer. These high level constructs eliminate dealing with low level things like semaphores, mutexes, and events. This allows the concurrent programs to run on different operating systems without modification. You can start at: http://en.wikibooks.org/wiki/Ada_Programming/Tasking for a description of programming tasks in Ada. I think that is what you're looking for. There are a number of good books on Ada that describe tasking. If you search the archives of this newsgroup you'll find lots of recomendations for both free and non-free books. I'm particularly fond of the non-free "Programming in Ada 95" by Barnes. On the other hand, if you want to look at how one implementation of Ada (GNAT) implements tasking, a good starting place is: http://www.iuma.ulpgc.es/users/jmiranda/gnat-rts/index.htm But as I mentioned earlier... I don't think that is what you are looking for. Regards, Steve (The Duck) > Although some Ada compiler is open source, I still found it is very > hard to study Ada's implementation through the source code. So, what I > am looking for is relevant literatures that systematically documented > how an Ada compiler(like the GNU-ada compiler) is constructed. I have > found some articles from Annual International Conference on Ada, such > as Proceedings of the conference on TRI-Ada '94(some papers on GNAT), > and Proceeding of the ACM-SIGPLAN symposium on Ada programming > language '80. But I am not sure these articles together describes the > design and implementation of an Ada compiler and runtime system. > There are plenty of papers on Ada's implementation available,but they > seem to be so scattered that I do not know where to start. > I would very much appreciate suggestions from Ada compiler > developers and Ada experts. > > Thanks a lot. > > cheers, > > Xiao-lei >