ftp.nice.ch/pub/next/unix/audio/fugue.README

This is the README for fugue.s.tar.gz [Download] [Browse] [Up]

This is Fugue, a language for sound synthesis and composition.

Fugue was developed by Roger Dannenberg, Chris Fraley, and George Polly
	at Carnegie Mellon University.

Fugue is Copyright (c) 1990, Carnegie Mellon University.  It is derived in
	part from XLISP, Copyright (c) 1988, David Betz, and in
	part from Canon, Copyright (c) 1988, Roger B. Danneberg.

Fugue may be used freely for non-commercial use, but you may not redistribute
	modifications without permission.  I am very interested in developing
	Fugue further, and I solicit your help.  Please contact me at
	Roger.Dannenberg@cs.cmu.edu if you are interested in extending Fugue.

Documentation: Unfortunately, learning Fugue is hampered by poor documentation.
	I suggest you read the following papers (contact me if your library
	does not have these):

	Dannenberg, "The Canon Score Language", Computer Music Journal,
		13(1) (Spring 1989), pp. 47-56.
		This talks about behavioral abstraction and the basic
		temporal control mechanisms.  Canon deals with MIDI while
		Fugue deals with sounds, but otherwise the languages are
		very similar.  Fugue does not allow time-varying 
		transformations (yet) as does Canonl.

	Dannenberg and Fraley, "Fugue: A Signal Manipulation System with
		Lazy Evaluation and Behavioral Abstraction", Proceedings
		of the 1989 ICMC, pp. 76-79.
		This is the only Fugue paper so far, but due to page
		limitations, this is pretty much just an extended introduction.

	Betz. XLISP: An Object-oriented Lisp.  Version 2.0.  (Manual for
		XLISP is in doc/xlisp20.doc as an ascii file.)
		This tells you all about XLisp.  Fugue was created by
		extending XLisp with a new data type (sound) and many
		new functions, but generic lisp manipulation and arithmetic
		functions are all described here.

	doc/lisp.doc -- this file describes functions for sound manipulation
		in Fugue.

	doc/*.doc -- there are a number of other short documentation files
		in this directory.  Look them over.  Someday, these will
		all be organized into one manual (I hope).

	test/ex/demo*.lsp -- you should run these one by one and study the
		code.  These examples demonstrate much of what Fugue can
		do in an number of simple examples.

Running Fugue: Once you get Fugue installed, go to the fugue/test directory
	and type "../xl".  You should get a banner and a prompt.  Try typing
	(load "ex/demo1").  I usually run emacs in another window so I switch
	between editing code and trying things out interactively.  You can
	also spawn a shell within emacs and run Fugue there.

	Fugue is not really set up for multiple users, especially since
	init.lsp expects to find "../fugue.lsp".  You might want to change
	this path to an absolute one to make it easier to run Fugue from
	any directory.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.