[Fluxus] scala.scm - rev 3a

Joel Matthys joel at matthysmusic.com
Sun Feb 19 16:27:02 PST 2012


Hi Kassen. I've made a few revisions and bug fixes since the last post, 
so I'm attaching my most recent version of the code.

There are some new features, like the option of different types of 
interpolation.

I haven't looked at it since December, but I think I already fixed that 
integer check bug you found. But the type checks you suggested are a 
very good idea.

I'm not quite sure what you mean about setting note 0 to 55 Hz. Right 
now it's set up with note 0 being a very low C, no matter what 
temperament you choose.

I'm reluctant to move the default note 0 away from C because I think 
most musicians like to use C as their basic reference, even though A=55 
is much easier math. Of course with (set-diapason ) and (set-base-keynum 
) anyone is free to make note 0 any note they'd like.

I also think the default temperament should be equal temperament since 
that's what our ears are most accustomed to. That's the way it's set up now.

I'm absolutely fine with you including the code in your fluxa.ss. I'll 
put it under GPL2 also to make things easier. The helpmaps and type 
checks are a very good idea.

Joel

On 02/19/2012 06:29 PM, Kassen wrote:
> On Wed, Dec 21, 2011 at 05:13:02PM -0500, Joel Matthys wrote:
>> (set-scale ) in my code didn't work because it was reserved for racket. Changed
>> it to (set-scala ) and now everything seem to work fine. Yuck, nasty bug.
> Ok, finally got round to properly playing with this.
> I like it a lot, the just intonation looks very good with Racket's
> support for exact fractions. We may be slightly behind SC in features,
> but we'll have infinite resolution for frequency calculations, that's
> worth something too ;-)
>
> I noticed one more bug; (scala-note 9) works, similar for 9.1 but 9.0
> gives a error. This was due to a check for a integer, instead of a
> exact-integer. The fix was quite trivial as the file only has one such
> check.
>
> What I'd like to do is put this in my local copy of fluxa.ss,
> replacing the current (note ) with full attributing to Joel if he's ok
> with that (that file is GPL2, but clearly I can't licence somebody
> else's work). Then I'd like to add helpmap entries and some type-checking
> of the exposed functions. Without type-checking (seq ) can generate
> rather a barrage of errors at a simple typo and I like to prevent that.
>
> I'd also like to set some defaults like the just intonation that the
> docs claim and set the default to note 0 being 55 Hz (a "A"). This is
> because the current (note ) implementation quite sensibly sets (note
> 0) to be in that range, but I only now noticed that the current
> implementation starts "counting" at A-sharp, (or b-flat, if you wish),
> which I'd say makes mental math a bit harder and starting with "A"
> simply makes sense to me. IMHO that would be a nice compromise between
> sticking to the sort of thing that we have and this nicer new version,
> and where it deviates from the current situation I feel it makes more
> sense (unless the a# has some meaning?).
>
> The result I'd like to push into the Redacted branch, from where
> interested parties can do as they wish.
>
> Does this make sense? Joel, are you ok with that kind of distribution
> and licence?
>
> Yours,
> Kas.
>
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: scala.scm
Type: text/x-scheme
Size: 16134 bytes
Desc: not available
URL: <http://lists.pawfal.org/pipermail/fluxus-pawfal.org/attachments/20120219/667bc47d/attachment-0003.bin>


More information about the Fluxus mailing list