CMN: Common Music Notation

Eine Einfürung in das CMN format ist in Beyond MIDI Kapitel 16. Sie können das Program und das Manual von the CMN page herunterladen.

Das CMN-Format sieht LISPig aus, wie man es von einem Programm erwartet, das in LISP geschrieben ist. Ich sehe aber kein großes Problem darin, CMN-Dateien mit Programmen in anderen Sprachen zu lesen und zu schreiben. (In einem früheren Leben habe ich in LISP programmiert und benutze zur Zeit hauptsächlich Java . Ich bereue den Schritt im Allgemeinen nicht, vermisse aber doch einige nette Eigenschaften von LISP).

CMN-Dateien zu lesen geht wie folgt: Bauen Sie einen Objektbaum mit dem ersten Element der Liste als Eltern-Knoten. Während XML -Knoten zwei Achsen beinhalten (Attribute und Kind-Elemente), hat LISP nur eine.
Beispiel: (chord (notes b3 g4) q). Von LISP aus gesehen ist notes eine Funktion mit den Parametern b3 und g4. Die Funktion chord hat zwei Parameter (sehen Sie sie?). Wenn Sie daraus einen Objektbaum in Java bauen, erstellen Sie einfach ein chord-Objekt mit zwei Feldern. Das erste beinhaltet eine Referenz auf die Noten und das zweitde die Information, daß es sich um viertelnoten handelt.

Sie (und Ihr Programm) brauchen also nichts von LISP zu verstehen. Es ist möglich, das CMN-Format zu erweitern, aber das geht mit NIFF ebenfalls. CMN wird mit Funktionen erweitert und NIFF mit chunks, aber für ein Programm ist es dasselbe: was man nicht kennt wird ignoriert. (OK, eines ist mit CMN schwieriger: es ignoriert, was zu nil evaluiert und Sie können außerhalb LISP nicht evaluieren. Ich denke aber, daß das im Regelfall kein Problem ist.

Programme, die CMN: Common Music Notation exportieren:

CMN: Common Music Notation

CLISP

CMN: Common Music Notation importiert CMN

Programme, die CMN: Common Music Notation importieren:

CMN: Common Music Notation

CLISP

CMN: Common Music Notation exportiert CMN

Fragen, Vorschläge, defekte Links zu CMN: Common Music Notation

Mein neues eBook...

Professionell Ankern - vom NLP-Practitioner bis zum Coaching und die passende Webseite