On Monday, 25 January 2016 at 13:08:18 UTC, Rory McGuire wrote:
On Mon, Jan 25, 2016 at 2:46 PM, Andrei Alexandrescu via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> wrote:

On 01/25/2016 04:17 AM, Rory McGuire via Digitalmars-d-announce wrote:


Looking at the way we have things now, it would actually be quite simple to make two downloads, one with everything and one with the bare minimum.

If we changed phobos to compile like the recent vibe.d version does then we can even pick and choose sections of phobos. I suppose "he who has the vision" can do either type of release with our current tools.


What would be the benefits of this? My knee-jerk reaction is this is a large and disruptive project with no palpable benefits. -- Andrei


Yep, thats kind of what I was saying in the end. If someone wanted to they could make such a release independently.

I'm trying to hack on the compiler, personally I wish all those with the know how would put their efforts into documenting how the compiler works and what the different parts do, that way we could have more contributors.

+1 On lifetime management and tooling. I would like to see a lot of improvements for DCD also tools for refactoring would also be extremely useful.

As for splitting up everything into small packages, I don't think D is there yet. I am still new but I already found several libraries that I wanted to use that not follow the "official" D Style guide.

I would not want to include N different libraries that use N different coding styles. Look at Rust for example, you will find that pretty much every library uses the "official" style guide.

I think that is because it is mostly "enforced" by the compiler as a warning.

I really don't care how I write my code, but I care deeply about consistency.

Another point is that I couldn't find any metaprogramming library for D yet. Yes there is std.meta but it is extremely lacking, this is quite obvious if you look into the std.

For example in "zip"

return mixin (q{ElementType(%(.moveAt(ranges[%s], n)%|, %))}.format(iota(0, R.length)));

This could be easily expressed as a general metafunction. Also std.meta mostly focusses on compile time stuff but I don't think there is anything for a "Tuple".

Some inspiration could be found here https://github.com/boostorg/hana


Reply via email to