Skip to main content

Paul Berg's PILE and Barry Truax's POD

In the 1970's some synthesis programs popped up as alternatives to the MUSIC N series: Herbert Brun's SAWDUST, Paul Berg's PILE, Barry Truax's POD, Gottfried Michael Koenig's SSP, and Robert Rowe's RECUR. The latter two have extremely little documentation and are more or less lost to time, unless I overlooked something.

I was originally going to write a blog post about SAWDUST, but the manual Arun Chandra wrote for it is comprehensive and pretty much explains everything you need to know. The gist is that the user interactively defines short sample-and-hold waveforms by typing in a sequence of sample values and durations, and some transformations are provided such as repetition (to create static oscillations) and interpolation (to create evolving timbres and pitch bends). SAWDUST is a sort of cousin to Xenakis' breakpoint synthesis, but preferring smooth, deterministic trajectories to specified destinations as opposed to random walks controlled by probability distributions. Music made with the software is generally hard to find, but Brun's composition Dust is on YouTube.

While researching SAWDUST, I found out about two contemporary programs, PILE and POD. Paul Berg's PILE composition I Never Knew You Cared is worth a listen. The sound design is impressive for 1978.

PILE is a primitive compiled audio programming language for the PDP-15. The audio is produced in real time, sample by sample, and unbuffered. The only way to produce sound is to send a 12-bit sample value to the DAC with the CONVERT instruction (which presumably also incurs a wait of a single sample, although it's not clear from Berg's paper). While no sample rate is explicitly stated, a spectrogram analysis of Berg's piece shows strong aliasing at a sample rate of around 6540 Hz. Crunchy!

As a language, PILE has variables (one of which is distinguished as the "accumulator"), 18-bit integer arithmetic and Boolean operations, a random number generator, and even crude support for arrays, which seem to be used to define envelopes and wavetables. Non-structured programming is supported with labels and some goto-like instructions, such as CHOOSE, which jumps to one of a list of random labels, and ZERO?, which jumps if the accumulator is zero.

PILE isn't a novel type of synthesis in itself, but rather a framework for implementing various types of synthesis. As with all musical tools, the inherent non-neutrality of PILE means that certain aspects of synthesis are made easy, difficult, or impossible, and the biases are reponsible for the "sound" of PILE. The software has no support for parallelism, so polyphony is more or less off the table. The features that PILE does bring to the forefront are revealed by a close listen to I Never Knew You Cared: linear amplitude fades, linear frequency sweeps, shameless click discontinuities, crude FM and wavetable synthesis, and hard panning. Also noteworthy is time quantization of timbre; stairstepping is audible as synthesis parameters are changed.

Barry Truax's POD was a series of programs also for the PDP-15 (but supported other computers). POD is quite different from PILE.