BALLONES : A Computer Interpreter of Classical Ballet Terminology

Natalie Louise Hall-Marriott & Don Herbison-Evans ,

Technical Report TR264 (1989), updated 7 May 2012, 22 September 2019
Basser Department of Computer Science (now School of Information Technologies)
University of Sydney, Australia


Classical ballet dancers the world over know the language of ballet and use it everyday in their classes and on stage. The aim of this project was to classify this language and produce a classical ballet interpreter, which in turn will produce animation of the ballet. This interpreter, known as 'Ballet Animation Language Linked Over Nudes Ellipsoid System', or BALLONES for short, is a tool for everyone in the ballet community particularly choreographers, classical ballet teachers, and dancers. Since the interpreter accepts the dancers' own language, it can be used by dancers without their having to learn a new notation technique.

The BALLONES system has modules which are related as shown in figure 3.1 .

The system consists of

  • the lexical analyser 'Dance.lex',
  • the YACC parser 'Dance.yacc', and
  • a set of NUDES procedures.

    It accepts as input a file containing a formal description of a classical ballet sequence. This is lexically analysed and parsed, and the sytem generates a NUDES program which animates the input sequence. BALLONES utilises some pre-written files containing declarations of the figure, and of the movement subroutines used, to produce this NUDES program. This is called 'Codefile.n'. The BALLONES system automatically inputs this file to the NUDES interpreter producing files called Codefile.h.*. These can be displayed on a Sun workstation by typing 'Show Codefile'.

    The project consisted of three main sections:

  • constructing a formal ballet language,
  • writing NUDES subroutines for each of the steps in the language, and
  • writing an interpreter to convert the input into a NUDES script.

    There are three areas with possibilities for its use.

    The first is computer assisted instruction of classical ballet. Ballet techniques can reach audiences in the home and classroom, and the steps and positions can be displayed at a pace suitable to the requirements of each student individually.

    The second use is the recording of choreographic works. The system can be used to store dance descriptions and enchainments (chains of steps), and these viewed at any time.

    The third use involves artificial intelligence to create a computer model of human understanding of the dance process. This could aid in the study of human movement and assist perhaps with decisions regarding choreographic problems.