Beispiel einer Recorddefinition. Code ist von http://www.3480-3590-data-conversion...layouts-1.html
Die erste Zahl gibt den Level des Records an, gefolgt vom Recordnamen. PIC **** ist der Datentyp und die Länge. Im Grunde hast du damit schon deinen Baum. Du kannst damit nicht so viel machen wie in anderen Programmiersprachen aber rein vom Prinzip her ist die Definition des Baumes sehr einfach und übersichtlich.
Wenn du jetzt den Record PRESIDENT hernimmst, dann hast du eine Variable die 23 Zeichen(15+8) lang ist und aus dem Last-Name und dem First-Name besteht. Du kannst entweder den String "MUELLER________MANN____" direkt mit einem Move in President schreiben und dann mit Last-Name oder First-Name auf die entsprechenden Stellen zugreifen, oder du schreibst beides extra in ihre jeweiligen Records hinein. Aber das war dann auch schon die ganze Magie. Mit Cobol kann man nicht die ganze genialität dieser Syntax geniesen.
Achso, das mit dem Ansprechen der Variablen war eher als Beispiel was man dann in COBOL damit anstellen kann gedacht. Was ich hauptsächlich vermisse ist die Möglichkeit, durch irgendwelche Node Objekte auf ähnlich übersichtliche Art und Weise einen Baum zu erstellen.
Das ähnlichste was mir für Java einfallen würde wäre das hier:
Aber gut lesbar ist das nicht und wenn man nen Formatter vorgesetzt bekommt stehen die Chancen gut, dass der die eigene Formattierung über den Haufen wirft.