LISP SUPERCOLLIDER
------------------
AMERICAN PRIMITIVE, VOL. 2
`HSC3-LISP` is a simple [LISP][lisp] interpreter.
The only data type is the [SUPERCOLLIDER][sc3] `UNIT GENERATOR`.
A LISP answer to the eternal question,
[WHY SUPERCOLLIDER?](sw/hsc3-graphs/html/why-supercollider.scd.html)
~~~~
(HEAR
(LET ((R (RESONZ (MUL (DUST AR 0.2) 50) (RAND 200 3200) 0.003))
(S (MIX (CLONE 10 R)))
(Z (DELAY-N S 0.048 0.048))
(C (COMB-L Z 0.1 (MUL-ADD (LF-NOISE1 KR (RAND 0 0.1)) 0.04 0.05) 15))
(Y (MIX (CLONE 7 C)))
(F (LAMBDA (I) (ALLPASS-N I 0.05 (CLONE 2 (RAND 0 0.05)) 1)))
(X ((FOLDL1 COMPOSE (REPLICATE 4 F)) Y)))
(ADD S (MUL X 0.2))))
~~~~
There is an OSX (10.9.3) binary ([hsc3-lisp](sw/hsc3-lisp/osx/hsc3-lisp.xz).[xz](http://tukaani.org/xz/)),
or to build type:
~~~~
cd hs ; prefix=~/opt make install
~~~~
An environment variable locates the HSC3-LISP library files:
~~~~
export HSC3_LISP_DIR=$HOME/sw/hsc3-lisp/lisp
~~~~
To hear the above type `C-cC-e` in EMACS, or in a shell type:
~~~~
hsc3-lisp ~/sw/rsc3/help/graph/why-supercollider.scm
~~~~
There is a [TUTORIAL](?t=hsc3-lisp&e=help/tutorial.lisp),
and [TRANSLATIONS](?t=hsc3-lisp&e=help/jmcc.lisp) of graphs by [JAMES
MCCARTNEY](http://audiosynth.com/autobio/emu.jpg) from the `SC2`
manual.
HSC3-LISP is `CASE-INSENSITIVE`, in EMACS you can type `C-x C-l` to
time travel.
HSC3-LISP follows the [HASKELL][hs] supercollider ([HSC3][hsc3]) rules.
HSC3-LISP thinks `scsynth` is listening at the standard port (57110).
HSC3-LISP is POST-[ML](http://standardml.org), `(EQUAL? (MAP (+ 1) (LIST 1 2 3)) (LIST 2 3 4))`.
HSC3-LISP is not [SCHEME][scheme]. Still, the following [RSC3][rsc3] graphs are working:
- [aleatoric-quartet.lisp](sw/rsc3/help/graph/aleatoric-quartet.lisp)
- [alien-froggies.lisp](sw/rsc3/help/graph/alien-froggies.lisp)
- [alien-meadow.lisp](sw/rsc3/help/graph/alien-meadow.lisp)
- [analog-bubbles.lisp](sw/rsc3/help/graph/analog-bubbles.lisp)
- [analog-bubbles-mouse.lisp](sw/rsc3/help/graph/analog-bubbles-mouse.lisp)
- [analogue-daze.lisp](sw/rsc3/help/graph/analogue-daze.lisp)
- [babbling-brook.lisp](sw/rsc3/help/graph/babbling-brook.lisp)
- [berlin-1977.lisp](sw/rsc3/help/graph/berlin-1977.lisp)
- [bit-reduction.lisp](sw/rsc3/help/graph/bit-reduction.lisp)
- [blips-001.lisp](sw/rsc3/help/graph/blips-001.lisp)
- [bottle.lisp](sw/rsc3/help/graph/bottle.lisp)
- [bouncing-objects.lisp](sw/rsc3/help/graph/bouncing-objects.lisp)
- [bowed-string.lisp](sw/rsc3/help/graph/bowed-string.lisp)
- [ccomb.lisp](sw/rsc3/help/graph/ccomb.lisp)
- [chain-saw.lisp](sw/rsc3/help/graph/chain-saw.lisp)
- [choip.lisp](sw/rsc3/help/graph/choip.lisp)
- [chrd.lisp](sw/rsc3/help/graph/chrd.lisp)
- [clustered-sines.lisp](sw/rsc3/help/graph/clustered-sines.lisp)
- [coolant.lisp](sw/rsc3/help/graph/coolant.lisp)
- [cricket.lisp](sw/rsc3/help/graph/cricket.lisp)
- [crotale.lisp](sw/rsc3/help/graph/crotale.lisp)
- [cut-outs.lisp](sw/rsc3/help/graph/cut-outs.lisp)
- [cymbalism-accelerando.lisp](sw/rsc3/help/graph/cymbalism-accelerando.lisp)
- [cymbalism.lisp](sw/rsc3/help/graph/cymbalism.lisp)
- [data-space.lisp](sw/rsc3/help/graph/data-space.lisp)
- [deep-sea.lisp](sw/rsc3/help/graph/deep-sea.lisp)
- [demanding-studies.lisp](sw/rsc3/help/graph/demanding-studies.lisp)
- [dial-history.lisp](sw/rsc3/help/graph/dial-history.lisp)
- [diffraction.lisp](sw/rsc3/help/graph/diffraction.lisp)
- [discretion.lisp](sw/rsc3/help/graph/discretion.lisp)
- [doppler.lisp](sw/rsc3/help/graph/doppler.lisp)
- [drummer.lisp](sw/rsc3/help/graph/drummer.lisp)
- [eggcrate.lisp](sw/rsc3/help/graph/eggcrate.lisp)
- [f-lets.lisp](sw/rsc3/help/graph/f-lets.lisp)
- [fm-iter.lisp](sw/rsc3/help/graph/fm-iter.lisp)
- [forest-sounds.lisp](sw/rsc3/help/graph/forest-sounds.lisp)
- [fwalk.lisp](sw/rsc3/help/graph/fwalk.lisp)
- [half-life.lisp](sw/rsc3/help/graph/half-life.lisp)
- [hard-sync-sawtooth-with-lfo.lisp](sw/rsc3/help/graph/hard-sync-sawtooth-with-lfo.lisp)
- [harmonic-swimming.lisp](sw/rsc3/help/graph/harmonic-swimming.lisp)
- [harmonic-tumbling.lisp](sw/rsc3/help/graph/harmonic-tumbling.lisp)
- [h-chatter.lisp](sw/rsc3/help/graph/h-chatter.lisp)
- [hell-is-busy.lisp](sw/rsc3/help/graph/hell-is-busy.lisp)
- [hh-808.lisp](sw/rsc3/help/graph/hh-808.lisp)
- [implosion.lisp](sw/rsc3/help/graph/implosion.lisp)
- [impulse-sequencer.lisp](sw/rsc3/help/graph/impulse-sequencer.lisp)
- [karplus-strong.lisp](sw/rsc3/help/graph/karplus-strong.lisp)
- [klink.lisp](sw/rsc3/help/graph/klink.lisp)
- [k-ppr.lisp](sw/rsc3/help/graph/k-ppr.lisp)
- [lfo-modulation.lisp](sw/rsc3/help/graph/lfo-modulation.lisp)
- [lf-pulses.lisp](sw/rsc3/help/graph/lf-pulses.lisp)
- [lg-timed.lisp](sw/rsc3/help/graph/lg-timed.lisp)
- [lots-o-sines.lisp](sw/rsc3/help/graph/lots-o-sines.lisp)
- [lz-bf.lisp](sw/rsc3/help/graph/lz-bf.lisp)
- [modal-space-buf.lisp](sw/rsc3/help/graph/modal-space-buf.lisp)
- [modal-space.lisp](sw/rsc3/help/graph/modal-space.lisp)
- [moto-rev.lisp](sw/rsc3/help/graph/moto-rev.lisp)
- [mouse-clatter.lisp](sw/rsc3/help/graph/mouse-clatter.lisp)
- [narrow-band-filtered-crackle-noise.lisp](sw/rsc3/help/graph/narrow-band-filtered-crackle-noise.lisp)
- [nharm.lisp](sw/rsc3/help/graph/nharm.lisp)
- [noise-burst-sweep.lisp](sw/rsc3/help/graph/noise-burst-sweep.lisp)
- [one-line.lisp](sw/rsc3/help/graph/one-line.lisp)
- [oscillator-cluster.lisp](sw/rsc3/help/graph/oscillator-cluster.lisp)
- [pattern-buffer.lisp](sw/rsc3/help/graph/pattern-buffer.lisp)
- [plucked-strings.lisp](sw/rsc3/help/graph/plucked-strings.lisp)
- [police-state.lisp](sw/rsc3/help/graph/police-state.lisp)
- [pond-life.lisp](sw/rsc3/help/graph/pond-life.lisp)
- [pulsing-bottles.lisp](sw/rsc3/help/graph/pulsing-bottles.lisp)
- [rails.lisp](sw/rsc3/help/graph/rails.lisp)
- [random-pulsations.lisp](sw/rsc3/help/graph/random-pulsations.lisp)
- [random-sine-waves.lisp](sw/rsc3/help/graph/random-sine-waves.lisp)
- [record-scratcher.lisp](sw/rsc3/help/graph/record-scratcher.lisp)
- [red-frik.lisp](sw/rsc3/help/graph/red-frik.lisp)
- [reset.lisp](sw/rsc3/help/graph/reset.lisp)
- [resonant-dust.lisp](sw/rsc3/help/graph/resonant-dust.lisp)
- [resonators-harmonic-series.lisp](sw/rsc3/help/graph/resonators-harmonic-series.lisp)
- [reso-pulse.lisp](sw/rsc3/help/graph/reso-pulse.lisp)
- [reverberated-noise-bursts.lisp](sw/rsc3/help/graph/reverberated-noise-bursts.lisp)
- [reverberated-sine-percussion.lisp](sw/rsc3/help/graph/reverberated-sine-percussion.lisp)
- [ring-modulated-klank.lisp](sw/rsc3/help/graph/ring-modulated-klank.lisp)
- [rzblp.lisp](sw/rsc3/help/graph/rzblp.lisp)
- [sample-and-hold-liquidities.lisp](sw/rsc3/help/graph/sample-and-hold-liquidities.lisp)
- [s-chirp.lisp](sw/rsc3/help/graph/s-chirp.lisp)
- [scratchy.lisp](sw/rsc3/help/graph/scratchy.lisp)
- [scritto.lisp](sw/rsc3/help/graph/scritto.lisp)
- [seqr.lisp](sw/rsc3/help/graph/seqr.lisp)
- [shepard-tones.lisp](sw/rsc3/help/graph/shepard-tones.lisp)
- [shifting-pulses.lisp](sw/rsc3/help/graph/shifting-pulses.lisp)
- [slly-wlk.lisp](sw/rsc3/help/graph/slly-wlk.lisp)
- [snare-909.lisp](sw/rsc3/help/graph/snare-909.lisp)
- [sosc-lp.lisp](sw/rsc3/help/graph/sosc-lp.lisp)
- [spe.lisp](sw/rsc3/help/graph/spe.lisp)
- [sprinkler.lisp](sw/rsc3/help/graph/sprinkler.lisp)
- [sprinkler-mouse.lisp](sw/rsc3/help/graph/sprinkler-mouse.lisp)
- [status.lisp](sw/rsc3/help/graph/status.lisp)
- [strtchd-scrmbld.lisp](sw/rsc3/help/graph/strtchd-scrmbld.lisp)
- [strummable-guitar.lisp](sw/rsc3/help/graph/strummable-guitar.lisp)
- [sweepy-noise.lisp](sw/rsc3/help/graph/sweepy-noise.lisp)
- [swept-resonant-noise.lisp](sw/rsc3/help/graph/swept-resonant-noise.lisp)
- [synthetic-piano.lisp](sw/rsc3/help/graph/synthetic-piano.lisp)
- [tank.lisp](sw/rsc3/help/graph/tank.lisp)
- [tgb.lisp](sw/rsc3/help/graph/tgb.lisp)
- [tgr-rpr.lisp](sw/rsc3/help/graph/tgr-rpr.lisp)
- [theremin.lisp](sw/rsc3/help/graph/theremin.lisp)
- [three-cpsw.lisp](sw/rsc3/help/graph/three-cpsw.lisp)
- [tipnso.lisp](sw/rsc3/help/graph/tipnso.lisp)
- [tremulate.lisp](sw/rsc3/help/graph/tremulate.lisp)
- [trkl.lisp](sw/rsc3/help/graph/trkl.lisp)
- [trmlo.lisp](sw/rsc3/help/graph/trmlo.lisp)
- [tr-out.lisp](sw/rsc3/help/graph/tr-out.lisp)
- [tsort.lisp](sw/rsc3/help/graph/tsort.lisp)
- [uplink.lisp](sw/rsc3/help/graph/uplink.lisp)
- [voscil.lisp](sw/rsc3/help/graph/voscil.lisp)
- [what-was-i-thinking.lisp](sw/rsc3/help/graph/what-was-i-thinking.lisp)
- [why-supercollider.lisp](sw/rsc3/help/graph/why-supercollider.lisp)
- [wial.lisp](sw/rsc3/help/graph/wial.lisp)
- [wind-metals.lisp](sw/rsc3/help/graph/wind-metals.lisp)
- [xy-interference.lisp](sw/rsc3/help/graph/xy-interference.lisp)
- [zizle.lisp](sw/rsc3/help/graph/zizle.lisp)
## LISP
- [hsc3.lisp](?t=hsc3-lisp&e=lisp/hsc3.lisp)
- [rhs.lisp](?t=hsc3-lisp&e=lisp/rhs.lisp)
- [rhs.syntaxlisp](?t=hsc3-lisp&e=lisp/rhs.syntax.lisp)
- [rsc3.lisp](?t=hsc3-lisp&e=lisp/rsc3.lisp)
- [scheme.lisp](?t=hsc3-lisp&e=lisp/scheme.lisp)
- [stdlib.lisp](?t=hsc3-lisp&e=lisp/stdlib.lisp)
- [ugen.lisp](?t=hsc3-lisp&e=lisp/ugen.lisp)
## HELP
- [jmcc.lisp](?t=hsc3-lisp&e=help/jmcc.lisp)
- [tutorial.lisp](?t=hsc3-lisp&e=help/tutorial.lisp)
- [r5rs.lisp](?t=hsc3-lisp&e=help/r5rs.lisp)
© [rohan drape][rd], 2014, [gpl][gpl].
[rd]: http://rd.slavepianos.org/
[hsc3]: http://rd.slavepianos.org/?t=hsc3
[hs]: http://haskell.org/
[sc3]: http://audiosynth.com/
[gpl]: http://gnu.org/copyleft/
[emacs]: http://www.gnu.org/software/emacs/
[lisp]: http://www-formal.stanford.edu/jmc/history/lisp/lisp.html
[rsc3]: http://rd.slavepianos.org/?t=rsc3
[scheme]: http://library.readscheme.org/standards.html
[r4rs]: http://people.csail.mit.edu/jaffer/r4rs_toc.html
[r5rs]: http://www.schemers.org/Documents/Standards/R5RS/HTML/