alda 2016-03-02

Hi I'm really keen to help out with Alda (I'm passionate about Clojure and about music..)

I saw this issue https://github.com/alda-lang/alda/issues/160 which sounds pretty straightforward to pick up and will be (hopefully!) an easy way to help out while I get to know the codebase - is it a case of changing most/all defs to defonce? If so is there anything rigorous I can do to test that it's worked beyond leaving it on for a few hours?

hi @djtango -- that would be super helpful, thanks so much for offering to help out!

this is probably a great issue to start with

it could definitely be an issue of using defonce instead of def

we have a bunch of things (mostly defined as dynamic vars) that are reused that should probably be defonce'd instead of def

oh the dynamic vars can be defonce'd?

particularly in the alda.server and alda.sound namespaces

i'm thinking of things like the *midi-synth*

wasn't familiar enough with the inner workings to know whether it would be safe to change those

yeah, they should be able to be defonced

I'll take a look the

one way that i've typically been able to reproduce the issue is to start a server and play around with it, then shut my laptop and come back later and re-open it and interact with the same server

my theory is that the shutting of the laptop has something to do with it

perhaps things are being somehow re-def'd when my computer comes out of standby?

I'll take a look at that

@djtango: in case you weren't aware, you can run an alda server in the foreground (to see stacktraces, etc.) by running boot dev

or if you have a local build of alda (say in /tmp), /tmp/alda server will run a server in the foreground