How programmers transition between languages

Russel Winder russel at winder.org.uk
Fri Feb 2 14:04:09 UTC 2018


On Fri, 2018-02-02 at 10:03 +0000, Atila Neves via Digitalmars-d wrote:
> 
[…]
> Whether it's .a or .so depends on the dependent package being 
> `staticLibrary` or `dynamicLibrary`. It's possible for a package 
> to be both if it has a configuration for each.

I think that is one of my points, the package source downloaded from
the Dub repository should not be determining whether a .a or ,so is
produced, it should be determined by the receiver of the downloaded
package.

> Personally I don't even see the point - just link all the .o 
> files. In a traditional build system static libraries might be 
> useful to specify that multiple targets link to this particular 
> binary blob. With dub there's only ever one binary anyway.

But a static library is just a collection of .o files so I think it
fits with "link all the .o together".

It is clear that there is a move in the Go, Rust, D communities to
rejecting the concept of shared library, and that 100MB executables are
acceptable.

> And at this point in time I think shared libraries are mostly a 
> mistake. The only time I use them is when I have to, as in when 
> developing Python extensions.

The single biggest argument for shared libraries in D is GtkD. Linking
an executable with a static GtkD library takes ages, and when
developing you do a lot of linking. Fast turnaround, and thus
reasonable development times, requires use of a shared library for
GtkD.


-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20180202/50cc1292/attachment.sig>


More information about the Digitalmars-d mailing list