Ich hab mal in einem Projekt mit FreePascal als "Script" gearbeitet. Das ist zwar nicht wirklich "Script" aber ging recht gut und vor allen Dingen schnell.
Intern habe ich den Code den der User geschrieben hat in eine EXE kompiliert, die dann per NamedPipe mit dem Hauptprogramm kommuniziert hat. Allerdings könnte man das auch in eine
DLL kompilieren, die das Hauptprogramm lädt.