<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>The Blog (Posts by Robert Cholay)</title><link>https://blog.systerel.fr/</link><description>Robert is one of our Ada expert at Systerel.</description><atom:link href="https://blog.systerel.fr/authors/robert-cholay.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2026 &lt;a href="mailto:contact@systerel.fr"&gt;Systerel&lt;/a&gt; </copyright><lastBuildDate>Mon, 15 Jun 2026 14:33:51 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Les objets protégés en Ada</title><link>https://blog.systerel.fr/posts/2026-02/objets-prot%C3%A9g%C3%A9s-en-ada/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="figure "&gt;&lt;a href="https://blog.systerel.fr/images/adaloverace.jpg" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adaloverace.thumbnail.jpg" class="float-right"&gt;&lt;/a&gt;&lt;p class="caption"&gt;&lt;small&gt;(Image générée par IA)&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Dans un article précédent, &lt;a href="https://blog.systerel.fr/fr/posts/2026-01/taches-et-rendez-vous-en-ada/"&gt;Tâches et rendez-vous en Ada&lt;/a&gt;, nous
avions présenté succinctement ce qu'était le &lt;em&gt;tasking&lt;/em&gt; Ada et plus
particulièrement le mécanisme de &lt;em&gt;rendez-vous&lt;/em&gt;. Le fait que des tâches
puissent s'exécuter en parallèle implique qu'elles puissent aussi
accéder de façon concurrente à une donnée. Si nous n'y prenons pas
garde, cette donnée peut alors devenir incohérente.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2026-02/objets-prot%C3%A9g%C3%A9s-en-ada/"&gt;Read more…&lt;/a&gt; (7 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2026-02/objets-prot%C3%A9g%C3%A9s-en-ada/</guid><pubDate>Fri, 20 Feb 2026 17:43:18 GMT</pubDate></item><item><title>Tâches et rendez-vous en Ada</title><link>https://blog.systerel.fr/posts/2026-01/taches-et-rendez-vous-en-ada/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="figure "&gt;&lt;a href="https://blog.systerel.fr/images/adardv.jpg" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adardv.thumbnail.jpg" class="float-right"&gt;&lt;/a&gt;&lt;p class="caption"&gt;&lt;small&gt;(www.pexels.com, licensed under PDM)&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Le &lt;em&gt;tasking&lt;/em&gt; Ada offre la possibilité d'exécuter des portions de code de
façon indépendante et au sein d'un même programme. Ce paradigme de la
programmation concurrente permet à plusieurs tâches d'être exécutées
simultanément ou de manière entrelacée.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2026-01/taches-et-rendez-vous-en-ada/"&gt;Read more…&lt;/a&gt; (6 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2026-01/taches-et-rendez-vous-en-ada/</guid><pubDate>Fri, 09 Jan 2026 17:43:18 GMT</pubDate></item><item><title>Ada pêche aux moules</title><link>https://blog.systerel.fr/posts/2025-10/ada-peche-aux-moules/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/adageneric/bottes.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adageneric/bottes.thumbnail.png" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Le langage Ada offre, aux travers de la généricité, un mécanisme
puissant permettant de créer des unités (sous-programmes ou paquetages)
pouvant être utilisées avec différents types de données. Ce mécanisme
permet d'avoir un code réutilisable, flexible et maintenable.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2025-10/ada-peche-aux-moules/"&gt;Read more…&lt;/a&gt; (9 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2025-10/ada-peche-aux-moules/</guid><pubDate>Fri, 10 Oct 2025 08:01:46 GMT</pubDate></item><item><title>L'IA ou l'Intelligence de l'Ada</title><link>https://blog.systerel.fr/posts/2025-06/lia-ou-lintelligence-de-lada/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="figure "&gt;&lt;a href="https://blog.systerel.fr/images/ia-ada.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/ia-ada.thumbnail.png" class="float-right"&gt;&lt;/a&gt;&lt;figcaption&gt;Image générée par une IA&lt;/figcaption&gt;&lt;/div&gt;
&lt;p&gt;Un Adaiste convaincu vous dirait que le langage Ada est le « meilleur »
des langages de programmation. Cela est bien évidemment faux, car le
« meilleur » langage de programmation n'existe tout simplement pas et
n'existera jamais. Chaque langage a ses qualités et ses défauts, et le
choix du langage dépend en grande partie du projet dans lequel il est
mis en œuvre.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2025-06/lia-ou-lintelligence-de-lada/"&gt;Read more…&lt;/a&gt; (4 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2025-06/lia-ou-lintelligence-de-lada/</guid><pubDate>Mon, 30 Jun 2025 08:59:33 GMT</pubDate></item><item><title>Comment tirer la couverture à soi</title><link>https://blog.systerel.fr/posts/2025-04/comment-tirer-la-couverture-a-soi/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/couverture/adacouverture.jpg" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/couverture/adacouverture.thumbnail.jpg" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;L'objectif de cet article est de donner quelques éléments sur ce qu'est
la couverture de code, ce qu'elle apporte, ses différentes formes et
dans quel cadre il est nécessaire de la mettre en œuvre.&lt;/p&gt;
&lt;p&gt;Même si les exemples seront basés sur du code Ada, ils peuvent aussi
s'appliquer à bien d'autres langages de programmation.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2025-04/comment-tirer-la-couverture-a-soi/"&gt;Read more…&lt;/a&gt; (6 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2025-04/comment-tirer-la-couverture-a-soi/</guid><pubDate>Fri, 25 Apr 2025 10:44:12 GMT</pubDate></item><item><title>Ada-mantium ou comment avoir une application fiable et sûre</title><link>https://blog.systerel.fr/posts/2025-01/ada-mantium-ou-comment-avoir-une-application-fiable-et-sure/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/adamantium.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adamantium.thumbnail.png" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;L'adamantium est un &lt;a href="https://fr.wikipedia.org/wiki/Alliage"&gt;métal&lt;/a&gt;
imaginé par &lt;a href="https://fr.wikipedia.org/wiki/Marvel_Comics"&gt;Marvel Comics&lt;/a&gt;
et décrit comme étant le &lt;a href="https://fr.wikipedia.org/wiki/Mat%C3%A9riau_superdur"&gt;plus
résistant&lt;/a&gt; de tous
les métaux…&lt;/p&gt;
&lt;p&gt;Et si on mettait de « l'Ada-mantium » dans nos applications ?!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2025-01/ada-mantium-ou-comment-avoir-une-application-fiable-et-sure/"&gt;Read more…&lt;/a&gt; (3 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2025-01/ada-mantium-ou-comment-avoir-une-application-fiable-et-sure/</guid><pubDate>Mon, 13 Jan 2025 10:44:12 GMT</pubDate></item><item><title>A$_{da}$ la régulière</title><link>https://blog.systerel.fr/posts/2024-06/ada-la-reguliere/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/adaregex/007.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adaregex/007.thumbnail.png" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Le langage Ada est, par construction, contraint et il n'est par exemple
pas aisé de &lt;em&gt;parser&lt;/em&gt; facilement des chaînes de caractères.&lt;/p&gt;
&lt;p&gt;Même si l'environnement Ada offre des services intéressants, il faut
bien avouer que la possibilité d'utiliser des expressions régulières
serait un plus.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2024-06/ada-la-reguliere/"&gt;Read more…&lt;/a&gt; (1 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2024-06/ada-la-reguliere/</guid><pubDate>Thu, 20 Jun 2024 11:02:58 GMT</pubDate></item><item><title>TermiNA</title><link>https://blog.systerel.fr/posts/2024-05/termina/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/termina/terminal.jpg" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/termina/terminal.thumbnail.jpg" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dans le cadre d'un portage Ada que nous avons réalisé pour un de nos
clients, et en accord avec ce dernier, nous avons reconsidéré la façon
dont l'application originelle en mode console gérait les traces et les
logs.&lt;/p&gt;
&lt;p&gt;Le système de traces et de logs souffrait des limitations suivantes :&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2024-05/termina/"&gt;Read more…&lt;/a&gt; (4 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2024-05/termina/</guid><pubDate>Thu, 23 May 2024 16:06:33 GMT</pubDate></item><item><title>INI-tiation</title><link>https://blog.systerel.fr/posts/2024-04/ini-tiation/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;a href="https://blog.systerel.fr/images/adainit/ini.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/adainit/ini.thumbnail.png" class="float-right"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Configurer un logiciel peut se faire de différentes façons. La première
est, par exemple, d'utiliser des options sur la ligne de commande. Cela
se fait au travers du paquetage &lt;code&gt;Ada.Command_Line&lt;/code&gt; ou encore plus
simplement au travers du paquetage &lt;code&gt;GNAT.Command_Line&lt;/code&gt; qui permet de
définir et de traiter simplement les options d'une ligne de commande.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2024-04/ini-tiation/"&gt;Read more…&lt;/a&gt; (3 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2024-04/ini-tiation/</guid><pubDate>Wed, 10 Apr 2024 12:36:44 GMT</pubDate></item><item><title>Comment voir la matrice ?</title><link>https://blog.systerel.fr/posts/2024-01/comment-voir-la-matrice/</link><dc:creator>Robert Cholay</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="figure float-right"&gt;&lt;a href="https://blog.systerel.fr/images/matrix/matrix.png" class="image-reference"&gt;&lt;img src="https://blog.systerel.fr/images/matrix/matrix.thumbnail.png"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;&lt;a href="https://rosettacode.org/wiki/Matrix_digital_rain"&gt;https://rosettacode.org/wiki/Matrix_digital_rain&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;L'objet de cet article est de montrer au travers d'un exemple complet
quelques évolutions apportées par le langage Ada₂₀₂₂. Nous allons
faire ici un bref focus sur :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;La généralisation de l'attribut &lt;code&gt;'Image&lt;/code&gt;,&lt;/li&gt;
&lt;li&gt;Les nouveaux types d'agrégats pour les tableaux,&lt;/li&gt;
&lt;li&gt;Une utilisation des « Bigs Numbers ».&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://blog.systerel.fr/posts/2024-01/comment-voir-la-matrice/"&gt;Read more…&lt;/a&gt; (5 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><guid>https://blog.systerel.fr/posts/2024-01/comment-voir-la-matrice/</guid><pubDate>Mon, 08 Jan 2024 09:54:36 GMT</pubDate></item></channel></rss>