June 26, 2002
Jan Knepper wrote:
> ben wrote:
> 
> 
>>The seperation between d is what I am also worried about. I don't care what
>>language people are using as long as its consistent across platforms,
> 
> 
> Agreed.
> 
> 
>>I don't like java but I am using it for that reason,
> 
> 
> I think that's Andy's favorite, so you guys might be at opposite ends.
> 

Wow, can I start just making presumptuous assumptions as to your opinions and stating them in emails attacking you for no apparent reason?

> 
>>I can be assured that sun java on windows or linux is pretty much the same..
> 
> 
> I hope so. I do not use Java, do not like nor dislike it. However I have heard
> different stories about this.
> One of the concerns about Java seems to be that it does not full fill this
> promise...
> 

The other is that the performance is theoretically equal to C++, in actuality its not true.


> 
>>Having to port all Walters changes to c for the linux front end would end up
>>causing a split.
> 
> 
> I also think it is not a good idea.
>

I think it is one approach.  There are others.  I'm trying to pick the best one.

-Andy


> Jan
> 
> 


June 26, 2002
> >>I don't like java but I am using it for that reason,
> > I think that's Andy's favorite, so you guys might be at opposite ends.
> Wow man, Jan why don't I just not talk and you tell people my opinions.
>   I guess it doesn't matter whether you actually know what I think, as
> that hasn't stopped you up to know.

I wrote "I think" didn't I???

> I'm interested in finding the most practical approach.  Sorry if that
> offends anyone's zealous sensibilites.  I'm open to the other approach.
>   I do not yet see an approach that allows the method you so strongly
> prefer (without any apparent idea if its even ACTUALLY possible, from
> what I can tell, having never actually looked at the gcc code and
> speaking only theoretically.).  If find one, great.  If someone else
> does, even better.

Well, what do we have:
1.    D front end compiled with C++ with C++ features.
2.    GCC backend compiled with C written in C

The compiler is probably controlled by the frontend. The frontend parses and
probably has to pass preprocessed stuff to the backend so the backend can generate
the code.
Well, this sounds to me like calling 'C' from a C++ program. This is not something
unheard of, actually It's done all the time. So what basically needs to be written
is a layer probably partually C++ and partially C that hooks op the frontend with
the backend. That's how simple it is.

When ever D whould be included in the GNU compiler suite, the C compiler would have to be build first. Than the C++ compiler and than the D compiler.

So where are the real problems?

Jan


June 26, 2002
andy wrote:

> > Andy's disadvantage is that he would like to have D on Linux, but D is written with some C++ features. I personally would just go ahead and compile the D front end in C++ and the GNU backend in C and interface the two. It would basically come down to a C++ class system calling a C library which is done all over the world and which should not be a problem. However, Andy has stated so here that he does not like C++, so the D front will have to be rewritten in C. <g> My
>
> Actually, I haven't made up my mind what approach.  I was hoping to get some factual information on what approach to take, but so far all I've gotten is conjecture.  I DO not like C++, never have, never will, but if we could plug Walters front end over a translation layer of sorts, I'd LOVE that approach.

I think that's the best approach. It just requires the translation layer/interface.

>  But if it requires specially compiled versions of
> gcc, etc, etc...it won't be worth it.  Supporting a rewrite of Walter's
> front end is FAR easier (because its FAR better code) than any
> significant part of GCC.

Why would it requires a specially compiled version of gcc?
I think Walter's code would flow right throug g++ which also should be able to
interface to the backend.

> My principal problem is that there are NO examples of how to do it in C++.  There are examples in C.  I've even gotten one to compile! Perhaps there is a reason, perhaps there isn't.  If someone showed me the light, I'd be fine with it.  Talk is cheap.

This is not a problem this is a challenge!
I program in C++ on FreeBSD all the time and interface to system functions (C) all the
time. I really do not see what the problem is.

> Oddly enough with all of this mischaracterization of my opinion on the matter I was favoring the other approach provided I/someone else could figure out how.

Well, you are pretty strong (honestly though) about your C++ dislike.

> > personal opinion... dumb, dumb, dumb, dumb, dumb, why would someone try to fix what ain't broken??? It's just going to generate a LOT more work as changes to
> I haven't made up my mind.  You apparently have.  You seem to hold many strong opinions.  I've been goofing around with gcc and Walter's front end.  Thats the progress up to now.

Well, I also have tried to compile the front end and as it seems there are header files missing. I have tried to create some fake once, but it would require some serious study as to see how it interfaces. Unfortunately I do not have the time for that at this moment.

