Java Music Specification Language, an introduction and overview
Nick Didkovsky, Phil Burk · University of Michigan Library Repository · 2001
Java Music Specification Language (JMSL) is a new Javabased development tool for experiments in algorithmic composition, live performance, and intelligent instrument design. JMSL is the evolutionary successor to the Hierarchical Music Specification Language (Polansky, Rosenboom, and Burk, 1987). While HMSL was Forthbased, JMSL is written in Java. JMSL's features include: x Stylistically neutral core x Polymorphic hierarchical scheduling x Device abstraction. JMSL supports Robert Marsanyi's JavaMIDI, Softsynth's JSyn, MidiShare (Orlarey and Lequay 1989), and Sun's JavaSound at a level that hides their implementation. x An algorithmically extensible common music notation editor called JScore which features an algorithmic notation and transformation plugin API. x Its Java core. As opposed to a closed system with a proprietary language, JMSL allows the programmer to leverage off the vast resources available to Java developers, including Java's database connectivity, networking tools, 2D and 3D graphics packages, servlet API, and numerous third party packages. x The composer can create stand-alone JMSL applications or deploy JMSL applets on the web. x JMSL offers a freely downloadable Lite version. x Runs on Windows, MacIntosh, and Linux platforms