Est-il possible d'utiliser des types dépendants dans l' implémentation de raquette typée existante ? (c'est-à-dire qu'ils existent dedans?)
Est-il raisonnablement possible d'implémenter un système de types dépendants à l'aide d'une raquette typée?
programming-languages
typing
type-checking
dependent-types
lisp
oeil de faucon
la source
la source
Réponses:
Andrew Kent, de l'Université d'Indiana, travaille actuellement sur les types de personnes à charge en raquette.
Il y a un ensemble de diapositives . Il y a une discussion .
Il est intéressant de noter que cela peut également avoir un impact sur Typo Clojure , qui est fortement modelé sur Typed Racket.
la source
Je pense que "faire des types dépendants" en utilisant des contrats est déjà possible. Vérifiez https://docs.racket-lang.org/guide/contracts-struct.html et recherchez «Vérification des propriétés des structures de données».
Vous pourriez dire que cela simule plutôt l'effet que de l'intégrer dans le langage. Cependant, quelque part, vous devrez écrire le code, qui indique à l'interpréteur / compilateur quelles sont ces dépendances et dans Racket, vous pouvez le faire avec des contrats.
la source