3 choses géniales en Lisp.
(black7375.tistory.com)Grâce au coup de projecteur de l’équipe Racket,
voici une présentation de fonctionnalités implémentées de manière avancée dans les langages de la famille Lisp.
- Les macros les plus puissantes et les plus sûres de Racket
1.1 Macros sûres
- C vs Racket : pourquoi une macro doit être de la syntaxe
- Common Lisp vs Racket : pourquoi une macro doit être hygiénique
1.2 Macros puissantes
- Vue d’ensemble des transformations à l’aide d’objets Syntax
- Manipuler des objets Syntax et des listes
- Réaliser directement une transformation avecdefine-syntax
- Écrire de manière déclarative avec des macros à filtrage par motifs
- Temps de compilation et temps d’exécution lors de la définition de macros
- Macros qui définissent des fonctions ou des variables - Le binding dynamique avec les threads de Racket
2.1 Qu’est-ce que le binding dynamique ?
2.2 Pourquoi le binding dynamique ?
- Éviter la pollution globale inutile des variables globales
- Supprimer les paramètres inutiles dans le contexte
- Réduire le boilerplate inutile dans l’injection de dépendances
2.3 Binding dynamique thread-safe - Le système orienté objet dynamique et flexible de Common Lisp
3.1 Diverses implémentations orientées objet
3.2 Système de méthodes flexible
- Méthodes extensibles sans modifier la définition des classes
- Dispatch multiple selon le type d’objet
- Combinaison de méthodes pour contrôler les préoccupations transversales
3.3 Objets dynamiques
3.4 MOP (Meta-Object Protocol), qui étend le système orienté objet
- Un compteur permettant de contrôler l’état à la création
- Un vérificateur de type pour étendre les fonctionnalités existantes
- Ajouter des mots-clés à la définition de classe pour valider les valeurs
3.5 Héritage multiple
- Les problèmes de l’héritage multiple en C++
- Règle de la CPL (Class Precedence List)
5 commentaires
Il faudra absolument que je lise ça quand j’étudierai plus tard !!
Merci !! haha
Je me demande ce qui vous a fait tomber sous le charme de
racketparmi ses nombreux dialectes !Je l’ai découvert en étudiant HtDP (How to Design Programs) comme une version plus facile de SICP.
La syntaxe est propre et vraiment bien conçue.
Du coup, en m’y intéressant et en regardant différentes choses, je me suis rendu compte qu’il y avait plus de parties bien conçues que je ne l’imaginais..
Merci ! Je ne connaissais pas ce livre.