Re: dmdcache
On Saturday, 25 April 2020 at 10:35:49 UTC, Stefan Koch wrote: On Saturday, 25 April 2020 at 10:17:50 UTC, Ali Çehreli wrote: A colleague of mine has written dmdcache which may be very useful for some projects: https://github.com/seeraven/dmdcache It drops our build time from 8 minutes to 45 seconds on a particular build environment for about half a dozen D programs, one of which ends up being a 2G executable! WAT! :) And the total cache size is 5.5G. Wow! This build is with dmd 2.084.1 and that one particular application uses tons of template instantiations most of which are in generated source code. If I remember correctly, 2.084.1 does not contain template symbol name improvements and that may be the reason for the large size. Enjoy! Ali The main problem with this is that it does not take string imports into account, (or does it ???, I don't see how it could ) Also the compilers output can depend on the timestamp at which the compilation was done. Yeah, doesn't look like it which means it might not be useful in projects that does a lot of compile-time stuff. There is no way to determine the import statements either as those themselves can be generated at compile-time. I can see this being useful for large projects that does not use CTFE but other than that I think it might just create subtle bugs because you won't immediately know that some part of your code didn't update and isn't working as intended because the code for it was imported from another file etc.
Re: Blog Post #0108: D-specific Stuff for GUI Programming IV
On Saturday, 25 April 2020 at 13:31:38 UTC, ag0aep6g wrote: * You're casting a `MyButton` to `MyButton*` in two places. That doesn't make sense. Cast to `void*` if you want to see the class reference as a pointer. * The text says "for() loop", but you're actually using `foreach` in the code. * If `newButton` "lasts the lifetime of the for() loop", then better declare it in the loop, not as a field of the class. * `return(index);` - Lose the parentheses. `return` is not a function. * You're converting `lastButtonID` from int to string and back to int. That's some pointless back-and-forth. Thanks for pointing all this out. I'll add these changes to my todo list.
Re: D IDE Dexed - v3.9.0
On 4/25/20 2:55 AM, Basile B. wrote: Despite of the mini drama last year I've continued developping dexed. The changelog since last announce here is a bit long, check https://gitlab.com/basile.b/dexed/-/releases for more information and get the releases (linux only). I'm glad to see you continuing this! -Steve
Re: Blog Post #0108: D-specific Stuff for GUI Programming IV
On 25.04.20 15:01, Ron Tarrant wrote: More about arrays and how they can help with programming GUIs and it's right over here: https://gtkdcoding.com/2020/04/25/0108-snippets-iv-arrays.html I don't follow your stuff, but I had a look at this one and a couple things stood out to me: * You're casting a `MyButton` to `MyButton*` in two places. That doesn't make sense. Cast to `void*` if you want to see the class reference as a pointer. * The text says "for() loop", but you're actually using `foreach` in the code. * If `newButton` "lasts the lifetime of the for() loop", then better declare it in the loop, not as a field of the class. * `return(index);` - Lose the parentheses. `return` is not a function. * You're converting `lastButtonID` from int to string and back to int. That's some pointless back-and-forth.
Blog Post #0108: D-specific Stuff for GUI Programming IV
More about arrays and how they can help with programming GUIs and it's right over here: https://gtkdcoding.com/2020/04/25/0108-snippets-iv-arrays.html
Re: DDOC generator Harbored-Mod - v0.3.4
On Saturday, 25 April 2020 at 08:36:40 UTC, 9il wrote: On Saturday, 25 April 2020 at 06:50:07 UTC, Basile B. wrote: [1] https://gitlab.com/basile.b/harbored-mod Note that I don't have access to the DUB registry to update the location so Ilya Y. if you read this maybe you can do that [2] ;). [2] https://code.dlang.org/packages/harbored-mod done thanks Ilya.
Re: dmdcache
On Saturday, 25 April 2020 at 10:17:50 UTC, Ali Çehreli wrote: A colleague of mine has written dmdcache which may be very useful for some projects: https://github.com/seeraven/dmdcache It drops our build time from 8 minutes to 45 seconds on a particular build environment for about half a dozen D programs, one of which ends up being a 2G executable! WAT! :) And the total cache size is 5.5G. Wow! This build is with dmd 2.084.1 and that one particular application uses tons of template instantiations most of which are in generated source code. If I remember correctly, 2.084.1 does not contain template symbol name improvements and that may be the reason for the large size. Enjoy! Ali Perhaps I'm being very dumb, but how does this differ from just using make?
Re: dmdcache
On Saturday, 25 April 2020 at 10:17:50 UTC, Ali Çehreli wrote: A colleague of mine has written dmdcache which may be very useful for some projects: https://github.com/seeraven/dmdcache It drops our build time from 8 minutes to 45 seconds Hey Ali, Did you also try with LDC's built-in object file caching (asm codegen caching) ? Cheers, Johan
Re: dmdcache
On Saturday, 25 April 2020 at 10:17:50 UTC, Ali Çehreli wrote: A colleague of mine has written dmdcache which may be very useful for some projects: https://github.com/seeraven/dmdcache It drops our build time from 8 minutes to 45 seconds on a particular build environment for about half a dozen D programs, one of which ends up being a 2G executable! WAT! :) And the total cache size is 5.5G. Wow! This build is with dmd 2.084.1 and that one particular application uses tons of template instantiations most of which are in generated source code. If I remember correctly, 2.084.1 does not contain template symbol name improvements and that may be the reason for the large size. Enjoy! Ali The main problem with this is that it does not take string imports into account, (or does it ???, I don't see how it could ) Also the compilers output can depend on the timestamp at which the compilation was done.
dmdcache
A colleague of mine has written dmdcache which may be very useful for some projects: https://github.com/seeraven/dmdcache It drops our build time from 8 minutes to 45 seconds on a particular build environment for about half a dozen D programs, one of which ends up being a 2G executable! WAT! :) And the total cache size is 5.5G. Wow! This build is with dmd 2.084.1 and that one particular application uses tons of template instantiations most of which are in generated source code. If I remember correctly, 2.084.1 does not contain template symbol name improvements and that may be the reason for the large size. Enjoy! Ali
Re: DDOC generator Harbored-Mod - v0.3.4
On Saturday, 25 April 2020 at 06:50:07 UTC, Basile B. wrote: [1] https://gitlab.com/basile.b/harbored-mod Note that I don't have access to the DUB registry to update the location so Ilya Y. if you read this maybe you can do that [2] ;). [2] https://code.dlang.org/packages/harbored-mod done
Re: LDC 1.21.0
On Fri, 2020-04-24 at 11:19 -0700, H. S. Teoh via Digitalmars-d- announce wrote: […] > > Awesome! > > Many thanks to the LDC team for the hard work to bring this awesome > compiler to us! Agreed. Very much agreed. Hopefully the Debian D packaging folks can be speedy getting this new version of LDC into Debian Sid. -- Russel. === Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Roadm: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk signature.asc Description: This is a digitally signed message part
D IDE Dexed - v3.9.0
Despite of the mini drama last year I've continued developping dexed. The changelog since last announce here is a bit long, check https://gitlab.com/basile.b/dexed/-/releases for more information and get the releases (linux only).
DDOC generator Harbored-Mod - v0.3.4
Harbored-Mod is a lesser known documentation generator for the D programming language. Since the last release several old bugs have been fixed. The location[1] has changed too. - added support for anchors via anchor.js - enum member attributes are displayed (they didn't exist when the soft was created). - comments for enum members were not displayed. - fix a problem when collapsing the TOC in index.html - the template param for typed and templated enum was not displayed. - empty headers were generated, which has been revealed by the addition of anchors. [1] https://gitlab.com/basile.b/harbored-mod Note that I don't have access to the DUB registry to update the location so Ilya Y. if you read this maybe you can do that [2] ;). [2] https://code.dlang.org/packages/harbored-mod