comp.lang.ada
 help / color / mirror / Atom feed
* tutorial for concurrent programming techniques (in Ada).
@ 2018-05-20 10:53 Mehdi Saada
  2018-05-20 14:21 ` Dennis Lee Bieber
  2018-05-22 14:25 ` Olivier Henley
  0 siblings, 2 replies; 12+ messages in thread
From: Mehdi Saada @ 2018-05-20 10:53 UTC (permalink / raw)


Hello.

Is there somewhere such tutorial online ?
Something with the basic techniques, and the use of standard libraries ?
I'm at my first scheduling program, and I'm always telling myself "I would like to do that and that, I saw it somewhere but I've no clue how to do it". Things that are complicated per se, but beginners would gain to see gathered.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-20 10:53 tutorial for concurrent programming techniques (in Ada) Mehdi Saada
@ 2018-05-20 14:21 ` Dennis Lee Bieber
  2018-05-20 14:50   ` Simon Wright
  2018-05-22 14:25 ` Olivier Henley
  1 sibling, 1 reply; 12+ messages in thread
From: Dennis Lee Bieber @ 2018-05-20 14:21 UTC (permalink / raw)


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/ 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-20 14:21 ` Dennis Lee Bieber
@ 2018-05-20 14:50   ` Simon Wright
  0 siblings, 0 replies; 12+ messages in thread
From: Simon Wright @ 2018-05-20 14:50 UTC (permalink / raw)


Dennis Lee Bieber <wlfraed@ix.netcom.com> writes:

> 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)

Or you could do without tasking, either via total bare-metal work like
Maciej Sobczak's http://www.inspirel.com/articles/Ada_On_Cortex.html, or
using an AdaCore 'zero footprint' runtime.

Or you could build a tasking runtime over something like FreeRTOS.

AdaCore had (probably still have) a full runtime built over VxWorks.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-20 10:53 tutorial for concurrent programming techniques (in Ada) Mehdi Saada
  2018-05-20 14:21 ` Dennis Lee Bieber
@ 2018-05-22 14:25 ` Olivier Henley
  2018-05-23  9:58   ` Mehdi Saada
  1 sibling, 1 reply; 12+ messages in thread
From: Olivier Henley @ 2018-05-22 14:25 UTC (permalink / raw)


On Sunday, May 20, 2018 at 6:53:19 AM UTC-4, Mehdi Saada wrote:
> Hello.
> 
> Is there somewhere such tutorial online ?
> Something with the basic techniques, and the use of standard libraries ?
> I'm at my first scheduling program, and I'm always telling myself "I would like to do that and that, I saw it somewhere but I've no clue how to do it". Things that are complicated per se, but beginners would gain to see gathered.

Not a tutorial per se, but this is an !AWESOME! read:

Concurrent and Real-Time Programming in Ada

You can find it used for 45$ on abebooks:
https://www.abebooks.com/servlet/BookDetailsPL?bi=22614371303&searchurl=isbn%3D0521866979%26sortby%3D17&cm_sp=snippet-_-srp1-_-title1

From what I covered this one also is great. I have not finished it yet...

Building Parallel, Embedded, and Real-Time Applications with Ada (Covers PolyORB, for distributed programming):

https://www.abebooks.com/servlet/BookDetailsPL?bi=20998811506&searchurl=isbn%3D0521197163%26sortby%3D17&cm_sp=snippet-_-srp1-_-title1

Definitely the first one. You will greatly cover tasks, protected objects and real-time scheduling. All along it exemplify how to program different systems like worker pool, futures etc. Worth every penny.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-22 14:25 ` Olivier Henley
@ 2018-05-23  9:58   ` Mehdi Saada
  2018-05-23 13:43     ` Dennis Lee Bieber
                       ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Mehdi Saada @ 2018-05-23  9:58 UTC (permalink / raw)


I wanted to buy the second but it's available for kindle model, and I can't install kindle on my computer because of linux. F$%kin' Amazon, really. I never had to complain about them, but this time !
Being of the same people, I've been supposing the second book covers the first ?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-23  9:58   ` Mehdi Saada
@ 2018-05-23 13:43     ` Dennis Lee Bieber
  2018-05-23 17:30     ` Olivier Henley
  2018-05-23 23:10     ` stumptroll
  2 siblings, 0 replies; 12+ messages in thread
From: Dennis Lee Bieber @ 2018-05-23 13:43 UTC (permalink / raw)


On Wed, 23 May 2018 02:58:32 -0700 (PDT), Mehdi Saada <00120260a@gmail.com>
declaimed the following:

>I wanted to buy the second but it's available for kindle model, and I can't install kindle on my computer because of linux. F$%kin' Amazon, really. I never had to complain about them, but this time !
>Being of the same people, I've been supposing the second book covers the first ?

	
	If you've been looking via Amazon, you could (at least in the US) use
the "Look Inside" feature to compare the Table of Contents.

	C&RT focuses on some of the more esoteric features of Ada (one chapter
just on "rendezvous" followed by one on using "select", a chapter just on
"requeue", two chapters on scheduling).

	BPERT is more generic; a chapter for protected objects, a chapter for
rendezvous, chapter on distributed systems.


-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
	wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/ 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-23  9:58   ` Mehdi Saada
  2018-05-23 13:43     ` Dennis Lee Bieber
@ 2018-05-23 17:30     ` Olivier Henley
  2018-05-23 23:10     ` stumptroll
  2 siblings, 0 replies; 12+ messages in thread
From: Olivier Henley @ 2018-05-23 17:30 UTC (permalink / raw)


On Wednesday, May 23, 2018 at 5:58:34 AM UTC-4, Mehdi Saada wrote:
> I wanted to buy the second but it's available for kindle model, and I can't install kindle on my computer because of linux. F$%kin' Amazon, really. I never had to complain about them, but this time !
> Being of the same people, I've been supposing the second book covers the first ?

The first book goes deeper about concurrency and scheduling. ~300p on concurrency and ~150p on scheduling. (Alan Burns and Andy Wellings)

The second book is ~100p to present the Ada itself (type model, oop etc), ~100p for concurrency, ~100p for distributed computing (PolyORB, Corba, etc) and finally ~100p for real-time and scheduling. (John W. McCormick, Frank Singhoff, Jerome Hugues)

Note: It looks to me they are not the same people.

Best is to buy both. They are very neat book and inspire to do everything using Ada. :)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-23  9:58   ` Mehdi Saada
  2018-05-23 13:43     ` Dennis Lee Bieber
  2018-05-23 17:30     ` Olivier Henley