> For anyone who doesn't like my approach the course of action is simple. Start writing something!

I guess we just do not like you strong dislike of C++. Sorry...

> > the C++ front will have to be ported to the C front which is probably going to create derivations of the language... Than we at least have an other language that isn't the same all over the place. <g>
> Again, I've summarized this before.  Like I said, it will depend on practical it is.  I must study gcc more in depth.

Yes you have. I just repeated it as it is a serious concern to me for the sake of the D language.

> > Unfortunately I really do not have the time to get involved in this. I really would like to, but I have a mortage to pay, a T1 to pay, a car to pay, a phone to pay oh, I forgot I need to eat too! <g>
> I paid off my car with my house.

I don't even have a car!

> Anyhow, I've got plenty of work to do as well (1.5 jobs, wife, kids, bills, co-loco,
> etc), I just plan to
> squeeze this in.  Its all a matter of priorities.  If this were important to you,
> you'd make time for it.  Its not.  No biggie.

Well, so do I, but to make some serious progress I would have to spend a contiuous week or more on it. Besides that... I have no problems with C++. <g> so using the front end as is does not create any issue for me in that department.

Jan


June 26, 2002
andy wrote:

> Jan Knepper wrote:
> > ben wrote:
> >
> >
> >>The seperation between d is what I am also worried about. I don't care what language people are using as long as its consistent across platforms,
> >
> >
> > Agreed.
> >
> >
> >>I don't like java but I am using it for that reason,
> > I think that's Andy's favorite, so you guys might be at opposite ends.
> Wow, can I start just making presumptuous assumptions as to your opinions and stating them in emails attacking you for no apparent reason?

Sure. What do you expect? You have honestly and openly mentioned (I think more than once) that you have a strong dislike for C++. Well, there is quite a bit of C++ code around. The D front end is one of those bits.

> >>I can be assured that sun java on windows or linux is pretty much the same..
> > I hope so. I do not use Java, do not like nor dislike it. However I have heard
> > different stories about this.
> > One of the concerns about Java seems to be that it does not full fill this
> > promise...
> The other is that the performance is theoretically equal to C++, in actuality its not true.

<g> What a joke!
The performance isn't nearly equal to C++.
May be it quicker and easier to develop something, but running the final
application???
I never checked, but Walter plugged the Java frontend he wrote onto the backend of
the C++ and D compiler if I understood well. I never heard how good that worked/was.

> >>Having to port all Walters changes to c for the linux front end would end up causing a split.
> > I also think it is not a good idea.
> I think it is one approach.  There are others.  I'm trying to pick the best one.

So, we think it is a bad approach, what about that?

Jan


June 26, 2002
andy wrote:

> 
>> 
>> One question Andy, this is a news group about gcc front end for d, and everytime there is a discussion about it you always say stuff like talk is cheap. why are you here, this is a discission group (people talk) about a compiler front end, I am trying to help by suppling information about gcc and what the gcc people have said. What are you doing? Are you spacifically here to make sure linux never gets it, or you just want to make sure people think its alot worse then it is.. Or perhaps you like c more.
>> 
>> Later
> 
> I wasn't trying to bite your head off (and I'm still not, so don't read it that way).  But this list is so far full of conjecture on this issue and devoid of hard fact.  Read through the archives and see for yourself.

Oh, sorry, I took it the wrong way..

> 
> You're reporting conjecture.  I'm interested in HOW.  I know its POSSIBLE, anything is POSSIBLE.  Is it PRACTICAL?

As far as the gcc people are conserned if the c++ code is compilable on a linux machine, its just a matter of adding an additional stage in the compile, after c++ has been completed (in the real world I know this is not always the case and seldom ever is). But they are willing to answer any questions regarding it..

> In essence, you're saying "why don't you prove my point that its possible".  Well I know its possible.  Its possible given time and resources to cause a temporaral paradox and suck the whole universe into a big black hole while simultaneously balancing a ball on ones head.  It would probably exceed the amount of time and resources available.
> 
> I fully and totally admit I DO NOT LIKE C++, but I prefer the approach of using Walter's front end and only working on the middle.  I do NOT know if its practical, and I do NOT know HOW.  You're saying its "possible" -- thats very nice.  You want ME to try it.  Well the last guy got on and said its possible to do it the other way, so do I spend the next 6 months proving each person right or wrong and achieve nothing useful by myself or do I encourage each of you to show a useful approach and pick the one I want to participate in, which do you suggest...loaded question I know.  In the next few weeks when my schedule clears up a bit, I'm going to pick an approach and start on it.  It will be one that is not only possible but practical and by definition will be one that I have some clue as to *how* to execute.  I've NOT made up my mind one way or another.  I'm also actively compaigning some folks who I know have skills necessary to pull this off to give me a hand.

