On Sunday, 4 January 2015 at 17:18:22 UTC, Iain Buclaw via Digitalmars-d wrote:
On 4 January 2015 at 14:50, Joakim via Digitalmars-d
<digitalmars-d@puremagic.com> wrote:
Annoyance also extends out to maintainers too (I could write a book about Where DMD went wrong? Some more of DMD's greatest mistakes, and
Just who is this DMD compiler anyway?)

I'd be interested in reading that, you should write it up somewhere.

Tell that to the most widely used open-source projects these days, ie hybrid projects like Android, iOS/OS X, llvm/clang, Chrome, etc. There are advantages to both the cathedral and the bazaar model, which is why it's best to mate the two, as has been done by the listed highly successful
software.


At least three of those projects I would see as anything but bazaar. :)

I'd say three are hybrids to varying degrees and iOS/OSX is largely cathedral nowadays, despite its bazaar BSD antecedents.

I was referring to patches from closed merging upstream.

One example would be, oh, DIP-25 being implemented in the closed
frontend - let's say Walter implemented it, then someone from the
community implements DIP-25 in a differing way and raises a PR a
couple months later. Should the PR be accepted? If it is should the
closed implementation be dropped?  Because of the closed nature
there's no way to compare which one is more technically sound than the
other.

There is no reason for the open source project to defer a PR because of closed patches that aren't available yet. Once the closed patches are opened, the two implementations can be merged for their best aspects.

This is what happened with the AArch64 backend for llvm recently: devs were working on an OSS backend and Apple developed their own closed one quicker and shipped it for the recent port of iOS to 64-bit. Later, Apple opened up their closed backend, and the two were merged. I believe they ended up going with the closed one and merging back pieces of the existing OSS one that they wanted.

There's also a question of timing too. Obviously such an undertaking shouldn't happen until the frontend switches to D, nor when there are
still plenty of visitor re-writes being done in the frontend.

I doubt either would preclude doing it now, as the closed patches would be continually rebased on the OSS frontend.

Was Walter selling a paid compiler with the then-closed dmd backend? If not, the comparison is not valid. The idea here is for paying customers to fund closed patches for a limited time, and speed up D bug-fixing and development much more. If Walter was not getting paid for his closed backend but only keeping it closed because of licensing issues, the
situations are completely different.


For me, the comparison is between these key timelines:

- No source code
- D1 Frontend released as Artistic/GPL
- Backend released under restricted license
- Moving to Github
- Creating a 'core' team
- Everyone (even Walter!) switching over to the PR patch
submission/review system
- Re-license Frontend as Boost

Each point over a 14 year history has been a step in the direction of being 'open' and each brought a boost in development. The number of changes between each release compared to back in 2.020 days is a clear
sign of this - as well as the three digit open PRs.

Your point seems to be that D moving from a one-man, closed project by Walter to an OSS project with several contributors greatly sped up its development. Nobody is disputing that.

The question is how to attain the next level of growth, speeding it up a lot more, and I think this hybrid approach will do that.

On Sunday, 4 January 2015 at 16:54:17 UTC, Martin Nowak wrote:
On 01/04/2015 09:31 AM, Joakim wrote:
I don't think anyone has an interest of closed patches.
Building a point release with the bug fixed might be of more interest.

That's merely a matter of packaging, there are several ways it can be done with the closed patches. Of course, initially only providing closed patches against the stable OSS point releases would be an easy way to start.

Reply via email to