How programmers transition between languages
Russel Winder
russel at winder.org.uk
Thu Feb 1 12:19:48 UTC 2018
On Tue, 2018-01-30 at 11:55 +0000, rjframe via Digitalmars-d wrote:
> On Tue, 30 Jan 2018 10:38:31 +0000, Russel Winder wrote:
>
[…]
>
> Are you sure? Every project on my PC places the build files in
> $PROJECTDIR/.dub/build; the source is in ~/.dub/packages.
I see the source of the dependencies both in ~/.dub/packages and in the
project .dub directory, but I see the compilation products in
~/.dub/packages. There are every compiled version in obscure named sub-
directories and the last compiled (unknown compiler and options) in the
dependency directory.
Compilation seems to be only of .a and not (.so|.dll).
> That said, the name of the compiler is kept in the directory
> structure (as
> well as architecture and OS), which means there could be advantages
> to
> placing build artifacts globally, since compiler changes would still
> be
> separated, we get a reduction in disk usage and (sometimes) compile
> speed
> for already-built libraries.
In which case, why is there anything in the project directory at all.
Also the OS/compiler/options is all encoded in a very long and obscure
naming directory name, rather than a nice directory hierarchy. Chapel
made this switch and it improved everything a lot.
[…]
> This would be nice. I wonder though if the community is too small for
> this
> right now; remove the necessity of the central repository and it may
> die
> (I would say it's somewhat struggling as it is) -- and when it comes
> to
> finding libraries there are advantages to it that Github doesn't
> have.
I think not. The Rust experience is that the mixed economy of central
released and actively curated (though Rust hasn't quite got to that yet
sadly, there is a build up of crap just as happens with PyPI) and use
of Git repository HEADs works very well. The Go experience of not
having a central place, just the Git/Mercurial/Bazaar/Breezy
repositories leads to a lot of hassle, and thence to vendoring. Ceylon
as well as D only has the central repository and it can be very
annoying.
Having the central repo is a good thing, but having access to DVCS is
as well.
>
> > The Cargo repository is just nicer than the Dub repository.
>
>
> […]
Clearly there is debate to be had about the Cargo vs. Dub repositories,
I agree and disagree with the points you made, but that is for the Dub
forum I guess.
(I hate forums without email support, but I guess I could look at the
Dub forum from time to time.)
>
> > Cargo uses TOML project specifications, Dub uses JSON or SDL. Cargo
> > wins, Dub doesn't.
>
> Agreed.
Sadly I suspect there is no future in this point, the JSON/SDL fight
seems to have used up everyone's energy and moving to an actually good
format is not on the cards.
> […]
> Have you opened issues on the dub repository for the various problems
> you
> see?
Not as yet, but I guess I will have to overcome my abhorrence of
forums, and post to the Dub forum.
(Did I mention I really hate forums with no email interface. Probably.)
--
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/20180201/5ebbac78/attachment.sig>
More information about the Digitalmars-d
mailing list