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.1 required=5.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail From: dirk@orka.cs.kuleuven.be. (Dirk Craeynest) Newsgroups: comp.lang.ada,fr.comp.lang.ada,comp.lang.misc Subject: FOSDEM 2020 - Ada Developer Room - Sat 1 Feb 2020 - Brussels Date: Sun, 22 Dec 2019 21:53:32 -0000 (UTC) Organization: Ada-Belgium, c/o Dept. of Computer Science, KU Leuven Message-ID: Injection-Date: Sun, 22 Dec 2019 21:53:32 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="c3b98711c476bfc932a2fa758e7c63d6"; logging-data="21277"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19L9DkOD7i8G7ze/lW1QAQ/EEDWI/CmJvU=" Summary: Once more, another full Ada day at FOSDEM in Brussels! Keywords: Ada,open source,free software,technical presentations,FOSDEM Cancel-Lock: sha1:bMqAyBlynl5xOI3/GFa9WxXO9hs= Originator: dirk@orka.cs.kuleuven.be. (Dirk Craeynest) Xref: reader01.eternal-september.org comp.lang.ada:57756 fr.comp.lang.ada:1818 comp.lang.misc:9518 Date: 2019-12-22T21:53:32+00:00 List-Id: ----------------------------------------------------------------------- Ada-Belgium is pleased to announce its 10th Ada Developer Room at FOSDEM 2020 Ada at the Free and Open source Software Developers' European Meeting on Saturday 1 February 2020 Université Libre de Bruxelles (ULB), Solbosch Campus, Room AW1.125 Avenue Franklin D. Roosevelt Laan 50, B-1050 Brussels, Belgium Organized in cooperation with Ada-Europe www.cs.kuleuven.be/~dirk/ada-belgium/events/20/200201-fosdem.html fosdem.org/2020/schedule/track/ada ----------------------------------------------------------------------- *** General Information FOSDEM, the Free and Open source Software Developers' European Meeting, is a free and non-commercial two-day weekend event organized early each year in Brussels, Belgium. It is highly developer-oriented and brings together 8000+ participants from all over the world. The goal is to provide open source developers and communities a place to meet with other developers and projects, to be informed about the latest developments in the open source world, to attend interesting talks and presentations on various topics by open source project leaders and committers, and to promote the development and the benefits of open source solutions. The 2020 edition takes place on Saturday 1 and Sunday 2 February. It is free to attend and no registration is necessary. In this edition, Ada-Belgium organizes once more a series of presentations related to the Ada Programming Language and Free or Open Software in a s.c. Developer Room. The "Ada DevRoom" at FOSDEM 2020 is held on the first day of the event, Saturday 1 February 2020. This year FOSDEM has a total of 13 Ada-related presentations by 12 authors from 8 countries! A mini-poster about the Ada DevRoom [1], as well as a one-page Call for Participation for the Ada DevRoom [2] is available; they can be used to help announce the event, and to give an idea about its scope. [1] www.cs.kuleuven.be/~dirk/ada-belgium/events/20/200201-fosdem-cfpart-poster.jpg [2] www.cs.kuleuven.be/~dirk/ada-belgium/events/20/200201-fosdem-cfpart-a4.pdf *** Ada Programming Language and Technology Ada is a general-purpose programming language originally designed for safety- and mission-critical software engineering. It is used extensively in air traffic control, rail transportation, aerospace, nuclear, financial services, medical devices, etc. It is also perfectly suited for open source development. Awareness of safety and security issues in software systems is ever increasing. Multi-core platforms are now abundant. These are some of the reasons that the Ada programming language and technology attracts more and more attention, among others due to Ada's support for programming by contract and for multi-core targets. The latest Ada language definition was updated early 2016. Work on new features is ongoing, such as improved support for fine-grained parallelism, and will result in a new Ada standard scheduled for 2021. Ada-related technology such as SPARK provides a solution for the safety and security aspects stated above. More and more tools are available, many are open source, including for small and recent platforms. Interest in Ada keeps further increasing, also in the open source community, and many exciting projects have been started. The Ada DevRoom aims to present the facilities offered by the Ada language (such as for object-oriented, multicore, or embedded programming) as well as some of the many exciting tools and projects using Ada. FOSDEM is an ideal fit for an Ada Developer Room. On the one hand, it gives the general open source community an opportunity to see what is happening in the Ada community and how Ada technology can help to produce reliable and efficient open source software. On the other hand, it gives open source Ada projects an opportunity to present themselves, get feedback and ideas, and attract participants to their project and collaboration between projects. *** Video/Volunteers This year as well, audio/video equipment and network facilities are provided by the FOSDEM organizers, to enable recording and live streaming all DevRoom presentations. Volunteers "man" that equipment during the day. After postprocessing the recordings, links to them are made available via the "More information" entry for each presentation. Additional volunteers to help with various logistic issues during the day are needed as well, such as monitoring room overflow and refusing entry when the room is too full, defragmenting the room in between presentations, helping speakers with microphone adjustments, monitoring the timeslots and warning speakers when they have to start or when they risk running out of time, as well as various practical issues that need to be handled ASAP when they occur. If you'd like to help, please get in touch (see below). *** Ada Developer Room Presentations (room: AW1.125, 76 seats) The presentations in the Ada DevRoom start after the opening FOSDEM keynotes. The program runs from 10:30 to 19:00. 10:00-10:30 - Arrival & Informal Discussions Feel free to arrive early, to start the day with some informal discussions while the set-up of the DevRoom is finished. 10:30-10:35 - Welcome to the Ada DevRoom by Dirk Craeynest - Ada-Belgium Welcome to the Ada Developer Room at FOSDEM 2020, which is organized by Ada-Belgium in cooperation with Ada-Europe. Ada-Belgium and Ada-Europe are non-profit organizations set up to promote the use of the Ada programming language and related technology, and to disseminate knowledge and experience into academia, research and industry in Belgium and Europe, resp. Ada-Europe has member-organizations, such as Ada-Belgium, in various countries, and direct members in many other countries. 10:35-11:20 - An Introduction to Ada for Beginning and Experienced Programmers - by Jean-Pierre Rosen - Adalog, France An overview of the main features of the Ada language, with special emphasis on those features that make it especially attractive for free software development. Ada is a feature-rich language, but what really makes Ada stand-out is that the features are nicely integrated towards serving the goals of software engineering. If you prefer to spend your time on designing elegant solutions rather than on low-level debugging, if you think that software should not fail, if you like to build programs from readily available components that you can trust, you should really consider Ada! 11:30-11:50 - HAC: the Compiler which will Never Become Big by Gautier de Montmollin - Ada-Switzerland In the Ada world, we are surrounded by impressive and professional tools that can handle large and complex projects. Did you ever dream of a tiny, incomplete but compatible system to play with? Are you too impatient, for developing small pieces of code, for long compile-bind-link-run cycles? Are you a beginner intimidated by project files and sophisticated tools? Then HAC (the HAC Ada Compiler, or the Hello-world Ada Compiler) is for you. HAC is a revival of the SmallAda project, which supported the "Pascal subset" plus tasking. 12:00-12:50 - Tracking Performance of a Big Application from Dev to Ops by Philippe Waroquiers - Eurocontrol, Belgium This talk describes how performance aspects of a big Air Traffic Flow Management mission critical application are tracked from development to operations. Tracking performance is needed when new functionality is added, to balance the additional services versus the resource increase needed. Measuring and tracking performance is also critical to ensure a new release can cope with the current or expected load. We will discuss various aspects such as which tools and techniques are used for performance tracking and measurements, what are the traps and pitfalls encountered for these activities. The application in question is using Ada, but most of the items discussed are not particularly Ada related. 13:00-13:20 - Cappulada: What we've Learned by Johannes Kliemann - Componolit, Germany Last year I presented Cappulada, a C++ binding generator for Ada that intended to overcome the shortcomings of existing solutions and to provide usable bindings even for complex C++ code. This year I want to show our conclusions on why automatic bindings between C++ and Ada are hard (if not impossible) and where existing solutions (including our own) fail. 13:30-13:50 - Programming ROS2 Robots with RCLAda - by Alejandro R. Mosteo - Centro Universitario de la Defensa, Spain The Robot Operating System (ROS) is one of the chief frameworks for service robotics research and development. The next iteration of this framework, ROS2, aims to improve critical shortcomings of its predecessor like deterministic memory allocation and real-time characteristics. RCLAda is a binding to the ROS2 framework that enables the programming of ROS2 nodes in pure Ada with seamless integration into the ROS2 workflow. 14:00-14:50 - Live Demo of Ada's Distribution Features by Jean-Pierre Rosen - Adalog, France Ada incorporates in its standard a model for distributed execution. It is an abstract model that does not depend on a particular kind of network or any other communication mean, and that preserves full typing control across partitions. This presentation briefly exposes the principles of Ada's distribution model, then shows the possibilities with life demos across different machines and operating systems. 15:00-15:20 - Writing Shared Memory Parallel Programs in Ada - by Jan Verschelde - University of Illinois at Chicago, USA Multitasked Newton's Method for Power Series Tasks in Ada are effective to speed up computations on multicore processors. In writing parallel programs we determine the granularity of the parallelism with respect to the memory management. We have to decide on the size of each job, the mapping of the jobs to the tasks, and on the location of the input and output data for each job. A multitasked Newton's method will show the effectiveness of Ada to speed up the computation of power series. This application belongs to the free and open source package PHCpack, a package to solve polynomial systems by polynomial homotopy continuation. 15:30-15:50 - Spunky: a Genode Kernel in Ada/SPARK by Martin Stein - Genode Labs, Germany The Genode OS framework is an open-source tool kit for building highly secure component-based operating systems scaling from embedded devices to dynamic desktop systems. It runs on a variety of microkernels like SeL4, NOVA, and Fiasco OC as well as on Linux and the Muen SK. But the project also features its own microkernel named "base-hw" written in C++ like most of the Genode framework. Spunky is a pet project of mine. Simply put it's an approach to re-implement the design of the "base-hw" kernel first in Ada and later in SPARK with the ultimate goal to prove its correctness. It is also an opportunity to learn how Genode can benefit from Ada and SPARK in general and promote the use of safety-oriented languages in the project. 16:00-16:50 - Alire: Ada Has a Package Manager - by Alejandro R. Mosteo - Centro Universitario de la Defensa, Spain, Pierre-Marie de Rodat and Fabien Chouteau - AdaCore, France Alire (Ada LIbrary REpository) is a package manager project for the Ada/SPARK community. The goal of a package manager is to facilitate collaboration within the community and to lower the barrier of entry for beginners. In this talk we will present the Alire project, what it can do for you and how you can contribute and give more visibility to your Ada/SPARK projects. We will also provide a tutorial to show how to use Alire to create a library and then publish it for others to use. 17:00-17:20 - Protect Sensitive Data with Ada Keystore by Stephane Carrez - Twinlife, France Storing passwords and secret configuration is a challenge for an application. Ada Keystore is a library that stores arbitrary content by encrypting them in secure keystore (AES-256, HMAC-256). The talk presents the project and shows how to use the Ada Keystore library to get or store secret information in a secure manner. The presentation explains how the Ada features such as types, protected types, tasks, pre/post conditions have helped during the development of this project. 17:30-17:50 - EUgen: a European Project Proposal Generator by Riccardo Bernardini - University of Udine, Italy Whoever wrote a research project proposal knows how much unnerving it can be. The actual project description (made of work packages, tasks, deliverable items, ...) has lots of redundancies and cross-references that makes its coherency as frail as a house of cards. For example, if the duration of a task is changed most probably you'll need to update the effort in person-months of the task and of the including work package; you must update the start date of depending tasks and the deliver date of any deliverable items; most probably also the WP efforts and length need update too; not to mention the need of updating all the summary tables (summary of efforts, deliverable, ..) and the GANTT too. Any small changes is likely to start a ripple of updates and the probability of forgetting something and getting an incoherent project description is large. Given the harsh competition in project funding, if your project is incoherent the probability of getting funded is nil. One day I got sick of this state of affair and I wrote my own project generator: 10k lines of Ada code that reads a non-redundant project description from a simple-format text file and produces a set of files ready to be imported in the proposal, GANNT chart included. The user can specify dependences between different items (e.g., this deliverable is produced at the end of this task, this milestone is reached when this deliverable is available, this task must begin after this other task...) and the program automatically computes all the dates. Both input parser and output processors are implemented using a plugin structure that makes it easy to write new parsers to read different formats or new output processors to produce output in different formats. Currently a parser for a simple ad-hoc format and an output processor that produces LaTeX files are provided; a new processor based on the template expander *protypo* is currently being implemented. Did I eat my own dog food? Well, yes, I did. I used it to write a proposal (still under evaluation) and it served me well. 18:00-18:20 - On Rapid Application Development in Ada by Tomasz Maluszycki - Poland In the Ada world we typically write mission critical software that just has to work, but in a way one could argue that a lot more software is mission critical than is usually admitted. What does it take to actually perform rapid application development in any language? Can we do it in Ada and why would we do so? A quick look into some language features that can be [ab]used for enabling quick development of 'just a prototype' - which, as practice shows is often deployed into production, usually without proper quality controls and predictable outcome. 18:30-18:50 - Ada-TOML: a TOML Parser for Ada by Pierre-Marie de Rodat AdaCore, France The world of generic structured data formats is full of contenders: the mighty XML, the swift JSON, the awesome YAML, ... Alas, there is no silver bullet: XML is very verbose, JSON is not convenient for humans to write, YAML is known to be hard to parse, and so on. TOML is yet another format whose goal is to be a good configuration language: obvious semantics, convenient to write and easy to parse in general-purpose programming languages. In this talk, I'll shortly describe the TOML format and show a few use cases in the real world. I'll then present the ada-toml library itself: its high-level architecture and examples. 18:50-19:00 - Informal Discussions & Closing Informal discussion on ideas and proposals for future events. *** More information on Ada Developer Room Speakers bios, pointers to relevant information, links to corresponding FOSDEM pages, etc., are available on the Ada-Belgium site at www.cs.kuleuven.be/~dirk/ada-belgium/events/20/200201-fosdem.html We invite you to attend some or all of the presentations: they will be given in English. Everybody interested can attend FOSDEM 2020; no registration is necessary. We hope to see many of you there! Dirk Craeynest, FOSDEM Ada DevRoom coordinator Dirk.Craeynest@cs.kuleuven.be (for Ada-Belgium/Ada-Europe/SIGAda/WG9) (V20191222.1)