# Welche Scriptsprache bietet sich für mich an?



## Xandaros (1. Aug 2011)

Okay, folgendes:
Ich möchte in meiner Java Anwendung eine Scriptsprache implementieren.
Der User soll in der Lage sein, eigene Scripts zu schreiben. Die Scriptsprache sollte eine, in meinen Augen sinnvolle(Sinnvoll finde ich zB Java oder Lua. Python gehört nicht dazu), Syntax benutzen, die Leicht zu erlernen ist.

Die Scriptsprache sollte nicht auf Java zugreifen können, sondern vielmehr von mir vorgefertigte Funktionen verwenden. (Das wichtigste, wenn das stimmt ist alles andere schon fast egal )
Objekt-Orientiert ist natürlich schön, muss aber nicht sein.

Ich hoffe es gibt so etwas, ich hab bis jetzt nur Scriptsprachen gefunden, die einem praktisch "Vollmacht" geben.

Edit: Warum hab ich das Gefühl, dass dieses Forum verdammt schlecht Besucht ist?


----------



## Tomate_Salat (1. Aug 2011)

Was hast du den gegen Python?! Gerade mit Jython lässt es sich einfach implementieren + verwenden. Wenn dir Lua gefällt, dann verwende doch lua. Das gibt es auch für Java, heißt glaub lua4j oder so, google ist hier dein Freund. Ansonsten würde mir noch Javascript einfallen.


----------



## maki (1. Aug 2011)

> Die Scriptsprache sollte nicht auf Java zugreifen können, sondern vielmehr von mir vorgefertigte Funktionen verwenden.


Schreibe dir doch deine eigene (e)DSL, oder nutze eben Groovy, Python/Jython, etc. pp.


----------



## Xandaros (1. Aug 2011)

Ich hab zuerst auch Versucht meine eigene Scriptsprache zu entwerfen, hab mir aber irgendwann gedacht: So etwas muss es doch schon geben, wozu das Rad neu erfinden?
Wahrscheinlich hab ich es mir auch übermäßig kompliziert gemacht, aber das Spielt auch keine große Rolle.

Ich finde es ziemlich unübersichtlich. Ich guck mir zB die Groovy Homepage an und habe keine Ahnung was es jetzt eigentlich macht.
Und vor allem: Wie kann ich meine eigenen Befehle hinzufügen?
Sämtliche vorgefertigte Befehle, werde ich eh nicht gebrauchen können. (na gut, println ist vielleicht noch ganz nützlich...)

Im Grunde brauch ich nur einen Interpreter, dem ich sage welche Befehle es gibt und mich um das Ausführen selbst kümmre.

PS: Ich habe das Gefühl, das meine Beiträge etwas fordernd klingen. Wenn dies der Fall ist, bitte ich das zu Entschuldigen, das ist nicht gewollt.


----------



## escalate (1. Aug 2011)

Xandaros hat gesagt.:


> Und vor allem: Wie kann ich meine eigenen Befehle hinzufügen?


Man definiert z.B. eine Funktion, wie in den meisten Programmiersprachen? 



> Sämtliche vorgefertigte Befehle, werde ich eh nicht gebrauchen können. (na gut, println ist vielleicht noch ganz nützlich...)


Stört das, wenn welche da sind? Bei Python gibt es auch ein paar Möglichkeiten, die eingebauten Funktionen "stillzulegen", wenn die wirklich unerwünscht sind.


----------



## Xandaros (3. Aug 2011)

Ich würde ja den ersten Post editieren, aber er lässt mich nicht...
Ich benutze jetzt BeanShell. Das ist zwar das allmächtige, was ich nicht wollte, aber so tragisch ist es jetzt nicht...

Wenn jemand etwas ähnliches sucht: Nachdem ich angefangen habe BeanShell zu benutzen, hab ich JavaCC gefunden. Das sieht nach dem aus, was ich gesucht habe...


----------



## Noctarius (4. Aug 2011)

Warum nutzt du nicht einfach den ScriptManager mit einem JDK? Dann hast du Java als "Scriptsprache" zur Verfügung. BeanShell ist ja quasi eine Untermenge von Java 

Scripting for the Java Platform


----------

