w3schools - ¿Hay una implementación de JavaScript(ECMAScript) escrita en Python?
javascript what is let (6)
¿Hay implementaciones de JavaScript (ECMAScript) escritas en Python puro ? Está bien incluso si su implementación es muy lenta.
¿Has oído hablar de PyV8 ? Es una envoltura de Python del motor de JavaScript V8 de Google. Puede ser lo que estás buscando.
Es posible que desee echar un vistazo a pydermonkey o python-spidermonkey pydermonkey , y creo que ambas son implementaciones de python del intérprete de JavaScript de Mozilla.
Hay uno, de un nivel de integridad desconocido, escrito en RPython (un subconjunto de Python, es decir, se ejecuta como Python normal): https://bitbucket.org/pypy/lang-js/overview
Le recomendaría que se limite a node.js en su cuadro de desarrollo local, traduzca sus archivos de CoffeeScript a JavaScript e implemente los scripts traducidos con sus aplicaciones.
Entiendo que desea evitar tener node.js en sus servidores, eso es justo y bueno. Saltar a través de aros con Python invocar JavaScript para traducir CoffeeScript me parece más complicado de lo que vale.
Jispy para incrustar JS en Python.
De los documentos:
Un intérprete de JavaScript en Python
Jispy es un intérprete para un subconjunto estricto de JavaScript, llamado con cariño LittleJ (LJ) . Emplea un descenso recursivo para analizar y es muy fácil de extender.
Construido para incrustar JavaScript
La visión original de Jispy era permitir la integración perfecta de programas JavaScript en proyectos de Python. De forma predeterminada, no expone el sistema de archivos del host ni ningún otro elemento sensible. Se proporcionan algunas comprobaciones de bucle infinito y recursión infinita para hacer frente a posibles códigos maliciosos.
Viene con una consola interactiva, para que pueda comenzar a utilizarlo en muy poco tiempo.
Espero que esto ayude.
Parece que ya no está en desarrollo activo, pero puede consultar pynarcissus
, http://code.google.com/p/pynarcissus/source/browse/trunk/jsparser.py
Parece que también está disponible un enlace a V8 (intérprete de JavaScript en Google Chromium), http://www.advogato.org/article/985.html