Was sind die Vorteile von Typen, die erstklassige Objekte sind?
-
25-10-2019 - |
Frage
Hat hier jemand gute Beispiele, bei denen Typen als erstklassige Objekte in die Hand kommen?
Ich denke, es hilft, einige mathematische Konzepte einfach zu implementieren. In der Tat sind dies die Art von Beispielen, nach denen ich suche.
Aktualisierung Um die Frage zu verdeutlichen, was kann getan werden, wenn man Funktionen zum Akzeptieren von Typen und Rückgabetypen oder zum Speichern von Typen in Variablen machen kann?
ich studiere Aldor, Obwohl es aufgrund von Lizenzproblemen etwas tot ist. Es sollen erstklassige Objekte sind, zumindest im obigen Sinne.
Lösung
Schauen Sie sich Agda2, ATS-Lang.org und andere Sprachen mit abhängigen Typen an. Nicht ganz das, was Sie gefragt haben, sondern verwandt.
Andere Tipps
Betrachtung
Wenn Typen erstklassige Objekte sind, können Sie dies tun Betrachtung.
Dynamische Fabrik.
_types = {}
register_type(typ, iden):
_types[iden] = typ
def factory(iden):
typ = _types.get(iden)
if not typ:
raise ValueError('Type not registered for %r' % iden)
return typ()
register_type(SomeClass, 'class1')
register_type(SomeOtherClass, 'class2')
print factory('class1')