I do not have the skills to do it, and I am not asking you to do it for me, I am on a discussion site trying to get the information needed to help the people that are doing the job or thinking about.

> As for my motives.  My passion in this is that I want a D compiler for Linux that is easy to keep up to date as the language develops.  I could give a rats behind *how* we do it provided the objective is achieved.

My motivation for this is also the same, but i don't have the skills to work on a compiler front end, so I asked the people that do and they have not told me anything special using c++ instead of c. As for what i got as an answer was all the information i have, and its a change will be need in the bootstrap but does not need to be converted from c++ to c.

> -Andy

June 26, 2002
> 
> I wrote "I think" didn't I???
> 

I think you love Visual Basic and wish that it could be as ubiquitous as it once was.

I wrote "I think" too.

> 
> 
> Well, what do we have:
> 1.    D front end compiled with C++ with C++ features.
> 2.    GCC backend compiled with C written in C
> 
> The compiler is probably controlled by the frontend. The frontend parses and
> probably has to pass preprocessed stuff to the backend so the backend can generate
> the code.
> Well, this sounds to me like calling 'C' from a C++ program. This is not something
> unheard of, actually It's done all the time. So what basically needs to be written
> is a layer probably partually C++ and partially C that hooks op the frontend with
> the backend. That's how simple it is.
> 

My understanding from looking at GCC and reading the documentation is the C program calls the C++ program that makes calls to the C program. Consequently, I should point out the make process especially bootstrapping process is fairly complex.  Furthermore, I read that there will be callbacks involved, so its more like

C --> C++ --> C -(callback)-> C++ -(maybe another call to)-> C

