Max (software) - Language

Language

Max is named after the late Max Mathews, and can be considered a descendant of MUSIC, though its graphical nature disguises that fact. As with most MUSIC-N languages, Max/MSP/Jitter distinguishes between two levels of time: that of an "event" scheduler, and that of the DSP (this corresponds to the distinction between k-rate and a-rate processes in Csound, and control rate vs. audio rate in SuperCollider).

The basic language of Max and its sibling programs is that of a data-flow system: Max programs (called "patches") are made by arranging and connecting building-blocks of "objects" within a "patcher", or visual canvas. These objects act as self-contained programs (in reality, they are dynamically-linked libraries), each of which may receive input (through one or more visual "inlets"), generate output (through visual "outlets"), or both. Objects pass messages from their outlets to the inlets of connected objects.

Max supports six basic atomic data types that can be transmitted as messages from object to object: int, float, list, symbol, bang, and signal (for MSP audio connections). A number of more complex data structures exist within the program for handling numeric arrays (table data), hash tables (coll data), and XML information (pattr data). An MSP data structure (buffer~) can hold digital audio information within program memory. In addition, the Jitter package adds a scalable, multi-dimensional data structure for handling large sets of numbers for storing video and other datasets (matrix data).

Max is typically learned through acquiring a vocabulary of objects and how they function within a patcher; for example, the metro object functions a simple metronome, and the random object generates random integers. Most objects are non-graphical, consisting only of an object's name and a number of arguments/attributes (in essence class properties) typed into an object box. Other objects are graphical, including sliders, number boxes, dials, table editors, pull-down menus, buttons, and other objects for running the program interactively. Max/MSP/Jitter comes with about 600 of these objects as the standard package; extensions to the program can be written by third-party developers as Max patchers (e.g. by encapsulating some of the functionality of a patcher into a sub-program that is itself a Max patch), or as objects written in C, C++, Java, or JavaScript.

The order of execution for messages traversing through the graph of objects is defined by the visual organization of the objects in the patcher itself. As a result of this organizing principle, Max is unusual in that the program logic and the interface as presented to the user are typically related, though newer versions of Max provide a number of technologies for more standard GUI design.

A large number of people use Max, even if they are not aware of it. Max documents (called patchers) can be bundled into stand-alone applications and distributed free or sold commercially. In addition, Max can be used to author audio plugin software for major audio production systems.

With the increased integration of laptop computers into live music performance (in electronic music and elsewhere), Max/MSP and Max/Jitter have received quite a bit of attention as a development environment available to those serious about laptop music/video performance.

Read more about this topic:  Max (software)

Famous quotes containing the word language:

    Men sometimes speak as if the study of the classics would at length make way for more modern and practical studies; but the adventurous student will always study classics, in whatever language they may be written and however ancient they may be. For what are the classics but the noblest recorded thoughts of man?... We might as well omit to study Nature because she is old.
    Henry David Thoreau (1817–1862)

    Strange goings on! Jones did it slowly, deliberately, in the bathroom, with a knife, at midnight. What he did was butter a piece of toast. We are too familiar with the language of action to notice at first an anomaly: the ‘it’ of ‘Jones did it slowly, deliberately,...’ seems to refer to some entity, presumably an action, that is then characterized in a number of ways.
    Donald Davidson (b. 1917)

    What distinguished man from animals was the human capacity for symbolic thought, the capacity which was inseparable from the development of language in which words were not mere signals, but signifiers of something other than themselves. Yet the first symbols were animals. What distinguished men from animals was born of their relationship with them.
    John Berger (b. 1926)