Board index » cppbuilder » Re: Borland Bashing- is it productive at this point?

Re: Borland Bashing- is it productive at this point?


2005-04-08 04:21:10 AM
cppbuilder51
"Alex Bakaev [TeamB]" < XXXX@XXXXX.COM >wrote in
Quote
mr_organic wrote:

>On Windows, the most conformant compiler right now is Microsoft's,
>closely followed by Intel's. That's not likely to change any time
>soon.


I thought Comeau was the most compliant, including Windows.
.a

Could be, I guess; I haven't used it. Herb Sutter is fronting the
Microsoft effort though, and since he's on the standards committee, he's
definitely in a position to make sure the MS compiler is ISO-conformant.
Visual C++ 7.1 is undoubtedly far more compliant than Borland's C++
offering at this time.
That said, I don't find Borland's C++ compiler to be too constraining
except when compiling Boost. It does a pretty good job otherwise.
mr_organic
 
 

Re:Re: Borland Bashing- is it productive at this point?

mr_organic wrote:
Quote
Could be, I guess; I haven't used it. Herb Sutter is fronting the
Microsoft effort though, and since he's on the standards committee,
he's definitely in a position to make sure the MS compiler is
ISO-conformant. Visual C++ 7.1 is undoubtedly far more compliant
than Borland's C++ offering at this time.
MSVC 7.1 is a long way ahead of their previous offerings, but I'm not
sure it quite deserves the title 'most conforming'.
IIUC, it still does not check exception specifications (although it
accepts the syntax to avoid compile-time errors)
There is no intention to support 2-phase template lookup
There is even less interest in supporting the 'export' keyword.
When I try various corner cases, Intel is more likely to agree with
what I expect than MSVC, and if Comeau disagrees I usually back Comeau
over my intuition ;?) [although I have filed a couple of bug reports
over the years] GCC also has all these apart from 'export'.
Don't get me wrong, VC7.1 is a terrific leap forwards on compliance.
Bramdon Bray was rightly proud of their Boost support - the target for
VC7.1 was to compile the whole of then-current Boost *without any
workarounds* I believe they were indeed the only vendor to achieve
this.
Of course, Mertowerks failed because 2-phase lookup was finding genuine
errors in Boost, but that is a different matter ;?)
My impression is that MS support as much of the standard as they intend
to, and any missing features will remain missing - although bugs
reported against other features will continue to be fixed. The effort
is much more focussed on getting C++/CLI right, which is no small
effort in itself!
We can only hope Borland make some progress on this front - given the
massive effort it took to turn MSVC7.0 into 7.1, I doubt we wil see
quite that scale of upgrade, but hopefully a clear move in the right
direction.
AlisdairM(TeamB)
 

Re:Re: Borland Bashing- is it productive at this point?

Randall Parker wrote:
Quote
Alisdair Meredith wrote:

[...]

Alisdair,

Do you have any sense in terms of man-years on what it would take to
make Borland's compiler compile Boost without work-arounds?

Sorry for interrupting,
but AFAIK CBX preview compiler already supported "export".
Yes - i know it is, or better said was, based on the EDG frontend.
But "all" this compiler needs is supporting the VCL and the proprietary
keywords, perhaps it would need less man-years, than changing the
current compilers front end.
And by the way, the EDG developers needed about 2 man-years just to add
"export" support.
Quote
Also, how massive was MS's massive effort? 10 programmers? 50? 100?
I think the man-power of MS development teams is often overestimated.
And i donīt think that Comeau / EDG teams have much more man-power than
Borland or Microsoft and they have even more compliant compilers than
Microsoft.
I donīt expect the next BCB version to be one of the most compliant C++
compilers, after an estimated year of development, but at least i expect
some improvements and most of the current quirks corrected.
And if they can use some of the CBX work already done, then IMHO Borland
should at least take it into account.
Quote
[...]
Andre
 

{smallsort}

Re:Re: Borland Bashing- is it productive at this point?

