Re: Visual C++ 6 support issue
From: Joseph M. Newcomer (newcomer_at_flounder.com)
Date: 05/20/04
- Next message: Joseph M. Newcomer: "Re: malloc() vs "new" vs HeapAlloc() vs ..."
- Previous message: Alec S.: "Re: ? Resetting CListCtrl color [flag] to (default) system color scheme"
- In reply to: Daniel James: "Re: Visual C++ 6 support issue"
- Next in thread: Daniel James: "Re: Visual C++ 6 support issue"
- Reply: Daniel James: "Re: Visual C++ 6 support issue"
- Messages sorted by: [ date ] [ thread ]
Date: Thu, 20 May 2004 00:54:06 -0400
On Tue, 18 May 2004 16:12:25 +0100, Daniel James <wastebasket@nospam.aaisp.org> wrote:
>In article news:<dmiha09l6cmbfg7ib0q14l7s7ncaf95d7p@4ax.com>, Joseph
>M. Newcomer wrote:
>> It is worth noting that Eclipse is developing a C/C++ version.
>> Folks at Microsoft should note this effort. Sun may not become
>> the only company which is Eclipsed...
>
>Eclipse does seem very nice to use, I'm appreciating more and more of
>its features as I get to know it better. Of course, Eclipse has the
>great advantage that it is working with Java, which has a MUCH
>simpler syntax than C++ and is much easier to parse and analyse.
*****
Yes, but the C/C++ version is in beta; I know at least two people who are trying it
*****
>
>At the ACCU conference in Oxford last month we had a lunchtime
>session entitled "What is wrong with C++". The almost-unanimous
>answer from those present was "the quality of tools support". One
>person present actually went so far as to suggest that he used Java
>in preference to C++ because support from tools like Eclipse and
>JUnit made it much more productive for him (that provoked a ripple of
>muttering from others present). I haven't really got to grips with
>the refactoring tools that Eclipse offers for Java, but they do seem
>potentially very powerful. The ability to do things like clicking on
>a method in a class browser and select "rename" to have the
>environment change the name of that method (but not other methods
>that overload the name) everywhere in the code is nice -- and Eclipse
>can do far more than that.
****
Apparently there is a discussion group going on in Microsoft which is discussing the tool
quality. I haven't had a chance to get to this yet, but if anyone from Microsoft is
reading this selection of posts (and I really hope they are! And paying attention!)
An option to keep Spy++ Always On Top. Hey, guys, I've been asking for these three lines
of code to be added for AT LEAST ten years. It is so blindingly obvious that I cannot
understand why it has not been added. In fact, I don't undertand why this was not part of
version 1.0.
Named configurations in Spy++, so I don't have to keep suppressing the same collection of
messages each time I start it, and I can customize the configuration for each project. I
should be able to save my current selection as a .spy file, and load it at any time.
The ability to save the current output in a file, instead of having to enable output to a
file and re-running the test..
The ability to add a comment into the Spy++ stream, e.g., a simple popup dialog with an
edit control, which then puts
=============================================
your text here
=============================================
so it stands out.
All of this seems obvious, but none of it has made the product
(Actually, this is one of the compelling arguments of the open-source movement. I would
have put this in myself a decade ago if I had source)
*****
>
>The trouble is that to do these things one has to perform basically
>the same parsing job that the first couple of passes of the compiler
>do. This is much harder to do in C++ than in Java because (a) C++ has
>more complex semantics, (b) C++ has a macro preprocessor that adds an
>extra level of complexity, and (c) C++ has templates which add an
>extra two or three levels of complexity AND follow different rules
>with respect to things like scope resolution from the rest of the
>language. A C++ compiler is quite a tricky beast to write (which is
>why there still aren't *any* commonly used commercial compilers that
>manage to do it - I think the EDG compiler is still the only one and
>that's only available through resellers like Comeau) so C++ tools
>that have to incorporate the first (and trickiest) third of an entire
>compiler aren't going to be terribly easy, either.
*****
Actually, an IDE doesn't have to parse anything. Simple lexical analysis works well enough
to do syntax highlighting. As far as I know, the VC IDEs do not do anything vaguely
resembling parsing of the source, so I don't buy any of the parsing argument.
Besides, Java is getting templates.
And the compiler and the IDE are completely orthogonal. The IDE is free to invoke any
compiler it wants, including any version of Microsoft's C/C++ compiler.
*****
>
>The best way to achieve good parsing for sourcecode tools like
>browsers and refactoring tools is to get a compiler to do it. It's
>not that easy, though, one can't simply take an open source compiler
>(such as g++) and pull out the parser, because the parse needed by
>browsing/refactoring tools is a different parse from that needed by
>the compiler. The compiler can perform the preprocessing pass and
>then throw away all knowledge of the original source and just parse
>the processed output; sourcecode tools need to track both the
>original and the preprocessed source so as to enable browsing of both
>preprocessor symbols and language symbols (and of language symbols
>used explicitly in the definitions of preprocessor symbols and
>implicitly in macro substitutions).
*****
And that's what the Microsoft compiler does. It wouldn't surprise me if similar
information could be derived from the gnu tools; a properly modularized IDE would simply
have a well-defined interface to browse, and suitable plugins could be written. In any
case, the person I know who is using the Eclipse beta has pointed out that it apparently
interfaces well with SlickEdit (his hope being to get an IDE with a respectable editor,
instead of the crap Microsoft has tried to pass off as an editor) and SlickEdit itself
claims to support refactoring. I don't know about SlickEdit, but he's planning to download
a version and try it within the next couple weeks.
****
>
>The good news is that, also at the ACCU conference, Microsoft's David
>Burggraaf (who is "Production Unit Manager Visual C++" - whatever
>that means) gave in interesting talk about some of the new 'stuff'
>coming in the next VC++. He spent most of his talk by telling us easy
>it will be to pull legacy C and C++ projects in to VC and run them on
>the .NET CLI and add managed code to them (should you happen to want
>to do such a thing) with extensive reference to MS's port of the Open
>Source Quake code to the CLI; but he did also mention that the new
>environment will have much improved source browsing based on a new
>browse engine which will parse the source as the project is loaded
>(without having to do a full compile), and that the IDE will have
>some simple refactoring capabilities.
****
That scares me. Anyone who can't understand how to write an editor is going to have
problems understanding how to write refactoring code.
****
>
>The new VC ("palfrey"? "Whitebait"? ... "Whidbey", that's it --
>whatever that means) should be available in public Beta later this
>summer, they tell us. For the first time in a very long time I find
>myself actually looking forward to being able to play with a new
>release from Microsoft. that's refreshing.
****
"Fishbait"? I have a beta, and I've seen some impressive demos but I can't talk about them
because of NDA, but I haven't had time to bring up the machine I want to dedicate to this
platform (I can't risk putting it up on a production machine). My AMD64 will more likely
take precedence, and I don't have time to even order it. There are some SERIOUSLY
interesting things I saw at the demo, but they still don't know how to write an editor.
****
>
>Cheers,
> Daniel.
>
>
>
>
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
- Next message: Joseph M. Newcomer: "Re: malloc() vs "new" vs HeapAlloc() vs ..."
- Previous message: Alec S.: "Re: ? Resetting CListCtrl color [flag] to (default) system color scheme"
- In reply to: Daniel James: "Re: Visual C++ 6 support issue"
- Next in thread: Daniel James: "Re: Visual C++ 6 support issue"
- Reply: Daniel James: "Re: Visual C++ 6 support issue"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|