@ 2018-05-23 23:10     ` stumptroll
  2018-05-23 23:30       ` Olivier Henley
  2 siblings, 1 reply; 12+ messages in thread
From: stumptroll @ 2018-05-23 23:10 UTC (permalink / raw)


On Wednesday, May 23, 2018 at 9:58:34 PM UTC+12, Mehdi Saada wrote:
> I wanted to buy the second but it's available for kindle model, and I can't install kindle on my computer because of linux. F$%kin' Amazon, really. I never had to complain about them, but this time !
> Being of the same people, I've been supposing the second book covers the first ?

Prometheus comes to rescue... Here you go, enjoy:
http://libgen.io/search.php?req=real-time+ada&lg_topic=libgen&open=0&view=simple&res=25&phrase=1&column=def


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-23 23:10     ` stumptroll
@ 2018-05-23 23:30       ` Olivier Henley
  2018-05-24 11:52         ` Mehdi Saada
  0 siblings, 1 reply; 12+ messages in thread
From: Olivier Henley @ 2018-05-23 23:30 UTC (permalink / raw)


ok but if I may... as a reminder:

To buy the book is to support both the authors and the publisher for their great work. 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-23 23:30       ` Olivier Henley
@ 2018-05-24 11:52         ` Mehdi Saada
  2018-05-24 17:59           ` Mehdi Saada
  2018-05-28 13:47           ` Olivier Henley
  0 siblings, 2 replies; 12+ messages in thread
From: Mehdi Saada @ 2018-05-24 11:52 UTC (permalink / raw)


I mixed up names, sorry.
Wait... what ? Hard to believe this repository is even legal. Those books ain't that old yet !
I respect these authors, but I'm a poor student, without scholarship, no personal income, and I even had to rely on a lover's generosity to get the spark intro and Barnes book. For sure I'll support them as soon as possible.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-24 11:52         ` Mehdi Saada
@ 2018-05-24 17:59           ` Mehdi Saada
  2018-05-28 13:47           ` Olivier Henley
  1 sibling, 0 replies; 12+ messages in thread
From: Mehdi Saada @ 2018-05-24 17:59 UTC (permalink / raw)


You were right, the first book is a gem, even the style of writing appeals me a lot. It seems clearer, closer to the Ada programmer's need, while the other spends seems (more) bent on selling the language to newcomers.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: tutorial for concurrent programming techniques (in Ada).
  2018-05-24 11:52         ` Mehdi Saada
  2018-05-24 17:59           ` Mehdi Saada
@ 2018-05-28 13:47           ` Olivier Henley
  1 sibling, 0 replies; 12+ messages in thread
From: Olivier Henley @ 2018-05-28 13:47 UTC (permalink / raw)


I remember those days, struggling with all the expenses while having very few income. :)
 

   


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2018-05-28 13:47 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-20 10:53 tutorial for concurrent programming techniques (in Ada) Mehdi Saada
2018-05-20 14:21 ` Dennis Lee Bieber
2018-05-20 14:50   ` Simon Wright
2018-05-22 14:25 ` Olivier Henley
2018-05-23  9:58   ` Mehdi Saada
2018-05-23 13:43     ` Dennis Lee Bieber
2018-05-23 17:30     ` Olivier Henley
2018-05-23 23:10     ` stumptroll
2018-05-23 23:30       ` Olivier Henley
2018-05-24 11:52         ` Mehdi Saada
2018-05-24 17:59           ` Mehdi Saada
2018-05-28 13:47           ` Olivier Henley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox