Type-based polymorphism exists at compile time in the ability to use type variables which are re-bound per function invocation. At run-time, there are a couple different notions of polymorphism. First, Ace supports sum types by allowing the declaration of types with multiple data constructors. ...
can form the basis for an interface declaration, however, in the current implementation the type checker doesn't check that the subclass including the abstract module provides an implementation for all the abstract methods. If an abstract method is invoked at run-time, an exception will be ...
translating virtual method invocation of an object, including performing type checking, by opening the object, providing a new type variable for the object's dynamic type, obtaining a virtual table for the object, fetching a method out of the virtual table, and calling the method on the opened...
Be advised that in the following example invocation of the nullable extension method does not occur, due to the specific nature of generic declaration, not detailed further in here. You may need to resort to a `ConvertContext`. Consult the documentation for details. ```cs int? nullInt =...