@Zorkerman
Ich habe Erfahrung mit sowohl Jython und JRuby ... viel mehr mit JRuby.
Ich muss sagen, sie sind großartige Plattformen, und Sie erhalten den großen Vorteil dynamischer Sprachen, PLUS die reiche 3rd und 1st Party Library Unterstützung von Java, PLUS eine hoch plattformunabhängige Basis kompilierte Sprache, PLUS Speicherbereinigung in beiden Sprachen (Es ist wichtig, das Speichermanagement zu verstehen, aber ich bin der Meinung, dass es besser ist, es zu vermeiden, es sei denn, du brauchst es wirklich, zum Beispiel wenn du Treiber oder Kernel-Level-Sachen machst oder Sachen, die jede Menge Leistung erfordern).
Ich möchte nur eine kurze Anekdote geben. Ich habe kürzlich ein Ruby-Skript erstellt, um eine Solr-Instanz zu indizieren, und ich musste auf eine DB2-Datenbank zugreifen (die Quelle unserer zu indizierenden Daten). Straight Ruby ist kläglich gescheitert ... es hat eine schreckliche DB2-Unterstützung, die eine vollständige Installation von DB2 Express Edition erfordert ... die immer noch nicht wie angekündigt funktionierte (Ich konnte die Ruby-Treiber nicht kompilieren, nachdem ich die Installation beendet hatte). Die Lösung bestand darin, einfach zu JRuby zu wechseln und JDBC auf der Ruby-Seite zu verwenden, wobei einige einfach zu installierende JAR-Dateien verwendet wurden (und viel viel kleinere Dateien als die DB2-Installation).
Ich würde JRuby oder Jython definitiv empfehlen, anstatt C als Back-End zu verwenden ... Ich habe festgestellt, dass Algorithmus und Ressourcenleistung normalerweise einen viel größeren Einfluss auf die Anwendungsleistung haben als die gewählte Sprache die Java-Plattform hat so viel zu bieten (und es hat einen langen Weg seit den frühen Tagen zurückgelegt, als die Leute es als viel langsamer als C/C++ entschlüsselten). Sofern Sie nicht sehr rechenintensive Dinge tun, die nicht algorithmisch refaktoriert werden können, müssen Sie höchstwahrscheinlich nicht auf die kompilierte Sprache zurückgreifen, unabhängig von Ihrer Wahl.
PS Durch die Integration mit Java in JRuby ist sehr nahtlos (von der JRuby auf Java Seite sowieso), so eine Brücke Aufrechterhaltung kein Thema ist. Jython denke ich ist das gleiche, aber wieder ist meine Erfahrung damit viel weniger.
Genau - die meisten Dinge, die ich schreibe, sind in PHP, XML, XSLT, CSS, HTML und JS. Web-Entwicklung verwendet das beste Werkzeug für den Job an mehreren Orten die ganze Zeit. –
XSLT? Es ist wie Griechisch für mich. Sie haben jedoch SQL auf dieser Liste vergessen. –
@ Christopher Mahan: Ja! Genau, wie gesagt, "ohne es überhaupt zu merken" :) –