J'ai eu du mal à comprendre la traduction de PyPy. Cela ressemble à quelque chose de révolutionnaire simplement en lisant la description, mais j'ai du mal à trouver une bonne documentation sur la traduction d'un vrai morceau de code vers quelque chose comme LLVM. Est-ce qu'une telle chose existe? La documentation officielle de PyPy ne fait que survoler la fonctionnalité, plutôt que de fournir tout ce que je peux essayer moi-même.Où puis-je en savoir plus sur la fonction de traduction de PyPy?
Répondre
Ce document semble aller dans un peu de détails (et je pense une description complète est hors de portée pour une réponse stackoverflow):
L'idée générale de la traduction d'une langue à l'autre n'est pas particulièrement révolutionnaire, mais il n'a que récemment gagné en popularité/applicabilité dans des applications «du monde réel». GWT fait avec Java (génération Javascript) et il y a une bibliothèque pour traduire Haskell dans diverses autres langues (appelé YHC)
Vous cherchez une traduction spécifique à Python, ou simplement le général "comment compilez-vous du code en bytecode"? Si ce dernier est votre cas, vérifiez the LLVM tutorial. Je trouve surtout le chapitre deux, qui vous apprend à écrire un compilateur pour votre propre langue, intéressant.
Si vous voulez un document à la main sur des exemples, PyPy's Getting Started a une section intitulée « Essayer le traducteur".
Traducteur PyPy est en général, pas destiné à une utilisation plus publique. Nous l'utilisons pour traduire notre propre interpréteur python (y compris JIT et GC, tous deux écrits en RPython, ce sous-ensemble restreint de Python). L'idée est qu'avec un bon JIT et GC, vous serez capable d'accélérer même sans connaître ou utiliser l'outil de traduction de PyPy (et plus important encore, sans en vous limitant à RPython).
Cheers, Fijal
Il ressemble à quelque chose d'absolument révolutionnaire de la simple lecture de la description,
Pour autant que je sache, PyPy est nouvelle dans le sens où il est le premier système expressément conçu pour mettant en œuvre langues. D'autres outils existent pour aider avec une grande partie du front-end, comme les générateurs d'analyseurs, ou pour le back-end, comme la génération de code, mais il n'existait pas grand chose pour connecter les deux.
- 1. Où puis-je en savoir plus sur les pthreads?
- 2. Où puis-je en savoir plus sur la compression de texte en Java?
- 3. Où utiliser l'outil de traduction Zend Framework
- 4. Où puis-je en savoir plus sur ordonnanceurs, en particulier, le noyau Linux Scheduler
- 5. Où aller pour en savoir plus sur l'architecture web? Exemple Youtube?
- 6. Où puis-je en savoir plus sur les alertes ou les notifications SQL Server?
- 7. recommandations sur un livre pour en savoir plus sur l'espacement
- 8. En savoir plus .NET 3.5
- 9. ressource pour en savoir plus sur les prédicats
- 10. Traduction de paroles en html
- 11. Chaîne de traduction en Drupal
- 12. En savoir plus et lire moins confondu
- 13. Où est la déclaration de la fonction dans bash?
- 14. Traduction de JSON en objets dijit personnalisés
- 15. Traduction de l'idiome de jquery en YUI
- 16. Traduction en bloc du contenu de la table
- 17. algorithme de traduction
- 18. Quelle est la meilleure ressource gratuite pour en savoir plus sur Ms IIS?
- 19. Traduction automatique de C# enum en JavaScript
- 20. la sortie de traduction WTP Eclipse
- 21. En utilisant la fonction Jquery la plus proche()?
- 22. Profiter des capacités de traduction ODBC
- 23. En savoir plus Caractéristique avec JQuery slideToggle Méthode
- 24. Où mettez-vous la documentation de la fonction pour qu'elle apparaisse sur intellisense?
- 25. Comment construire un moteur de traduction de langue en Java
- 26. Transaction ActionScript Traduction
- 27. Quelles ressources en ligne sont disponibles pour en savoir plus sur VxWorks?
- 28. Algorithme 2D Référentiel traduction
- 29. Fonction DirectoryExists plus rapide?
- 30. de plus en plus ServerLimit & MaxClients sur Apache
Le lien est mort (PyPy déplacé). Est-ce le même document? http://pypy.readthedocs.org/en/latest/translation.html – leewz
@leewangzhong C'est probablement le cas, mais je crains de ne pas savoir exactement à quoi ressemblait le lien original à ce stade. – rcreswick
Oh oui, nous avons des moyens de le savoir. https://web.archive.org/web/20111227090444/http://codespeak.net/pypy/dist/pypy/doc/translation.html. Vous méritez une mise à jour de votre réponse? – leewz