В
NemerleWeb мы умеем генерировать классы из описания типизации JavaScript на базе TypeScript-а.
Однако у TypeSript-а структурная типизация , что позволяет писать такой код:
interface A {
F() : { x : any; y : string; };
F(a : any) : { x : number; };
G(val : { x : any; y? : string; }) : void; // y? - означает что в типе не обязан быть 'y'
}
...
var a = GetA();
a.G(a.F());
a.G(a.F(1));
Неясно как лучше это перевести на Nemerle.
Есть несколько вариантов , но в итоге все сводится к тому, что нужна структурная типизация в CLR
Может есть свежие идеи ?