:: Re: [Dng] system scriptinng languag…
Top Page
Delete this message
Reply to this message
Author: T.J. Duchene
Date:  
CC: dng
Subject: Re: [Dng] system scriptinng language.
On Sat, 06 Dec 2014 07:00:53 +0000
chris <chris@???> wrote:

> A lot of people dismiss Lua out of hand, "oh its just some game kiddy
> scripters language"
>
> far from it!
>
> but I really can't see there being much need to choose a language for
> the fork, this is as far as I understand it a fork that’s as close to
> Debian without systemd


It's not really a discussion over choice, rather it's just a discussion
between peers over the subject.
>
> As people are seriously worried about ABI compatibility with udev
> (why?) I'd rather be building /everything/ from source and damn ABI
> compatibility... but hey wadda I know...


If you are building absolutely everything yourself from source using
one compiler, I would agree. However, in most instances, you are not.

The reason you would be concerned over ABI compatibility with udev or
with anything in a distribution for that matter, is "name mangling."

For the unfamiliar, name mangling occurs in a number of "modern"
languages as a way for the compiler to differentiate between functions
and operators that are overloaded. The names are actually
rearranged using symbol schemes the compiler when it renders the
actual binary object code. Should you decide to compile your apps with
a different compiler setup or with different header files than what you
compiled the rest if your system with, there is a chance that when the
OS tries to handle the result that the binaries will be either
completely or partially incompatible. If that happens, they can either
crash unexpectedly or exhibit bizarre behaviour.

C++ is a good example of this - it can't not use name mangling.  It is
one of the reasons that C is still the preferred language for system
code. C does not use name mangling, and libraries can be linked without
fear of the mangling issue.