Errors compiling DSSS

Dan dbdavidson at yahoo.com
Fri Nov 30 09:49:02 PST 2012


On Friday, 30 November 2012 at 17:12:10 UTC, Rob T wrote:
> On Friday, 30 November 2012 at 08:05:25 UTC, Jacob Carlborg 
> wrote:
>> That's the exact same thing as I'm proposing, except it's the 
>> compiler handling it.
>
> Which would be better because it is integrated and not an 
> external tool.
>

Why would it be better and why would you care one way or the 
other? Some people are pointing out that integration of features 
related to code, but that are not actual code is not necessarily 
desirable (e.g. comment processing). Many of us use git, so why 
don't we have dmd do our diffs against the git repository for us 
as well? Hyperbole, but what happened to the single 
responsibility principle? Let the compiler do its thing, compile 
- but let a more knowledgeable entity than the source give it its 
flags.

What I don't understand is how the writer of source would know 
how it is to be built everywhere and in every way a client might 
want it. They probably wouldn't - so leave the description of 
that out of the source entirely.

When rdmd does work for the simple case, you would not complain: 
well this stinks having to type rdmd instead of dmd. No, you'd 
use it and be happy with its simplicity. Lack of integration into 
dmd has not hurt at all. It does not satisfy all cases - but it 
seems it adds great value without disrupting dmd. Why wouldn't a 
more complex build system want the same thing?

[snip]
>
> No doubt the compiler should be a library. Why isn't it?

20/20 hindsight maybe.

> If it was a library, then perhaps it could use itself in some 
> very interesting ways. The compiler should also accept plugins 
> for extensibility. I have not looked at the code yet, but I 
> suspect what we have under the hood will make me want to cry.

The beauty of encapsulation ... don't look.

> To me, building is just an ugly hack and patch process caused 
> by a broken system that is unable to build itself. It's a total 
> mess. The best place to fix the problem is right at the source.
>

I don't think it is that bad at all - but then I'm using rdmd for 
everything for now. And I agree that the best place to fix the 
problem is right at the source... the problem is which source. I 
would say the build source, not the D source as they serve 
different purposes. Right now we don't have standard build source 
is the issue and it sounds like you are advocating the two go 
together.



More information about the Digitalmars-d mailing list