Many common applications include built-in macro facilities which often feature full-blown scripting engines
Applications that have to read data files with complicated formats use parsers
Do your users need to automate certain tasks in your application? Don’t write a custom macro facility; make your application scriptable!
Ultimate Example: Microsoft Office/VBA
Why invent a language and write a parser when you can use a scripting engine
Java Scripting API (https://docs.oracle.com/javase/9/docs/api/javax/script/package-summary.html)
Supports: Javascript (built in), Python, Tcl, …
Demo: /examples/beyondcompilers/scriptdemo
Initialize engine
var engine = Python.CreateEngine();
var scope = engine.CreateScope();
scope.SetVariable("varname", var);
ScriptSource source = engine.CreateScriptSourceFromString("print(varname)");
source.Execute(scope);
http://www.softwarepreservation.org/projects/FORTRAN/video/FORTRAN-1982.wmv/view
History of Fortran (~10 min) Local: “G:\CpS450\videos\FORTRAN-1982.wmv”