Randall Parker wrote:
Quote
Do you have any sense in terms of man-years on what it would take to
make Borland's compiler compile Boost without work-arounds?
Lots! Compilers are not easy things to write, and I'm not sure how
adaptable the codebase would be after all these years - small changes
can easily be big breaks - and features were added to the standard long
after the core architecture was laid down.
Of course I could just as easily be wrong - I certainly hope so <g>-
but I am more and more aware of the deficiencies in current compilers,
and Borland has a LONG was to catch up at the moment.
Of course, some things are more worth fixing than others. How many of
us really *need* the export keyword (want it, sure! need it?) Or
function-try-blocks? Or even correct overload resolution for string
literals?
OTOH, some relatively obscure things would be very nice - such as
template specializations on function types. This would bring support
for std::tr1::function and boost::signals - libraries I would really
like to use, but have no interest in writing ;?
Quote
Also, how massive was MS's massive effort? 10 programmers? 50? 100?
Again, if I knew MS resources I wouldn't be allowed to say <g>
My guess is more than 10, but less than 100, and probably in the upper
half of that range. Of course, there was a lot more going on during
VC7.1 than mere standard compliance <g>There was a real focus on
security and some very clever new optimiser technology as well.
Quote
What would be harder, to make Borland's compiler as compliant as GCC
or to make its generated code as fast as MSVC?
That's a comparing apples and oranges question. It is hard to really
compare these things.
Standard compliance is largely a 'front end' feature, parsing the text,
working out what to accept as valid input and storing the results in
some intermediate format.
Optimised code generators are very much focused on the middle and back
end, performing transormations on that intermediate representation
before finally turning out the final object code. This is a totally
different task, often handled by a different team.
So I don't really know how to compare the work involved.
Quote
And how much harder still would it be to make Borland's code as fast
as Intel?
Some <g>
AlisdairM(TeamB)
 

Re:Re: Borland Bashing- is it productive at this point?

Bob wrote:
Quote
As far as a C/C++ compiler, Eclipse seems to be in defacto IDE.
I disagree. If there is a defacto IDE for C++ developers, it is MS
Visual Studio. If you were to rank the most popular environments for C++
developers, regardless of target OS, eclipse would certainly trail
behind VS and emacs, and probably behind CodeWarrior, SlickEdit,
KDevelop, and BCB.
H^2
 

Re:Re: Borland Bashing- is it productive at this point?

mr_organic wrote:
Quote

That said, I don't find Borland's C++ compiler to be too constraining
except when compiling Boost. It does a pretty good job otherwise.

I'm using boost with C++V6. I haven't encountered any troubles with
using it. If you are using this library and have some troubles just post
it here. Thomas will solve and can offer some help to you.
Sabetay
 

Re:Re: Borland Bashing- is it productive at this point?

mr_organic < XXXX@XXXXX.COM >wrote:
Quote
[...]
>I thought Comeau was the most compliant, including Windows.
>.a
>

Could be, I guess; I haven't used it.
Comeau + Dinkumware is usually considered to
be as close to the standard as you can get.
Quote
Herb Sutter is fronting the
Microsoft effort though, and since he's on the standards committee, he's
definitely in a position to make sure the MS compiler is ISO-conformant.
He either isn't or he doesn't care.
VC8 won't have two-phase lookup and it won't
have export. () two name the two I miss most
badly.) It will have some compliance bugs
fixed, that plague VC7.1.
But mainly it will have .NET. And this is
also what Herb seemed to have mainly been
doing in the last years. At least it is what
he mainly has been talking about.
Quote
Visual C++ 7.1 is undoubtedly far more compliant than Borland's C++
offering at this time.
That doesn't seem that hard, actually.
Quote
That said, I don't find Borland's C++ compiler to be too constraining
except when compiling Boost. It does a pretty good job otherwise.
I haven't used BCC for my daily work since
1999, but for the template stuff I am doing
now, I would not want to have to use it.
Quote
mr_organic
Schobi
--
XXXX@XXXXX.COM is never read
I'm Schobi at suespammers dot org
"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett
 

Re:Re: Borland Bashing- is it productive at this point?

