Welcome Dan Fernandez to the Channel 9 Team!

One of the very useful features of Visual Studio is Intellisense. C# and VB programmers have come to rely on this mechanism as a one of the means to being highly productive when using VS as their dev tool. VC++ developers have not been afforded the same
luxury as their other (managed) VS counterparts. Why? Well, for one thing there are big technical challenges to pulling off highly performant and accurate Intellisense for a VC++ code garden. You can imagine why given the complex structure of C++ programs...
Here, we meet Senior Developer in Test Arjun Bijanki who has been working on the VC++ front end compiler team for his entire career at Microsoft (as you'd expect, the front end compiler team owns Intellisense...).
How does Intellisense work? What are the challanges of implementing a truly useful Intellisense for VC++? When will VC++ developers get a great Intellisense experience in Visual Studio? What's the current state of the art and what's the future hold?
Tune in.
(Dan Fernandez joins in the conversation - this is Dan's first appearance on C9 as an interviewer (it was actually his first day on the job. Not surprisingly, Dan asks some very good questions.))
Here's a
lo-res download version.
thanksCharles wrote:I'm processing a smaller download file now... Stay tuned.
C
EDIT: Done. See description for link or click here.
as for C# I think its more a "political" decision than a technical one, as for C++ its the compiler that compile the code and the C++ compiler does a lot more than C# or VB.NET compilers, its pretty obvious isnt?Charles wrote:so... why one language in MS stack [VB.NET] can do it [background compilation] and another language which is very very different [C++] cant or doesn't do it
Ion Todirel wrote:
that parallelization feature built in C++ compiler, do we will see it in C# compiler? IIRC C# compiler doesn't have it, msbuild have it...
Ion Todirel wrote:as for C# I think its more a "political" decision than a technical one, as for C++ its the compiler that compile the code and the C++ compiler does a lot more than C# or VB.NET compilers, its pretty obvious isnt?
Charles wrote:
so... why one language in MS stack [VB.NET] can do it [background compilation] and another language which is very very different [C++] cant or doesn't do it
littleguru wrote:
Ion Todirel wrote:
as for C# I think its more a "political" decision than a technical one, as for C++ its the compiler that compile the code and the C++ compiler does a lot more than C# or VB.NET compilers, its pretty obvious isnt?
Charles wrote:
so... why one language in MS stack [VB.NET] can do it [background compilation] and another language which is very very different [C++] cant or doesn't do it
I don't think it is... The C++ compiler is a much more complex thing than the C# compiler. You have a lot more stuff that's going on and it takes also a lot longer to compile C++ code - compared to C# code.
This video was very interesting and Dan asked some nice questionsEspecially the one about the AST! While I was watching the video that was actually one question that I would have asked
evildictaitor wrote:
Yep. Parsing C# is a walk-in-the-park compared to parsing C++. Just look at the respective size of standard for that (C++, C#). Don't forget that pasing a C# file might involve parsing say 5000 lines at most, whereas an expanded C++ file with the #includes can often be over 50,000 lines of code - windows.h is a good example of this.
C# also reflects-in lots of it's information, whereas C++ has no such ability, so C# can get away with a tiny intellisense store, whereas C++ has an absolutely gigantuan database with a hundred different things reading and writing to it per second, which means it breaks.
Microsoft last I heard was 100% committed to it's C++ customers, and for them to be crippling their own product in order to convert people to C#, which is a fundamentally different type of application for political reasons seems frankly ridiculous.
Nice video! Thank you Charles and the rest of Channel 9 team for listening to my wishes (and a recent feedback message ) about the size of downloads and the bandwidth challenged/traffic limited viewers, - that's us
Appreciating these low-res downloads.
It took almost over a year for our main C++ developer to start using VS 2005, having moved away from VS 6. I think he should enjoy the changes in VS2008 for VC++.
Regards