NGWS SDK Documentation  

This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!

Relationship to Unmanaged COM

The VOS type system is centered on structured data, classes, and interfaces, which provide methods, properties and events, much like Unmanaged COM. The VOS type system adds the further notions of single inheritance, fields, exceptions, constructors, static fields and static methods.

The types managed by the NGWS runtime for all languages are represented as types within the Virtual Object System. The components of a type (instance and static fields; virtual, instance, and static methods; events; and properties) are defined logically in terms of other VOS types.

All types are represented in metadata and are stored with the code that implements the type. Once a language reads the metadata that defines a VOS type, it can create instances, create referencing variables, and invoke methods - just as if the type had been defined in the importing language. If the language supports defining new types via inheritance, the language can make a subclass of the imported class. As such, the VOS makes language integration, a significant step beyond traditional interoperation, possible.