[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sc-users] Coding vs patching: would you eat soup with a fork?
- To: sc-users@xxxxxxxxxxxxxxxx
- Subject: Re: [sc-users] Coding vs patching: would you eat soup with a fork?
- From: Jonathan Wilkes <jancsika@xxxxxxxxx>
- Date: Sat, 2 May 2009 18:19:16 -0700 (PDT)
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1241313556; bh=8FkScBq5ATRCbD254wgDvow/01qmFRo6WQYRmhTe7UM=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=NkJ+BPVobv58JbYUFCPSvbfCTZ4Vtk84PEpH1rPWHHds8xwPBHF8lkw0MlYtgmAeGpMBsR9HVL6tF7ld0vicXwCgXRkLIvze40Y2cVG4mciru64ypf/Eodg3SbblaVcJufzoKzKkLmEcUxi78YDjBKFbdgUcXj+5YuzBPuTdm9o=
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=1lN7S5G6dsfmTo+aE2mTKRWESUPIJaQOzCIswT83eTx8eylXAR5YwDMvYHKbB3HFZXrAEd5VVfgn2c6gJlc5xZLOb97a+zzEfXrrojXnfIt8KNQ4ksk29NIQPE9mhUUA6rJzChL+EhXOTKsrb+QjUZaZk4VEurR9ALtIuf07zac=;
- In-reply-to: <30010A71-B1FD-416C-AD63-14CAC5B2B65E@xxxxxxxxxx>
- List-id: SuperCollider users mailing list <sc-users.create.ucsb.edu>
- Reply-to: sc-users@xxxxxxxxxxxxxxxx
- Sender: owner-sc-users@xxxxxxxxxxxxxxxx
> (
> // harmonic swimming
> play({
> var f, p, z, offset;
> f = 50; // fundamental frequency
> p = 20; // number of partials per channel
> z = 0.0; // start of oscil daisy chain
> offset = Line.kr(0, -0.02, 60); // causes sound to
> separate and fade
> p.do({ arg i; z = FSinOsc.ar(f * (i+1), 0, max(0,
> LFNoise1.kr(6 + [4.0.rand2, 4.0.rand2], 0.02, offset)),
> z)});
> z
> }))
>
> and show them Sciss' max like representation:
>
>
>
>
> Then ask them to make p = 100 and imagine what the max
> patch would look like. That's when lights go on and
> people realise that the SC version is so elegant and
> expressive because of the abstraction. In essence it works
> so well because in SC you can tell the program to make you
> all these UGens, whereas in Max the visual metaphor requires
> you to 'make them' yourself.
Hi Scott,
I'm a pd user who's learning sc at the moment, and I've been playing around with porting your example above to pd. Though not as elegant/efficient as the sc code, none of the solutions I came up with requires the user/programmer to make all the relevant objects themselves. A patch that works for p=20 works equally well for p=100, and is merely a matter of changing a creation argument to an abstraction (or the input to an inlet). The "do" method is simulated by use of dynamic patching.
I don't use Max but I would be very surprised if something similar can't be done.
Thanks,
Jonathan
_______________________________________________
sc-users mailing list
info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/