2nd Ada Developers Workshop
13 June 2025, Paris, France
Co-located with the 29th Ada-Europe International Conference on Reliable Software Technologies (AEiC 2025), June 10-13
As in its previous editions, the 2nd Ada Developers Workshop aims to create an informal yet dynamic platform for developers in the Ada community to meet, share insights, and present their latest projects or project updates, using the Ada programming language and Ada-related technology such as SPARK. The topics will range from community advocacy all the way to technical presentations. The focus of the Developers Workshop will be in topics and projects that are widely used within the community and which help grow the Ada pool of users and the quality of life of existing programmers.
AEiC 2025 is an ideal fit for an Ada Developers Workshop. On the one hand, it gives the general community an opportunity to see what is happening in the Ada world and how Ada can help to produce reliable and efficient open software. On the other hand, it gives Ada projects an opportunity to showcase themselves, get feedback and ideas, and attract participants to their project and collaboration between projects.
Normally, entrance to AEiC costs a bit of money, however, similar to last year, the organisers have indicated that the Ada Developers Workshop will have a substantially reduced entry fee. The workshop will be on Friday, which should be a more convenient day for visitors and speakers with regards to accommodation, traveling costs, taking some days off from work and having some extra time to visit Paris during the weekend.
Thanks to the generous support from AdaCore, Ada-Europe, Ada-France and Ada-Belgium, the first 20 in-person participants will only pay €25 for early registration or €35 for late registration; remote participants are required to register as well, but participation will be totally free.
Presentations & Schedule
We are pleased to present the list of presentations for the 2nd Ada Developers Workshop, held on Friday 13 June 2025 at the 29th Ada-Europe International Conference on Reliable Software Technologies (AEiC 2025).
The full-day program is packed with 8 technical presentations on various Ada-related topics and 10 authors from 5 countries: Belgium, France, Spain, Switzerland, and USA. All time slots include Q&A. There will be extra time for participant interactions in between talks, and during breaks and lunch.
-
09:00-09:10 (10 min.)
Fernando Oleo Blanco (Spain), Fabien Chouteau (France), Dirk Craeynest (Belgium)
"Welcome to the Ada Developers Workshop" - 09:15-10:00 (45 min.)
Stephane Carrez (France)
"Automating License Identification with SPDX-Tool in Ada"
Abstract: This presentation will introduce SPDX-Tool and detail its key functionalities, including: detecting the programming language of a source file, extracting license header text from the beginning of source files and matching licenses against a repository of over 600 license templates. Additionally, the talk will explore how SPDX-Tool leverages a custom Ada code generator to embed license templates and language detection rules. Finally, we will discuss the use of Ada tasks to parallelize the analysis, improving efficiency and scalability. Whether you're interested in Ada development, open-source compliance, or parallel processing, this session will provide insights into building robust, high-performance tools using modern Ada technologies.
Presenter: Graduated from ISEP (Paris) in 1990, Stéphane worked on real-time embedded systems as well as on high end application servers. Since 2000, Stéphane has also remained active in the Open Source community where he participated to the gcc, gdb and binutils development. Since 2009, he has created several Ada Open Source projects targeting embedded ARM boards as well as Linux servers. His interests include systems architecture, software design, security, performance and… coding.
- 10:05-10:30 (25 min.)
Fabien Chouteau (France)
"Property Based Testing in Ada: the Missing 10%"Abstract: Property-based testing aims to specify properties that should always hold true for your code and define strategies to randomly generate test cases to automatically verify these properties across a wide range of inputs. Ada natively supports most of the property-based testing principles; we will see how to add the missing part.
Presenter: Fabien is an embedded software engineer, who holds a master's degree in computer science from EPITA (Paris). He is involved in real-time, embedded and hardware simulation technology at AdaCore since 2010. Hacker/maker/DIYer in his spare time, his projects include electronics, music and woodworking.
-
10:30-11:00 (30 min.)
Break - 11:00-11:45 (45 min.)
Xavier Petit (France) and Stéphane Rivière (France)
"A KISS Ada GUI"Abstract: Presentation of a KISS Ada GUI included in a general-purpose framework named LibreFrame, with live demo and examples on Github. We developed the v20 framework that served as the foundation for our server cluster manager. Once again verifying the productivity gains offered by this mysterious language ahead of this time, we developed v22, with much broader ambitions, encompassing web development according to a philosophy that avoids the use of HTML/CSS hell, by defining, straight in the code, blocks and sub-blocks of graphic elements, the latter automatically arranging themselves on the screen according to the terminal used, from the 43“ workstation to the smallest 5” smartphone. The LibreFrame GUI is a new design to develop this type of application. It follows the KISS principle, covering most needs while drastically simplifying the developer's experience.
Presenter: Sowebio SARL - France is a company with two complementary activities. On one side, a multimedia web agency (web sites, graphics, marketing, printing) and, on the other, an IT engineering company (facilities management, server clustering, virtualized instances, saas, cloud escaping, industrial, management and embedded development and, at the end, electronic design including micro-controllers programming). A new trademark is coming to encompass and detail these very different activities, with a separate web site https://sowneo.com
- 11:45-12:30 (45 min.)
J. German Rivera (USA)
"Writing Embedded Ada Applications on Zephyr"Abstract: This presentation will demonstrate a "light-weight" approach to write embedded Ada applications on the Zephyr RTOS environment. Zephyr is an increasingly popular real-time operating system that supports a wide range of microcontrollers and boards and it is easily extensible to support custom SoCs and boards. To write an Ada application on Zephyr all what is needed is a standard bare-metal GNAT cross toolchain for the corresponding target and a minimal portable Ada runtime library. With the proposed approach, the Ada application is built as an Alire library crate, which is integrated in the zephyr build environment as an external CMake project. Ada bindings for Zephyr's C APIs are auto-generated from Zephyr header files using the gcc flag to generate Ada package specifications from C header files.
Presenter: J. German Rivera is a senior staff software engineer at Tesla, where he develops low-level embedded software for automotive system-on-chip platforms. He has 35 years of industry experience developing system-level software. He has also held software development positions at Google, NXP, Microsoft, Cisco, IBM, NetApp and HP. He holds a Master of Software Engineering degree from Carnegie Mellon University (USA) and a Bachelor's degree in Computer Science, from the University of Los Andes (Colombia). In his spare time, he writes Ada/SPARK embedded software for hobby projects, in which he also experiments with practical applications of formal methods.
-
12:30-14:00 (90 min.)
Lunch - 14:00-14:40 (40 min.)
Pascal Pignard (France)
"UXStrings: a Unicode and Dynamic Length String Library for Ada"Abstract: Ada brought the character arrays way, you can do almost every thing with them but mixing dynamic length with Unicode is a pain, requiring incessant conversions between fixed strings, unbounded strings, wide wide strings, etc. I largely experiment it with Gnoga apps. UXStrings is not a revolution: it is a step to bring to Ada a string concept with modern semantic that it implies as exemples:
S2 : UXStrings.UXString; -- ... S2 := "Received: " & From_UTF_8 (Message); -- or UXSL1 : constant UXStrings.Lists.UXString_List := ["Ada", "Strings", "Wide_Wide_Maps", "Wide_Wide_Constants", "Lower_Case_Map"]; -- ... UXS1 : constant UXStrings.UXString := UXSL1.Join ('-').To_Lower;
Presenter: Pascal Pignard started programming in Pascal as engineer in the aeronautic industry in the early 90's. He learned Ada for a new project in the air traffic control field. After discovering the deep coherence of Ada, he became an active Ada hobbyist: One of the Gnoga maintainers since the beginning (brought Unicode to Gnoga in version 2), ported GNAT Studio on macOS, created UXStrings: a proposal for dynamic and Unicode strings in Ada, created Qt-Ada bindings for Qt6, created Automate: an Ada finite-state machine generator, and created J2Ada: a Java to Ada translator.
- 14:45-15:30 (45 min.)
Gautier de Montmollin (Switzerland)
"Writing a Competitive BZip2 Encoder in Ada from Scratch in a Few Days"Abstract: BZip2 is a famous and powerful lossless data compression format. It is very good on some data, like English novels or computer source code. An outstanding aspect of BZip2 is its simplicity. No tricky hash trees or convoluted state machines. However, compression software is generally very difficult to debug, in part impossible. So it is better to do things right the first time and use a language that does its best finding errors before running your program. I show you how I built a working encoder in a few days by leveraging the precise and customisable type system in Ada, especially range types that seem to have been made for this kind of software.
Presenter: Gautier de Montmollin is a software developer. He holds a PhD in mathematics from the University of Neuchâtel, Switzerland. In his free time, he develops various software projects, mostly open-source.
-
15:30-16:00 (30 min.)
Break - 16:00-16:45 (45 min.)
Lionel Draghi (France)
"Using Natural Language for Test Specification, is That Really Wise?"Abstract: Designed for end-to-end testing of CLI applications, `bbt` stands out with its English-like scripting language, enabling the direct use of documentation as tests. This approach significantly speeds up development by bypassing test setup. The analysis of this documentation does not rely on a classic recursive descent parser but on a partial parsing technique. Partial parsing, also known as shallow parsing, focuses on identifying and analyzing specific segments within a sentence without constructing a complete parse tree. It offers several advantages, like a flexible and tolerant analysis for linguistic variations, letting the writer use natural sentences (especially when compared to a programming or domain specific language), or a generally less complex code. Partial parsing also presents challenges, particularly avoiding ambiguity, a dreaded flaw in software engineering especially for a testing application! This presentation is both a quick hands-on introduction to the tool and an illustration of partial parsing as implemented in `bbt`.
Presenter: Lionel spent the first 15 years of his career as a developer and software architect, including a decade at THALES Communications. He then transitioned into consulting, which occupied the latter half of his professional journey, but still develops free software in his spare time.
- 16:50-17:15 (25 min.)
Fabien Chouteau (France)
"Building a Mars Rover Demo with SPARK"Abstract: A journey through the process of creating a technology demo for trade shows.
Presenter: see above.
- 17:15-17:30+ (15+ min.)
Open Discussion and Closing Remarks
Call for Presentations
We would like to schedule technical presentations, tutorials, demos, live performances, project status reports, discussions, etc, in the Ada Developers Workshop.
Do you have a talk you want to give? Do you have a project you would like to present? Would you like to get more people involved with your project?
We're inviting proposals that are related to Ada software development, and include a technical oriented discussion. You're not limited to slide presentations, of course. Be creative. Propose something fun to share with people so they might feel some of your enthusiasm for Ada!
Speaking slots should be around 30 minutes. However, we may allow for some flexibility in order to fit lighting talks as well as longer tutorials, demonstrations and discussions. All presentations should reserve at least 5 minutes for Q&A, meaning that the content should, in principle, last up-to 25 minutes.
Note that all talks will be streamed live (audio+video). After the streaming of the talk, a live Q&A session will take place. By submitting a proposal, you agree to being recorded and streamed. You also agree that the contents of your talk will be published under the Creative Commons (CC-BY-SA 4.0) license. Submission of the slides (if any are used) will be a requirement.
Online presentations will also be accepted, however, preference will be given to speakers present in the venue. If you would like to give a online talk, you will be asked to do a pre-recording and submit it some time before AEiC starts in case the Internet connection does not work as expected.
Submission Guidelines
In order to submit a proposal for a talk, please, email the three organisers, Fernando, Fabien and Dirk (email down below) with the following information:
- your name, affiliation, contact info;
- the title of your talk (be descriptive and creative);
- a short descriptive and attractive abstract;
- potentially pointers to more information;
- a short bio and photo;
- indicate whether you will be presenting online or in person.
Take a look at programs of the previous Ada Developers Workshop [1] and recent Ada DevRooms held at FOSDEM [2] and [3-8] for presentation examples, as well as for the kind of info we need. Also, feel free to have discussions over at Ada-Lang's forum [9]!
Here is the slightly flexible schedule that we will follow:
- Sun April 6, 2025: end of the submission period. Remember, we only need the information in the list above. You do not have to submit the entire talk by this date. Try to submit your proposal as early as possible. It is better to submit half of the details early than all late, so do not wait for the last minute. If you are a bit late, submit it nonetheless and message irvise@irvise.xyz directly.
- Sun April 20, 2025: first announcement of accepted speakers and talks.
- Fri June 6, 2025: your slides should be uploaded.
- Fri June 13, 2025: 2nd Ada Developers Workshop day!
We look forward to lots of feedback and proposals!
Organizers
- Fernando Oleo Blanco, Libre Ada Software Aficionado, irvise@irvise.xyz
- Fabien Chouteau, AdaCore, chouteau@adacore.com
- Dirk Craeynest, Ada-Belgium & KU Leuven, dirk.craeynest@cs.kuleuven.be
Links
- [1] https://www.ada-europe.org/conference2024/adadev.html
- [2] https://fosdem.org
- [3] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/25/250202-fosdem.html
- [4] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/22/220206-fosdem.html
- [5] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/20/200201-fosdem.html
- [6] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/19/190202-fosdem.html
- [7] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/18/180203-fosdem.html
- [8] https://www.cs.kuleuven.be/~dirk/ada-belgium/events/16/160130-fosdem.html
- [9] https://forum.ada-lang.io/