Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » Coffee corner » Arjun Bijanki: Making Sense of VC Intellisense
Arjun Bijanki: Making Sense of VC Intellisense [message #13909] Fri, 01 February 2008 14:15 Go to next message
unodgs is currently offline  unodgs
Messages: 1366
Registered: November 2005
Location: Poland
Ultimate Contributor

..quite interesting speach about how MS does inellisense
http://channel9.msdn.com/showpost.aspx?postid=376182
Re: Arjun Bijanki: Making Sense of VC Intellisense [message #13917 is a reply to message #13909] Fri, 01 February 2008 19:56 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Anything relevant/interesting there? I do not have guts to spend 35 minutes watching a video...

Mirek
Re: Arjun Bijanki: Making Sense of VC Intellisense [message #13938 is a reply to message #13909] Sat, 02 February 2008 02:54 Go to previous messageGo to next message
mr_ped is currently offline  mr_ped
Messages: 825
Registered: November 2005
Location: Czech Republic - Praha
Experienced Contributor
extra short summary:
old VS:
compiler has parser (perfect one)
intellisense has parser (not complete)
2 parsers baaaad
performance baaad, sometimes during writing you don't get characters drawn as the intellisense is working hard

new VS:
let's use compiler's (perfect) parser, right?
just the output of compiler will be not object file, but intellisense database.
1 parser = goood
Oh, and by the way we will mention we have now got two de facto compilers, one real, one intellisense DB producer, but having two compilers can't be bad, even if we publicly call them "frankenstain compiler" in video.
And the whole crap runs in background, so performance has been improved a lot.
And some fancy speech about united codebase/etc.

My own summary:
I don't see any major change except writing it from scratch. I think pointing out you are using compiler's parser instead of it's own is just giving thing different name. There was no limit to put compiler's parser in previous model. Also the performance improvement ... I'm skeptical ... running in background = huh, that should have been there since the very start.

Still VS is based on the old text processor and text source files philosophy, which is obsolete right now, and unless they ditch the whole main idea behind VS, they can only redo all the feature again and again with better and better implementation, but I don't expect any major breakthrough there.
But of course it's always nice to get better implementation of the same stuff. Very Happy

To TheIDE it's relevant a lot .. and yet not. As TheIDE is based on the same concept as VS, everything from video applies, but ... yeah, we are not using our own compiler .. which makes ripping out the parser of it and change it to produce browser data a hefty task, actually very likely as bad as doing your own imperfect parser with heuristics.

Still I wonder when we will see finally some full featured powerful IDE based on the full DB concept, and I mean not only simulating classic sourcefiles by storing code both in DB and producing files, but finally baning source files completely (let them survive in "Export sources") and using interactive pre-compilation of code not only to generate browser info, but also to produce real-time interactive statistics about performance, results for test parameters, etc... And producing full binary only on Run request with using precompiled pieces of stuff...... ... ...
Alright, I'm going rather to dream into bed, but I hope one day somebody will do it right.
It's still cutting out only "accident" things (essay Essence vs Accident tasks in programming from The Mythical Man-Month, if you don't have idea what I'm talking about), but I think the current work of programmer is still cluttered too much by them and worth of that final blow to them to get rid of them almost completely and focus on essence.
Also the DB based IDE with proper parsing could help attacking Essence itself a little bit, especially with last 5 years development of things like google-source and lot of matured OSS on internet and well described patterns some powerful search heuristic would be probably able to suggest very usable options for your //TODO comments.

[Updated on: Sat, 02 February 2008 02:55]

Report message to a moderator

Re: Arjun Bijanki: Making Sense of VC Intellisense [message #13942 is a reply to message #13938] Sat, 02 February 2008 09:10 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
mr_ped wrote on Fri, 01 February 2008 20:54

Still I wonder when we will see finally some full featured powerful IDE based on the full DB concept, and I mean not only simulating classic sourcefiles by storing code both in DB and producing files, but finally baning source files completely (let them survive in "Export sources") and using interactive pre-compilation of code not only to generate browser info, but also to produce real-time interactive statistics about performance, results for test parameters, etc... And producing full binary only on Run request with using precompiled pieces of stuff...... ... ...



Well, I was thinking about it too and I even believe that this is what IBM environment does.... Still I am afraid this idea somewhat kills some C++ features which make it so appealing language. E.g. how .iml / .lay concepts fit into this image?

I know, these things could be integrated, but the C++ magic is that any application can develop something similar to cover its problem domain. This is what makes C++ flexible.

Therefore I am afraid that in order to preserve these favorable things, we will have to find the right degree of symbiosis between classical sources and "class" database access...

Mirek
Re: Arjun Bijanki: Making Sense of VC Intellisense [message #13948 is a reply to message #13909] Sat, 02 February 2008 21:44 Go to previous messageGo to next message
mr_ped is currently offline  mr_ped
Messages: 825
Registered: November 2005
Location: Czech Republic - Praha
Experienced Contributor
How does the .iml and .lay relate to this?
I hope I'm not wrong, but both .iml and .lay files are generated by TheIDE. And they are still valid C++ sources, aren't they?

So such new IDE would be used to edit layout too, and it would generate the content of "lay" files too, and it would handle the "files" problems for them too (hopefully in completely transparent way to programmer).

Still the (continuous) import of external (generated or not) source files would be needed of course for many projects, but I think this can be worked out too without making it more difficult than with current IDEs, if not easier.

After all to attack "accident" part of programming means to make the life of programmer easier, not harder. Whether in classic source files based IDE or some future tool based on different concept doesn't matter. As long as the life is *really* easier.

(That means I'm really looking for improved TheIDE too, I bet it will make the life easier. Smile I'm not just waiting for final miracle, any little improvement is welcome. )
Re: Arjun Bijanki: Making Sense of VC Intellisense [message #13951 is a reply to message #13948] Sun, 03 February 2008 04:17 Go to previous message
Mindtraveller is currently offline  Mindtraveller
Messages: 917
Registered: August 2007
Location: Russia, Moscow rgn.
Experienced Contributor

I`m afraid there are two major points in here:
1) Real compiler (MSC, GCC) is very much "heavier" than integrated parser. So you`ll have your system performance degraded, especially on old PCs - even while editing the code.
2) Real compiler creates binary output only for "complete", non-error source file. So while editing the code, 80% of time this code is incomplete and has potential errors. I don`t know how integrated parser works, but I think it may be more flexible than keep-last-good-build approach.
Previous Topic: an interesting C++ compiler (supports C++0x)
Next Topic: Nokia has bought Trolltech with it's QT framework
Goto Forum:
  


Current Time: Fri Mar 29 01:50:23 CET 2024

Total time taken to generate the page: 0.01182 seconds