Re: Compile-Time Sort in D
On Monday, 5 June 2017 at 14:23:34 UTC, Mike Parker wrote: The crowd-edited (?) blog post exploring some of D's compile-time features is now live. Thanks again to everyone who helped out with it. The blog: https://dlang.org/blog/2017/06/05/compile-time-sort-in-d/ Reddit: https://www.reddit.com/r/programming/comments/6fefdg/compiletime_sort_in_d/ Nice work, the reddit likes keep going up. Nothing new for D users, but by encapsulating CTFE in a bite-sized blog post, you've gotten some outsiders to pay attention. Just read perhaps the most ringing endorsement I've ever seen for D in the comments: "How do you explain that in D complex metaprogramming artifacts such as bitfields, regex engines, compile-time parser generators, checked integers, generic allocators, are readily available from a smaller community, when in C++ you need an article explaining what tricks to use to sort a list of integers at compile time?" https://www.reddit.com/r/programming/comments/6fefdg/comment/dijct48
Re: Snap packages for DMD and DUB
On Tuesday, 6 June 2017 at 14:27:40 UTC, Johan Engelen wrote: Have you thought about creating a `dtools` package with rdmd, dustmite, and ddemangle in it? They are useful for LDC and GDC too, perhaps people would like to be able to install them without needing to install DMD. (Perhaps the DMD/LDC/GDC package can automatically install such a "dtools" package?) Yes, I did consider this, and I may do it if there is an ongoing issue with `rdmd`. It might for example be possible to entirely disable confinement for such a dtools package, as a short term measure to avoid the current problems. I did have some discussion over the advisability of splitting up the `dmd` snap package in this discussion thread: https://lists.ubuntu.com/archives/snapcraft/2017-March/003645.html ... albeit I was coming at things from a slightly different angle there. The short version is, keeping everything in one snap might reduce the amount of duplication; but I'm not sure that it's a very big deal in any case. AFAIK snap packages don't have an equivalent of deb packages' "Recommends", but I can raise the issue. On a different note: does anyone have an interest in there being dmd versions available other than the most recent?
Re: Snap packages for DMD and DUB
On Monday, 8 May 2017 at 20:05:01 UTC, Joseph Rushton Wakeling wrote: The `dmd` package also contains `rdmd`, `dustmite` and `ddemangle`. Note that by default the snap package exposes these namespaced on the name of the package (i.e. `dmd.rdmd`, etc.). To avoid this, use the `snap alias` command: sudo snap alias dmd rdmd sudo snap alias dmd dustmite sudo snap alias dmd ddemangle Have you thought about creating a `dtools` package with rdmd, dustmite, and ddemangle in it? They are useful for LDC and GDC too, perhaps people would like to be able to install them without needing to install DMD. (Perhaps the DMD/LDC/GDC package can automatically install such a "dtools" package?) cheers, Johan
Re: Snap packages for DMD and DUB
On Tuesday, 6 June 2017 at 08:20:54 UTC, Piotr Mitana wrote: Hi, I got yet another error - this time Ubuntu 16.04 and rdmd. Failed to flush stdout: Permission denied Failed: ["dmd", "-v", "-o-", "main.d", "-I."] It seems like (despite classic confinement) apps ran by rdmd cannot print things on the screen... Yes, this is a known issue :-( It's related to how AppArmor is used by snapd, rather than anything in the package. See discussion here: https://forum.snapcraft.io/t/failed-to-flush-stdout-permission-denied/485 You can use a workaround, which is to explicitly point `rdmd` to the actual compiler binary rather than relying on $PATH: rdmd --compiler=/snap/dmd/current/bin/dmd or, instead of `rdmd --compiler=ldmd2`, try: rdmd --compiler=/snap/ldc2/current/bin/ldmd2 etc.
Yu(玉) - 0.1.0-b1 : COW String and Vector—— Dlang‘s Toolkit
Add COW string Rebuild Vector Use COW : when is the Value-type and struct don't hasElaborateAssign Use Deep-Copy : when hasElaborateAssign Disable copy: when is Ref-Type and Pointer Change async-socket all CallBack to nothrow Rm yu.array.IAppder add yu.traits.isRefType https://github.com/dushibaiyu/yu/releases/tag/v0.1.0-b1
Re: Release D 2.074.1
On 2017-06-05 23:38, Joseph Rushton Wakeling wrote: Yup, my instinct is that if a VERSION file needs to exist at all it should be created during the build process out of `git describe` output. It's used by DMD to build the version, that is, the output of "dmd --version". The content of the VERSION file embedded in the executable using "import()". I don't think that's possible to do in any other way. But the VERSION file should be generated when building and not be committed to the repository. For the archives I guess it needs to be generated and included in the archive since Git will not be available when building from an archive. -- /Jacob Carlborg
Re: Snap packages for DMD and DUB
On Monday, 8 May 2017 at 20:05:01 UTC, Joseph Rushton Wakeling wrote: Hello all, As announced at DConf 2017, snap packages are now available for DMD 2.074.0 and DUB 1.3.0 in the official snap store. These should allow for installation on multiple different Linux distros (see below) on i386 and amd64 systems. [...] Hi, I got yet another error - this time Ubuntu 16.04 and rdmd. Failed to flush stdout: Permission denied Failed: ["dmd", "-v", "-o-", "main.d", "-I."] It seems like (despite classic confinement) apps ran by rdmd cannot print things on the screen...