Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <20240607204550.319@kylheku.com>
Deutsch   English   Français   Italiano  
<20240607204550.319@kylheku.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Kaz Kylheku <643-408-1753@kylheku.com>
Newsgroups: comp.lang.c
Subject: Re: C23 thoughts and opinions
Date: Sat, 8 Jun 2024 03:55:19 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 55
Message-ID: <20240607204550.319@kylheku.com>
References: <v2l828$18v7f$1@dont-email.me>
 <87msoe1xxo.fsf@nosuchdomain.example.com> <v2sh19$2rle2$2@dont-email.me>
 <87ikz11osy.fsf@nosuchdomain.example.com> <v2v59g$3cr0f$1@dont-email.me>
 <v30l15$3mcj6$1@dont-email.me> <v30lls$3mepf$1@dont-email.me>
 <v30sai$3rilf$1@dont-email.me> <v320am$1km5$1@dont-email.me>
 <v33ggr$e0ph$1@dont-email.me> <v34bne$i85p$1@dont-email.me>
 <v3758s$14hfp$1@raubtier-asyl.eternal-september.org>
 <v38of2$1gsj2$1@dont-email.me> <v39v87$1n7bk$1@dont-email.me>
 <v3du4s$2febh$3@dont-email.me> <v3etlq$2o0sh$1@dont-email.me>
 <v3goqo$36n61$1@dont-email.me> <v3hehi$39s59$1@dont-email.me>
 <v3j5hm$3j4v3$6@dont-email.me> <v3k50b$3rdhi$2@dont-email.me>
 <v3lt74$48om$15@dont-email.me> <v3mu6f$ct28$4@dont-email.me>
 <v3og9d$pgpu$1@dont-email.me> <v3p6hp$sss0$1@dont-email.me>
 <v3r5u9$1au1k$1@dont-email.me> <v3svmh$1k8ck$1@dont-email.me>
 <v3tlp4$1o860$8@dont-email.me> <v3vtou$27sqi$1@dont-email.me>
 <20240607173657.984@kylheku.com> <v40b9s$29vsj$1@dont-email.me>
Injection-Date: Sat, 08 Jun 2024 05:55:19 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="14ad3386320bd8ff22d2e94d5fc7187a";
	logging-data="2593995"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19vKgET1UEDDyJLVOTFCqltMA9HQcvXtyE="
User-Agent: slrn/pre1.0.4-9 (Linux)
Cancel-Lock: sha1:O1K4gNvZN2+zdliFvX66EFyJm2k=
Bytes: 3774

On 2024-06-08, bart <bc@freeuk.com> wrote:
> On 08/06/2024 01:39, Kaz Kylheku wrote:
>> On 2024-06-07, bart <bc@freeuk.com> wrote:
>>> It's you who can't get your head around the idea that someone could be
>>> away with a 'linker'.
>> 
>> You can do away with linkers and linking.
>> 
>> But it's pretty helpful when
>> 
>> 1. the same library is reused for many programs.
>
> You use a shared library.

That's linking.

Static linking is the same thing as dynamic except it's being
precomputed: the libs are dynamically processed, but then rather
than the program being run, its image is dumped into an executable.
That executable no then longer needs to repeat that library processing
when started; everything is integrated. (There are ways to optimize
linking so not all the material must be present in memory all at once
as I describe it above.)

>> 2. you're selling a library, and would like to ship a binary image of
>> that library.
>
> You ship a shared library.

No, not always. There is such thing as selling static libraries.

Numerical code, crypto, codecs.

A few times in my career I worked with purchased static libs.

There are some advantages to it, like that static calls can be
faster than dynamic, and unused parts of static libs can be
removed at link time.

Another aspect is that it's possible for static libs to be
platform-independent, to an extent, because some of the
object formats like COFF are widely recognized. Whereas
shared libs tend to be very OS specific. The vendor has to make
them separately for Windows, Linux, Solaris, BSD, Mac, ...

This gruntwork is a pain in the ass that is removed from
the core value of your code.

The integrator who buys your static lib can turn it into a
shared lib for their target system, if they are so inclined.

-- 
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca