In der kurzen Ausführung ist die einfachste Lösung, Inline :: Python zu verwenden. Kurz darauf wird ein Befehlszeilenskript aufgerufen.
Wenn Sie auf lange Sicht einen Server verwenden, um RPC-Funktionalität bereitzustellen oder einfach ein Befehlszeilenskript aufzurufen, erhalten Sie die zukunftssicherste Lösung.
Warum?
Dadurch sind Sie nicht an Perl oder Python als Sprache gebunden, die zum Erstellen der Systeme verwendet wird, die die von Ihrer Bibliothek bereitgestellten Dienste nutzen. Beide Methoden erstellen eine klare, sprachunabhängige Schnittstelle, die Sie in jeder Entwicklungsumgebung verwenden können, die Sie verwenden.
Je nach Ihren Anforderungen können einige der angebotenen Optionen die "beste Wahl" sein. Abhängig davon, wie sich Ihre Bedürfnisse im Laufe der Zeit entwickeln, kann eine andere Wahl als "beste" enthüllt werden.
zu dieser Mein Ansatz wäre, ein paar Fragen zu stellen:
Wie oft ändern Sie Entwicklungs-Tools. Sie sind von Perl zu Python gewechselt. Hast du mit Tcl angefangen und bist nach Perl gegangen? Wirst du in 1, 5 oder 10 Jahren auf die spannende neue Sprache X wechseln? Wenn Sie die Werkzeuge häufig ändern (was auch immer das bedeutet), sollten Sie die Kompatibilität mit Cross-Tools betonen.
Wie schnell ist schnell genug? Ist die Startzeit für Befehlszeilenlösungen in Ordnung? Verlangsamt Inline :: Python die Dinge zu sehr (Sie initialisieren immer noch einen Python-Interpreter, der nur in Ihren Perl-Interpreter eingebettet ist)?
Basierend auf den Antworten auf diese Fragen würde ich tun die einfachste Sache, die wahrscheinlich arbeiten wird.
Meine Vermutung ist, das heißt, in dieser Reihenfolge:
- Inline :: Python
- Befehlszeilenscripts
- einen RPC-Server-Build
Inline :: Python ziemlich gut funktioniert, kann es Seien Sie jedoch etwas seltsam, wenn Sie bestimmte Arten von Variablen übergeben. – GWW
Danke. Ich mochte alle Antworten, aber das scheint sehr portabel. – Escualo