STL/CLR specification is available online

Just in case people have not noticed this yet, I would like to bring your attention to the fact that the design specification for STL/CLR is available online for everyone on MSDN site. Here is the direct link to it:

https://download.microsoft.com/download/5/9/c/59cd0dc5-4691-4c3e-840c-66d865f27692/stlclr.xps

You may also find other specifications for features that are coming out in the next version of Visual Studio codename-Orcas here:

https://msdn2.microsoft.com/en-us/vstudio/aa948851.aspx

It is also redirecting from this page so you have a choice which link to remember

https://msdn.microsoft.com/vstudio/future/specs/

I would like to briefly comment on this version of the specification:

  1. First of all, it is a working draft. Please expect changes in the document all way until the final release of STL/CLR together with the final release of Visual Studio Orcas.
  2. Two sections are placeholders for a design of two adapters. The idea behind these adapters is to facilitate interoperability between STL/CLR containers and algorithms and .Net Framework Collections classes. First adapter should help developers represent a collection as a semi-regular STL/CLR container. After that most of STL/CLR algorithms should be able to operate on data represented by the adapter, which is actually still stored in the .Net collection. Second adapter is an opposite of the first one. It enables developers to run an algorithm that operates on ICollection on a range of data stored in an STL/CLR container. As soon as the new version of STL/CLR is going to be available in an Orcas CTP, the specification is going to be updated with a design for these two parts.
  3. The description of skeletons for STL/CLR containers was used by developers as a starting point in the implementation. Most of description is still true for major implementation details. However it is expected to have difference in details. We have not set a goal to keep the spec 100% up to date with all minor implementation changes. Major changes are documented.
  4. The specification references an original design specification used during Visual Studio 2005 product cycle. This is a Microsoft internal document and it cannot be shared. At this point we are also only using Orcas version of the specification and keep link to the original document to references original ideas and history of the feature.

Please take a look on the specification and try using STL/CLR in your daily coding. Any feedback on design and implementation is greatly appreciated. You may open suggestions on Connect site, or leave comments here or email using Contact form on the blog. The team and I will try to address any questions as soon as possible.