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
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 previous 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

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: an interesting C++ compiler (supports C++0x)
Next Topic: Nokia has bought Trolltech with it's QT framework
Goto Forum:
  


Current Time: Thu May 09 16:31:52 CEST 2024

Total time taken to generate the page: 0.01488 seconds