Thread overview | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
October 18, 2016 gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
I have a friend who has started writing a library in D. Although I recommended that he should use a recent dmd or ldc, he thinks gdc is a better candidate because it's "available to the masses" through Linux distros similar to how gcc is. Although he has a good point, the gdc that came with his distro does not even support @nogc. Thoughts? Can you please tell him to change his mind! :p Ali |
October 18, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli | On Tuesday, 18 October 2016 at 23:02:28 UTC, Ali Çehreli wrote:
> I have a friend who has started writing a library in D.
>
> Although I recommended that he should use a recent dmd or ldc, he thinks gdc is a better candidate because it's "available to the masses" through Linux distros similar to how gcc is. Although he has a good point, the gdc that came with his distro does not even support @nogc.
>
> Thoughts? Can you please tell him to change his mind! :p
>
> Ali
That's not a very convincing argument IMO. DMD packages are available for download on this site. As I have learned the hard way, the experience isn't always the best when you rely on distro packagers. I once had to change distros because of a package maintainer that didn't care that things were broken. I would much rather rely on a project's own packages, because there is an incentive to make sure they work, they won't get abandoned, and the latest version is always available. There is no sense in which DMD is not available to the masses.
|
October 18, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli | On Tuesday, October 18, 2016 16:02:28 Ali Çehreli via Digitalmars-d wrote:
> I have a friend who has started writing a library in D.
>
> Although I recommended that he should use a recent dmd or ldc, he thinks gdc is a better candidate because it's "available to the masses" through Linux distros similar to how gcc is. Although he has a good point, the gdc that came with his distro does not even support @nogc.
>
> Thoughts? Can you please tell him to change his mind! :p
I don't know what the whole situation is with gdc right now, but clearly, they're seriously undermanned, because they're still at 2.066 and haven't managed to move to a version of the front-end that's written in D. You certainly _can_ use it, but I'd argue that it's way to old to even consider it. dmd 2.066.1 was released two years ago this month. So, gdc is old enough now that it's possible for a symbol in druntime or Phobos to have gone through the entire deprecation cycle from start to finish between the time that that version of druntime/Phobos was released and the upcoming release of dmd. D is _way_ more stable than it used to be, but it still changes at far too fast a pace for you not to have trouble if you're trying to use a two year old compiler. And when you consider stuff like code.dlang.org, it gets even worse, since a lot of that stuff works with only the most recent release or two of dmd (certainly, most projects don't try and maintain compatibility over more than that). So, if you insist on using gdc, you're pretty much cutting yourself off from a large portion of the existing D ecosystem.
I would love to see gdc finally get up-to-date and usable, but it's just way to old. And it's downright trivial to install dmd, making concerns about what's in your distro's repo kind of silly. With dmd, you can just take the zip/tar.xz file, decompress it, and add the appropriate bin directory from it to your PATH, and you're good to go. And there are packages for several distros as well if you want to use your package manager to install it that way (a few distros even have it in their repo). And I don't think that installing LDC is much harder. And looking at their site, it looks like several distros have LDC in their repos if you want to grab whatever version they have rather than installing the latest manually. So, if you want an alternative to dmd, LDC has been doing a good job of being up-to-date and is quite available.
Honestly, until gdc is able to be at least _close_ to up-to-date, I don't see any reason to use it. You're just causing yourself problems for no gain. I very much hope that the gdc maintainers will get whatever help they need and will finally be able to get gdc up-to-date one of these days soon, but until then, I wouldn't mess with it. And honestly, I find the fact that they're still stuck on 2.066.1 to be very concerning.
- Jonathan M Davis
|
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to bachmeier | On Tuesday, 18 October 2016 at 23:31:42 UTC, bachmeier wrote: > That's not a very convincing argument IMO. DMD packages are available for download on this site. As I have learned the hard way, the experience isn't always the best when you rely on distro packagers. I once had to change distros because of a package maintainer that didn't care that things were broken. I would much rather rely on a project's own packages, because there is an incentive to make sure they work, they won't get abandoned, and the latest version is always available. There is no sense in which DMD is not available to the masses. According to this page https://gdcproject.org/downloads/ there are only distro packages for Ubuntu, Debian, and Arch. If that's accurate, there really is no sense in which GDC is more available than DMD. |
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to bachmeier | Am Wed, 19 Oct 2016 00:07:12 +0000 schrieb bachmeier <no@spam.net>: > On Tuesday, 18 October 2016 at 23:31:42 UTC, bachmeier wrote: > > > That's not a very convincing argument IMO. DMD packages are available for download on this site. As I have learned the hard way, the experience isn't always the best when you rely on distro packagers. I once had to change distros because of a package maintainer that didn't care that things were broken. I would much rather rely on a project's own packages, because there is an incentive to make sure they work, they won't get abandoned, and the latest version is always available. There is no sense in which DMD is not available to the masses. > > According to this page > https://gdcproject.org/downloads/ > there are only distro packages for Ubuntu, Debian, and Arch. If > that's accurate, there really is no sense in which GDC is more > available than DMD. You'll have to check the distros themselves to get the full list. Usually, if the community is big enough, there will be one enthusiast that thinks this Dlang thing is cool and adds a package in some external package list. Gentoo: https://wiki.dlang.org/GDC#Linux_distribution_packages Mint: https://community.linuxmint.com/software/view/gdc-4.6 ... just google for "<distro> gdc" -- Marco |
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli | Am Tue, 18 Oct 2016 16:02:28 -0700 schrieb Ali Çehreli <acehreli@yahoo.com>: > I have a friend who has started writing a library in D. > > Although I recommended that he should use a recent dmd or ldc, he thinks gdc is a better candidate because it's "available to the masses" through Linux distros similar to how gcc is. Although he has a good point, the gdc that came with his distro does not even support @nogc. > > Thoughts? Can you please tell him to change his mind! :p > > Ali If he is starting right *now*, missing fixes or language enhancements will cause confusion when he asks questions on the newsgroup or on IRC. (But he has you for that, right?) Back in the days I would have opted for GDC, too. It didn't lag far behind and I had hopes that it would get merged into GCC for good, meaning it would become the de facto D compiler on GNU systems. Nowadays I also see the large version gap and that it still hasn't been merged into mainline GCC. On the other hand LDC subjectively offers a couple more D specific enhancements, like turning GC allocations into stack allocations in trivial cases or the long list of compiler flags. Also with the backend being a library it is more flexible in the context of updating the front-end independently from the backend, which fits Dlang's development cycle better IMO. I'd say start with DMD, as it comes practically free of dependencies and is the fastest compiler, which may be the most useful aspect when you start to learn the language and need to iterate often. -- Marco |
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli | Dne 19.10.2016 v 01:02 Ali Çehreli via Digitalmars-d napsal(a):
> I have a friend who has started writing a library in D.
>
> Although I recommended that he should use a recent dmd or ldc, he thinks gdc is a better candidate because it's "available to the masses" through Linux distros similar to how gcc is.
No, gdc is not part of gcc, so there is no difference between ldc or gdc (dmd has some license issue for some package maintainers). I have looked at top 10 linux distro at distrowatch.com and in every of them (excluding centos), there are packages for ldc and gdc, but in OpenSuse there is only ldc. So from that point ldc is much more available to the masses
|
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to bachmeier | On Wednesday, 19 October 2016 at 00:07:12 UTC, bachmeier wrote:
> According to this page
> https://gdcproject.org/downloads/
> there are only distro packages for Ubuntu, Debian, and Arch. If that's accurate, there really is no sense in which GDC is more available than DMD.
Yes it is. Installing gdc is just "apt install gdc" on Ubuntu without looking for any download sites.
|
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to qznc | On Wednesday, 19 October 2016 at 07:37:33 UTC, qznc wrote:
> On Wednesday, 19 October 2016 at 00:07:12 UTC, bachmeier wrote:
>> According to this page
>> https://gdcproject.org/downloads/
>> there are only distro packages for Ubuntu, Debian, and Arch. If that's accurate, there really is no sense in which GDC is more available than DMD.
>
> Yes it is. Installing gdc is just "apt install gdc" on Ubuntu without looking for any download sites.
That doesn't work if you're on Fedora, opensuse, or whatever new distro happens to be popular this week.
|
October 19, 2016 Re: gdc in Linux distros recommended? | ||||
---|---|---|---|---|
| ||||
Posted in reply to bachmeier | Dne 19.10.2016 v 12:05 bachmeier via Digitalmars-d napsal(a):
> On Wednesday, 19 October 2016 at 07:37:33 UTC, qznc wrote:
>> On Wednesday, 19 October 2016 at 00:07:12 UTC, bachmeier wrote:
>>> According to this page
>>> https://gdcproject.org/downloads/
>>> there are only distro packages for Ubuntu, Debian, and Arch. If that's accurate, there really is no sense in which GDC is more available than DMD.
>>
>> Yes it is. Installing gdc is just "apt install gdc" on Ubuntu without looking for any download sites.
>
> That doesn't work if you're on Fedora, opensuse, or whatever new distro happens to be popular this week.
Not true, as my previos comment mentioned almost every popular distro nowdays have ldc and gdc in repositories. But only few of them have dmd
|
Copyright © 1999-2021 by the D Language Foundation