Y at-il .NET CLR/DLR implémentations de ECMAScript?

Personne ne sait de réel (i.. pas qu'une simple rumeur) implémentations de ECMAScript le ciblage de la .NET CLR/DLR? Idéalement, quelque chose comme ce que Rhino est pour Java. Une solide port de Rhino en cours d'exécution sur .NET Framework /Cadre Mono, ce serait parfait.

J'ai seulement vu une poignée de projets mentionné, mais jamais vu tout venir à la lumière ou dans la réalité quelque chose que je n'ai jamais été en mesure d'exécuter le script sur. Voici ce que j'en sais déjà:

  • MSScriptControl Contrôle ActiveX: Autant que je sache, ce Microsoft était l'un des derniers véritables conforme ECMAScript implementaiton (fonctionne JScript 5.7). J'ai intégré avec MSScriptControl mais ne considèrent pas la COM interop être une réponse à cette question. x64 est un tueur à gages pour cette option.

  • JScript.NET: Je ne compte pas JScript.NET comme il n'a jamais pu réussir à analyser n'importe quel de mes véritables scripts. Il semble avoir du mal avec les fermetures.

  • Géré JScript: Cela ressemble à ce que je veux, mais il semble être mort dans l'eau. Il était un grand exemple de mise en œuvre de la DLR, mais ensuite obtenu empêtré avec SilverLight et semble avoir disparu comme une priorité depuis 2007. Honorables de sources sur le statut de ce qui serait utile.

  • MyJScript: Construit comme un tutoriel de mise en œuvre de la DLR. Quelqu'un sait comment complet de la mise en œuvre c'est?

  • Jint: Interpréteur JavaScript pour .NET. N'a pas encore de support de Nourrissage ou try-catch-finally.

  • RemObjects Script .NET: Une intéressante concurrent encore en travaux. Je suis confus par leur marketing de ce qu'il sera réellement, mais il sonne comme il pourrait éventuellement être un ajustement. Si quelqu'un en sait plus sur ce qui pourrait être utile en tant que bien.

  • V8 pour .NET: Ce serait génial si quelqu'un portage de la V8 .NET. Pour autant que je sache, il n'existe pas un grand effort autour de ce soit. Le lien est pour une idée de l'appel à partir d'un wrapper C++ managé.

Pour le fond, je veux être en mesure d'exécuter le code JavaScript de l'intérieur .NET; c'est à dire charger un ensemble de scripts dans leur contexte et de les appeler dans un tel contexte, et de récupérer les résultats de l'exécution. Actuellement je saute à travers des cerceaux pour utiliser MSScriptControl par la lourdeur COM Interop. L'incohérence de la COM, il est vraiment difficile pour le déploiement et assurer l'uniformité de l'exécution.

J'aimerais être en mesure d'exécuter raisonnablement complexe JavaScript harnais de test de l'intérieur .NET. Ce n'est pas pour la création de l'utilisateur des macros ou simple minuscule scripts, j'ai besoin d'un vrai environnement JavaScript comme Rhino. Si la mise en œuvre était en cours d'exécution sur le dessus de la CLR (plutôt que de COM) ce serait vraiment aider avec certains des enjeux actuels.

  • Pouvez-vous exécuter rhino via kvm? ikvm.net
  • JavaScript sur Mozilla Rhino, plus de IKVM.NET plus de .NET. Ce sandwich 🙂
  • Ou Rhino sur VMKit (llvm.org).
  • Jint ne poignée de nourrissage et d'exception maintenant
  • Mon contrebande de mise en œuvre est en travaux...
  • McMillan pouvez-vous s'il vous plaît ajouter cela comme une réponse afin que nous puissions commenter avec les résultats, etc.

InformationsquelleAutor mckamey | 2009-07-02