2017-06-28 14 views
1

Je fais des recherches sur l'appariement de modèles pour ma propre langue et je me demande comment Racket l'implémente. Je ne suis pas familier avec la langue et j'ai du mal à trouver mon chemin à travers its source. Je veux regarder le code où il est écrit.Où est la raquette/match dans son repo?

Quelqu'un peut-il me diriger dans la bonne direction?

Répondre

1

La source du motif matcher est ici:

https://github.com/racket/racket/tree/master/racket/collects/racket/match 

Le document sur la mise en œuvre "Matching modèle extensible dans un langage extensible" par Sam Tobin-Hochstadt est ici:

http://www.ccs.neu.edu/home/samth/match-ifl-full.pdf 
1

Chaque Les identifiants importés écrits dans Racket peuvent être inspectés en cliquant avec le bouton droit de la souris sur l'identifiant et en sélectionnant "Ouvrir le fichier de définition".

How to open defining file

Vous finirez par vous retrouver trébuché parce que la possibilité d'ouvrir le fichier de définition est pas là. par exemple. cons ne l'ai pas. La raison en est qu'ils sont des primitives écrites en C et que cela sort miraculeusement de #%kernel. Pour voir que vous aurez besoin de le trouver par searching racket sources