That's very nice and I'll probably be using it a lot, after VS2019 will stabilize (it's just a preview now).<p>However, the fact that this thing works so well, says a lot about the design of C++ standard library. They should have encapsulated the pair of iterators into a single structure, and implement implicit casts from vectors/arrays to that object. Requiring to type begin/end every single time is counterproductive.
> IntelliCode uses machine learning to train over thousands of real-world projects including open-source projects on GitHub.<p>Is it legal to use a bunch of open-source projects in what looks like a proprietary plugin?
So is this basically like a Markov chain attached to a C++ analyzer? If so, then I think the title is a bit gratuitous with the whole "AI" thing, but I can't say it's not a convenient feature to have in an IDE.
This might use AI but it's nothing but marketing here. Isn't any sufficiently 'trained' program AI under this definition? If I put enough possible paths in my matching system, I get this. Intellicode is just a minor improvement on intellisense that could have been made years ago without any kind of AI branding.
I despise code autocomplete features. I could not stand using Jedi in Emacs. It just slows me down way too much to have to interact with an autocompleter. I’ll never understand why anyone would want this.<p>I’ve found code autocompletion to be particularly troublesome and hindering on large legacy code bases, where the suggestions not only prevent you from quickly typing out the method, class, etc. that you were trying to type, but also add a hindering layer of misdirection to trying to learn the architecture and code layout and form a mental model of the code organization.<p>Code autocompleters have only ever been pure waste to me, across a wide range of projects of various ages, states of code complexity, states of maintenance.