Je joue avec le DLR pour mieux le comprendre. Je ne suis pas encore tout à fait familier avec tous ses concepts et sa terminologie tellement désolé pour toute erreur terminologique ou conceptuelle dans ma question. Fondamentalement, la façon dont je le comprends est que vous faites circuler des objets dans les arbres d'expression mais que vous utilisez des classeurs pour exposer la fonctionnalité dynamique de vos objets à d'autres langages compatibles DLR. Ainsi, au lieu de faire un ajout, par exemple, directement dans l'arbre d'expression (Avec expression.Add), vous créez un classeur qui est appelé par le site d'appel chaque fois que cela est nécessaire et fait l'addition pour vous. Cependant, puisque vous passez des objets autour, à la fin de l'opération d'addition (si les opérandes sont, par exemple, deux valeurs Int32) vous devrez encadrer l'Int32 résultant à un objet puisque (toujours dans le classeur) que ce que le site d'appel attend. J'ai un peu peur que cette constante boxe/unboxing affecte quelque peu la performance de l'exécution.Éviter la boxe inutile dans le DLR
Est-ce vraiment la façon dont il est censé fonctionner (avec tous les boxe/unboxing) ou est-ce que je manque quelque chose?