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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.uzoreto.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!buffer1.nntp.dca1.giganews.com!nntp.earthlink.com!news.earthlink.com.POSTED!not-for-mail NNTP-Posting-Date: Sun, 20 May 2018 09:21:27 -0500 From: Dennis Lee Bieber Newsgroups: comp.lang.ada Subject: Re: tutorial for concurrent programming techniques (in Ada). Date: Sun, 20 May 2018 10:21:26 -0400 Organization: IISS Elusive Unicorn Message-ID: References: <40b98bc9-3538-46ec-ba08-bb3f93f69830@googlegroups.com> User-Agent: ForteAgent/8.00.32.1272 X-No-Archive: YES MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Usenet-Provider: http://www.giganews.com NNTP-Posting-Host: 108.68.179.43 X-Trace: sv3-FTm5LunUEVnt6jzR1axgd+Y3Th+SM7aLKF0HtbLVT3asCEMHzt/XOxRTyjJCExHCFLoRekGKYzTsnXU!f81Mr4dOScUnbuTXzViQTk6JdSmSdnGN+IFNrR3ZX6xkpdgc7YpQYnpF+pAwXD09xP+1tboVCcaC!w0avIIEi2d/PSfxoENG90R90j78= 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.40 X-Original-Bytes: 3151 Xref: reader02.eternal-september.org comp.lang.ada:52496 Date: 2018-05-20T10:21:26-04:00 List-Id: On Sun, 20 May 2018 03:53:18 -0700 (PDT), Mehdi Saada <00120260a@gmail.com> declaimed the following: >Hello. > >Is there somewhere such tutorial online ? Well... https://en.wikibooks.org/wiki/Ada_Style_Guide/Concurrency https://en.wikibooks.org/wiki/Ada_Programming/Tasking Though in truth, one should have some familiarity with general tasking concepts (semaphores, mutex, critical section) -- which used to be part of any course in Operating Systems. Mostly concerned with hard real-time: https://www.amazon.com/Concurrent-Real-Time-Programming-Alan-Burns/dp/0521866979/ref=sr_1_1?ie=UTF8&qid=1526825181&sr=8-1&keywords=alan+burns+ada https://www.amazon.com/Analysable-Real-Time-Systems-Programmed-Ada/dp/1530265509/ref=sr_1_2?ie=UTF8&qid=1526825220&sr=8-2&keywords=alan+burns+ada (hmm, time for a new book, methinks) https://www.amazon.com/Real-Time-Systems-Programming-Languages/dp/0201729881/ref=sr_1_3?ie=UTF8&qid=1526825302&sr=8-3&keywords=alan+burns+ada More general... https://www.adacore.com/papers/a-comparison-of-the-concurrency-and-real-time-features-of-ada-95-and-java https://www.amazon.com/Communicating-Sequential-Processes-International-Computing/dp/0131532715/ref=sr_1_1?s=books&ie=UTF8&qid=1526825540&sr=1-1&keywords=communicating+sequential+processes http://greenteapress.com/wp/semaphores/ (semaphores can be modeled in Ada using protected objects; though I seem to recall textbooks pre-Ada95 showing how to do them via rendezvous and tasks) >Something with the basic techniques, and the use of standard libraries ? Ada's tasking model is built into the language itself, and is not a library (except as affected by the degree of the run-time system and OS features -- bare-board development requires one to provide a run-time that supports tasking natively, whereas Linux/Windows development punts from the run-time to the OS). -- Wulfraed Dennis Lee Bieber AF6VN wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/