I have uploaded to eiffel.org a new tutorial on concurrent programming with SCOOP:
https://www.eiffel.org/doc/solutions/SCOOP_tutorial
It corresponds to my ACM Webinar of November 15, which is available at https://learning.acm.org/webinars/coop.
The tutorial is hand-on: it goes with an example software system, a small simulated email client, which the reader is invited to download. The system has two versions. The first is sequential, meaning the user cannot download and read messages at the same time. The tutorial walks you through the transformation of the sequential version into a concurrent one. The transformation is actually very simple, consisting mostly of adding a few “separate” declarations and make the corresponding instructions also “separate”. In this process, the error messages of the compiler play a key role, guiding you step by step until you get a version that compiles – and, surprise!, also executes correctly.
(This general feature of Eiffel is probably not new to readers of this group: the type system and validity rules of Eiffel provide a systematic guide to getting things right, step by step, so that it is often the case that getting stuff to compile is harder than in other approaches – but then when it compiles it often is correct. Unless you like spending your nights with a debugger, better sweat over compilation than over an execution that runs but crashes or produces a mix of right and wrong results.)
Beyond corrections of any typos or oversights that I may have missed, the text should not change much.
SCOOP in my opinion is not used widely enough, including by Eiffel users, and I hope this tutorial helps spread the knowledge. There are many more SCOOP documents and examples at https://eiffel.org and http://cme.ethz.ch, but as far as I know this is the first hands-on, step-by-step introduction.
-- Bertrand Meyer
Dear Volkan,
Thank you very much! I will fix the text today.
-- BM
Fixed. I also corrected a few graphical pimples due to screen capture.
> should be "Consider the function i_th in VIEWER"
Wow! You actually read the code!
> It would be excellent to have a small tutorial ... using SCOOP in connection with EiffelVision and EiffelStore (preferably ABEL)
Just when I thought I was done. You are right, though.
-- BM
Dear Larry,
Thanks a lot!
For lack of time in the coming days I think I will leave things as they are for the moment. (If you want to edit the eiffel.org page to mention the github variant please go ahead.) I would gladly let you update the text but you would need to have FrameMaker.
-- BM
--
--
You received this message because you are subscribed to the Google Groups "Eiffel Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eiffel-users...@googlegroups.com.
Visit this group at https://groups.google.com/group/eiffel-users.
For more options, visit https://groups.google.com/d/optout.