Vol. 32 Issue 4 Reviews

Max 5 Programming Language Update

Max 5, US$ 495 (upgrade pricing is available); Cycling ’74, 730 Clementina Street, San Francisco, California 94103, USA; electronic mail info@cycling74.com; Web www.cycling74.com/.

Reviewed by Jared Dunne
Denver, Colorado, USA

Cycling ’74’s release of Max 5 is a significant update to the company’s flagship product. In brief, Max is a visual or object-oriented programming language. The primary function of Max is to allow the design of multimedia applications by giving the artist and programmer the ability to handle different elements of time, control, and interactivity. Max 5 runs on both Macintosh and Windows operating systems.  For Macintosh systems, Max 5 requires a Mac PPC or Intel machine running OS X 10.4 or later, and 1 GB RAM.  For Windows, Max 5 requires a Windows XP or Vista machine, and 1 GB RAM.

Since Max has been around for quite some time now, and its reputation is solidly embedded in the computer music community, I won’t go into detail about all of Max’s functionality. Instead, I will only highlight the major changes that are available, or not available, in this update. 
With Max 5, Cycling ’74 completely redesigned the base of the application so as to be completely platform-independent, and the multi-processing kernel has been streamlined. Many of the new features are focused on lessening the learning curve. Some of the most significant new features include:
Integrated Documentation. A Clue Window is provided to call up reference information for, among other things, objects, menu items, attributes, and user interface features. It is a floating window that displays documentation for the item below the mouse. 
Interactive Tutorials. The once PDF-only tutorials are now accessible from directly within Max, through the Help menu.
New Patcher Interface. The Object Pallet is now a transparent, floating, resize-able, “pop-up” window. Figure 1 Multiple undo’s are available. You can now “zoom” in and out of a patch. An unlimited number of open views of the same patch are now possible. Each graphical element of the new user interface has a specific look that correlates to its function. New Patcher Keyboard commands and Auto-Completion features are now available.
Object Inspector. This is a window that is based on an attribute model. The property of any object that is an attribute can be monitored or changed in the Inspector window.
The File Browser. This is a window that manages patches, media files, and examples.  It uses a database, and you can create database queries to call up specific files. There is a preview pane at the bottom of the window that allows you to find any file and navigate to the relevant resources. You also have the ability to conveniently drag and drop files from the browser directly into your patch. 
Presentation Mode. This new mode allows the user to design patches with user interface objects. You can choose your interface modules and arrange them in an optimal layout, without disturbing your patching logic.  
Time Objects. Most Max objects that deal with time have been rewritten so you can now use them with metrical time values. Figure 2 This allows you to use, for example, a Bang object to output every eighth note. You can still use the standard milliseconds if you so desire. The new Transport object provides a master clock to control these objects.
Object Palette. The Object Palette now has resizable icons and automatically creates a visual catalog of any user interface object prototypes that you create.
Debugging Features. A new Debug window has been designed to show the execution stack as you step through a patch. Signal and Matrix probes display matrix and audio data as the mouse hovers over the patch cord. Figure 3 With Monitor Watch-Points, you can now capture and display data that flows through the patch cords.  Error messages are object specific. When you click on an error message in the Max Window, the object that generated the error is highlighted. 

Max now has a new file format. David Zicarelli, head of Cycling ’74 says this about the change:

It is entirely textual—it's based on JSON which is a more readable version of XML—and if you need to, you'll be able to look at a file and immediately see what everything means. It provides for Unicode character support, unlike the old format, which only allowed you to save comments in unicode if you checked a special box. Max 5 can also read and write files with long filenames (finally!) on both the Mac and Windows. (cycling74.com/story/2007/10/31/135346/29)

With Max 5, Cycling ’74 has left behind some of the previous versions’ functionality. One of the first things to go was the Timeline object. “I think the new musical time system, which I'll discuss in a future article, offers far more power and flexibility than the Timeline, but it is not identical. And we are by no means finished with timeline-like things for the future,” says Mr. Zicarelli (ibid).

The Env and Envi objects didn’t make the cut, either, nor did the Detonateobject. Third party user-interface objects that have a display within their own window will need to be completely rewritten. Mr. Zicarelli states:

There really aren't very many of these objects, and developing new ones is now so much easier, we expect the trade-off will be worth it in the long run. We really needed to ditch the old UI object model to be able to do any of the cool new things we're doing. (ibid)

Pluggo plug-ins based on Max 4 will need to be converted to Max 5 to function within the new environment. According to Mr. Zicarelli:

Unfortunately, this new format is unlikely to be ready when Max 5 is first released. If your life revolves around plug-in development, you'll probably want to wait to upgrade until we change our plug-in support to work with the new core environment. Support for non-Pluggo VST plug-ins has improved in Max 5. (ibid) 

Max 5 is available for download and purchase from Cycling ‘74’s Web site and its worldwide distributors. Max/MSP 5 is listed for US$ 495, the Max/MSP/Jitter bundle is US$ 699, and the Max 5 Upgrade is US$ 199. Discounts for students and educational institutions are available. Cycling ’74 has discontinued the option of Max/MSP without Jitter for academic and student versions. If you purchased Max/MSP or Max/MSP/Jitter after October 1, 2007, you are eligible for a free upgrade.