Duane Hebert < XXXX@XXXXX.COM >wrote:
Quote
[...]
I often freeload on Greg Comeau by using his test page to check
code that I'm not sure is going to work cross platform. I would say
that it's more compliant than BCB and VC7.1.
It definitely is. I don't think I need to
proof this for BCB here. Regarding VC --
it doesn't even have two-phase lookup, which
Comeau has had for years.
Quote
It's also one of the
only ones that support export FWIW.
If I haven't missed something, it still is
the only one. (Last thing I heard about
Intel's compiler -- which also uses the EDG
front end -- is, that they disabled it.)
Quote
[...]
Schobi
--
XXXX@XXXXX.COM is never read
I'm Schobi at suespammers dot org
"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett
 

Re:Re: Borland Bashing- is it productive at this point?

Alisdair Meredith <alisdair.meredith@ XXXX@XXXXX.COM >wrote:
Quote
[...]
MSVC 7.1 is a long way ahead of their previous offerings, but I'm not
sure it quite deserves the title 'most conforming'.
I am really sure it doesn't. :)
Quote
[...]
When I try various corner cases, Intel is more likely to agree with
what I expect than MSVC, and if Comeau disagrees I usually back Comeau
over my intuition [...]
That's not only you (or me, FTM). I found
that if I report a bug to some compiler
vendor a simple "Comeau does this right"
usually is enough to convince them that
they indeed have a bug. Both MS and MW
immediately accepted every single bug
report by me that was backed up with that
statement. I have, OTOH, trouble reporting
what I consider a bug in CW, as Comeau
doesn't compile the code as well. (It is
still being discussed in c.l.c++.m.)
Quote
[...]
Bramdon Bray was rightly proud of their Boost support - the target for
VC7.1 was to compile the whole of then-current Boost *without any
workarounds* I believe they were indeed the only vendor to achieve
this.
Yes, but that doesn't necessary help with
your daily template troubles. There is cases
where VC fails with rather simple templates
-- which aren't used by boost. I ran into
quite a few such (and other) bugs using VC.
Quote
Of course, Mertowerks failed because 2-phase lookup was finding genuine
errors in Boost, but that is a different matter ;?)

My impression is that MS support as much of the standard as they intend
to, and any missing features will remain missing - although bugs
reported against other features will continue to be fixed. [...]
I still hope for two-phase lookup to get
implemented. I miss this most badly.
Quote
We can only hope Borland make some progress on this front - given the
massive effort it took to turn MSVC7.0 into 7.1, I doubt we wil see
quite that scale of upgrade, but hopefully a clear move in the right
direction.
Given BCB6, Borland doesn't need as huge a
leap as MS needed. It is much better than
VC6/7 were.
With Borland I think it's more a question of
whether they see the need to do this. For
most of their remaining C++ customers the
VCL and the GUI designer seem to be the most
important reason to stick with Borland.
Quote
AlisdairM(TeamB)
Schobi
--
XXXX@XXXXX.COM is never read
I'm Schobi at suespammers dot org
"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett
 

Re:Re: Borland Bashing- is it productive at this point?

Andre Kaufmann < XXXX@XXXXX.COM >wrote:
Quote
[...]
I think the man-power of MS development teams is often overestimated.
And i donīt think that Comeau / EDG teams have much more man-power than
Borland or Microsoft and they have even more compliant compilers than
Microsoft.
LOL! EDG has three developers. Three! They
produced the best C++ frontend available.
And I would be surprised if Greg Comeau
had more man-power available. (In fact, I
would /not/ be surprised if he did most
of the stuff by himself.) The same goes
for Dinkumware: I know of Plauger and
Becker and would be surprised if they had
many more developers. (Again, I wouldn't
be surprised if it were just the two by
themselves.)
I think coming up with a good C++ compiler
doesn't take that much man-power. It mainly
takes a few very good developers and a
string will to do it. As the former can
always be replaced by buying a ready-made
solution (EDG, Dinkumware), what it mainly
takes is the latter.
Motivation to provide a truely compliant
C++ compiler is what I consider the main
thing lacking at Borland.
Quote
[...]
Andre
Schobi
--
XXXX@XXXXX.COM is never read
I'm Schobi at suespammers dot org
"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett
 