(which may be common, but I haven't seen too many examples of it)

> When ever D whould be included in the GNU compiler suite, the C compiler would have
> to be build first. Than the C++ compiler and than the D compiler.
> 
> So where are the real problems?
>

Pointless speculation without actual knowledge.  Misrepresentation of someone's opinions without actual knowledge for no apparent purpose other than to attack their character or start a distracting religious flamewar.  Those are problems.  Everything else is just a technical challange to be overcome by choosing the best method and accepting and mitigating (where possible) the tradeoffs.

You're attempting to convince me on an approach, then have me do the work and then find out if its feasible.  I assure you this is not possible, I tend to like to determine whether an approach is feasible before getting to far down the path.

How about instead of you and Ben spinning your wheels trying to convince me of the approach, you take a few minutes, download GCC take a look at the documetnation I sent and write a quick C++ example front end if its so simple?  (maybe rewrite the tiny example in C++) humm?  It would probably take equal amount of time (again assuming its as simple as you say), and be far more productive.  That would be a FAR more convincing argument.

-Andy

> Jan
> 
> 


June 26, 2002
Jan Knepper wrote:

> ben wrote:
> 
>> The seperation between d is what I am also worried about. I don't care what language people are using as long as its consistent across platforms,
> 
> Agreed.
> 
>> I don't like java but I am using it for that reason,
> 
> I think that's Andy's favorite, so you guys might be at opposite ends.

Well, I like the language, I don't like the speed, the inability to create different looks on different platforms.

Ben

>> I can be assured that sun java on windows or linux is pretty much the same..
> 
> I hope so. I do not use Java, do not like nor dislike it. However I have
> heard different stories about this.
> One of the concerns about Java seems to be that it does not full fill this
> promise...
> 
>> Having to port all Walters changes to c for the linux front end would end up causing a split.
> 
> I also think it is not a good idea.
> 
> Jan

June 26, 2002
andy wrote:

>> 
>> I wrote "I think" didn't I???
>> 
> 
> I think you love Visual Basic and wish that it could be as ubiquitous as it once was.
> 
> I wrote "I think" too.
> 
>> 
>> 
>> Well, what do we have:
>> 1.    D front end compiled with C++ with C++ features.
>> 2.    GCC backend compiled with C written in C
>> 
>> The compiler is probably controlled by the frontend. The frontend parses
>> and probably has to pass preprocessed stuff to the backend so the backend
>> can generate the code.
>> Well, this sounds to me like calling 'C' from a C++ program. This is not
>> something unheard of, actually It's done all the time. So what basically
>> needs to be written is a layer probably partually C++ and partially C
>> that hooks op the frontend with the backend. That's how simple it is.
>> 
> 
> My understanding from looking at GCC and reading the documentation is the C program calls the C++ program that makes calls to the C program. Consequently, I should point out the make process especially bootstrapping process is fairly complex.  Furthermore, I read that there will be callbacks involved, so its more like
> 
> C --> C++ --> C -(callback)-> C++ -(maybe another call to)-> C
> 
> (which may be common, but I haven't seen too many examples of it)

If i am ready this correct I have seen some of this before, working with glut and c++, there is alot of callbacks from glut to c++ (glut is c).


>> When ever D whould be included in the GNU compiler suite, the C compiler would have to be build first. Than the C++ compiler and than the D compiler.
>> 
>> So where are the real problems?
>>
> 
> Pointless speculation without actual knowledge.  Misrepresentation of someone's opinions without actual knowledge for no apparent purpose other than to attack their character or start a distracting religious flamewar.  Those are problems.  Everything else is just a technical challange to be overcome by choosing the best method and accepting and mitigating (where possible) the tradeoffs.
> 
> You're attempting to convince me on an approach, then have me do the work and then find out if its feasible.  I assure you this is not possible, I tend to like to determine whether an approach is feasible before getting to far down the path.
> 
> How about instead of you and Ben spinning your wheels trying to convince me of the approach, you take a few minutes, download GCC take a look at the documetnation I sent and write a quick C++ example front end if its so simple?  (maybe rewrite the tiny example in C++) humm?  It would probably take equal amount of time (again assuming its as simple as you say), and be far more productive.  That would be a FAR more convincing argument.

Hey, hold on, I have never tryied to convince you of anything other then try to be productive with the comments. I am not convincing you or anybody else what way to do anything, as far as I could tell there were no other ways that I was aware of, it was a question of if it is possible, and i asked the gcc people.. I was not conserned with other possibilities just answering the one question (or trying too)..

> -Andy
> 
>> Jan
>> 
>>

June 26, 2002
>>
>>Wow, can I start just making presumptuous assumptions as to your
>>opinions and stating them in emails attacking you for no apparent reason?
> 
> 
> Sure. What do you expect? You have honestly and openly mentioned (I think more than
> once) that you have a strong dislike for C++. Well, there is quite a bit of C++ code
> around. The D front end is one of those bits.
> 

Full disclosure.  I also do not like Visual Basic.  There is lots of VB code around.  What does this have to do with interfacing C++ code into the GCC compiler?  Nothing.  Just like my dislike has NOTHING to do with it.  Because if the approach works, I'd have little or no C++ to write.

> 
>>>>I can be assured that sun java on windows or linux is pretty much the same..
>>>
>>>I hope so. I do not use Java, do not like nor dislike it. However I have heard
>>>different stories about this.
>>>One of the concerns about Java seems to be that it does not full fill this
>>>promise...
>>
>>The other is that the performance is theoretically equal to C++, in actuality its
>>not true.
> 
> 
> <g> What a joke!
> The performance isn't nearly equal to C++.
> May be it quicker and easier to develop something, but running the final
> application???
> I never checked, but Walter plugged the Java frontend he wrote onto the backend of
> the C++ and D compiler if I understood well. I never heard how good that worked/was.
> 

Sun and others have done benchmarks to show it nearly equal in speed. Perhaps one can create a simple application that matches speed, but not a real world application.

Performance is my principal problem with Java.  I find Java's WORA promise reasonably fulfilled in the type of development I typically do.  If I did GUI development, no doubt I'd feel different.

Again, this has absolutely nothing to do with the fact I still have no idea how to interface a C++ front end for GCC.

> 
>>>>Having to port all Walters changes to c for the linux front end would end up
>>>>causing a split.
>>>
>>>I also think it is not a good idea.
>>
>>I think it is one approach.  There are others.  I'm trying to pick the
>>best one.
> 
> 
> So, we think it is a bad approach, what about that?
> 

Nothing, so long as you understand I don't give a rat's behind what people who don't plan to contribute and haven't EVEN LOOKED AT GCC think.  Whats even more is I HAVEN'T DECIDED ON AN APPROACH.


-Andy


> Jan
> 
> 


June 26, 2002
I would like to appoligize for starting this little war. I am going to speak with the gcc people and hope they can help me write a c++ frontend to it, for an example..

Later, Ben