:: Re: [DNG] Good thing we don't use s…
Top Page
Delete this message
Reply to this message
Author: Steve Litt
Date:  
To: dng
Subject: Re: [DNG] Good thing we don't use systemd
Didier Kryn said on Fri, 3 Apr 2026 15:35:54 +0200

>Le 03/04/2026 à 11:23, Kevin Chadwick via Dng a écrit :
>>
>> -------- Original Message --------
>>
>>> which uses assert for invarant checks in the context of the init
>>> process. Should these asserts ever trigger, they'll stop the
>>> program via abort which will cause a kernel panic because init is
>>> special can just exit in case of a runtime error. But why would
>>> people programming in the context of init take that into account?
>> Ada SPARK would be a great choice of language for pid 1 actually. As
>> you could I guess quite easily prove it to Silver level and be sure
>> it could never crash (AORE; absence of runtime errors).
>>
>     Ada is really made for large or complex applications. OTOH, I
> don't
>think pid 1 should be complex. There are versions of init written in C
>which are so tiny that almost everybody with a basic knowledge of the
>language can review, and of course the most brilliant programmers do.
>This makes a lot of reviewers. This is the main problem with systemd:
>the size and the complexity; of course it is worsened because it is
>written in C, and , why not C++.


Answering "why not C++", my answer would be that C++ is a trash
language with more "many ways to do it" than even Perl.

I don't think Ada programs are required to be big. Rewriting Rich
Felker's 16 line C language init in Ada Spark would be a good
beginning. Making a runit clone with Ada Spark would probably be
unnecessary, but then again, might be a cool thing to do.

I don't think anybody here has the desire to write a
supercomplexificated init system: We already have one of those, thanks
to our friend Mr. Poettering and his Redhat and Microsoft overlords.

SteveT

Steve Litt

http://444domains.com