Re:Re: Borland Bashing- is it productive at this point?

In article < XXXX@XXXXX.COM >, Alisdair Meredith wrote:
Quote
MSVC 7.1 is a long way ahead of their previous offerings, but I'm not
sure it quite deserves the title 'most conforming'.
VC7.1 is pretty good, but I believe Comeau is still the 'most
conforming'.
Quote
IIUC, it still does not check exception specifications (although it
accepts the syntax to avoid compile-time errors)
It is by no means universally accepted that exception specification
checking is sensibly possible in C++. It's sufficiently hard in Java
that the issue has been avoided by introducing the concept of
"unchecked" exceptions; the difficulty of handling the exception
specifications of function pointers and of instatiations of function
templates makes this even harder in C++.
Many people doubt that there's any real use for any specification apart
from "throw()".
If offered to bet that exception specifications would be deprecated
before they were widely implemented I wouldn't take you up!
Quote
There is no intention to support 2-phase template lookup
I think that's "no immediate intention" ...
Quote
There is even less interest in supporting the 'export' keyword.
Have you seen recent articles by Herb Sutter and others on 'export' ...
the problem here is that export, as defined in the standard, doesn't
actually offer the things that most people want (and, indeed, that most
people seem to imagine it does). I can't see export being widely
implemented as it is currently defined, either.
Quote
My impression is that MS support as much of the standard as they
intend to, and any missing features will remain missing ...
I think that may be true ... but that that's because they've taken a
(surprisingly) pragmatic approach to the standard and held back on
features that people may actually never use, and that may even
disappear from the language.
Quote
We can only hope Borland make some progress on this front - given the
massive effort it took to turn MSVC7.0 into 7.1, I doubt we wil see
quite that scale of upgrade, but hopefully a clear move in the right
direction.
They could make a big start by licensing the EDG front end ...
Cheers,
Daniel.
 

Re:Re: Borland Bashing- is it productive at this point?

In article < XXXX@XXXXX.COM >, Bob wrote:
Quote
I have not spent any money on Borland products since BCB V5.0
and JBuilder V6.0. As far as a C/C++ compiler, Eclipse seems
to be in defacto IDE.
Bad edit? Eclipse is pretty-much the de-facto IDE for *Java* nowadays
-- it certainly makes JBuilder look overpriced and under-powered -- but
Eclipse's C++ plug-in isn't really mature or stable enough to compete
with ... well, anything.
Cheers,
Daniel.
 

Re:Re: Borland Bashing- is it productive at this point?

mr_organic wrote in an earlier post:
Quote
I've seen messages in this forum indicating that Borland has
stopped work on the new compiler, and is simply patching
the old compiler to fix some glitches.
And in the more recent one:
Quote
That said, I don't find Borland's C++ compiler to be too constraining
except when compiling Boost. It does a pretty good job otherwise.
IIRC, in the recent internet chat with Ed Boling, he indicated that
compiling BOOST and ACE is a priority. Also, he said that they plan
to include Dinkumware STL, which should go a long way towards
standards compliance.
- Leo
 

Re:Re: Borland Bashing- is it productive at this point?

"Leo Siefert" < XXXX@XXXXX.COM >wrote in message
Quote
IIRC, in the recent internet chat with Ed Boling, he indicated that
compiling BOOST and ACE is a priority. Also, he said that they plan
to include Dinkumware STL, which should go a long way towards
standards compliance.
As long as they use Dinkumware out of the box and
don't have to modify it too much to work with VCL.
I believe historically this has been part of the problem
with RogueWave and STLPort.
 

Re:Re: Borland Bashing- is it productive at this point?

"Sabetay Toros" < XXXX@XXXXX.COM >wrote in message
Quote
I'm using boost with C++V6. I haven't encountered any troubles with
using it. If you are using this library and have some troubles just post
it here. Thomas will solve and can offer some help to you.
You can look at boost's test results and see which areas
of their libs have problems with BCB.