Re: [livecode] Live coding of visualized interactive soundscapes

From: Justin Northrop <justinorthrop_at_gmail.com>
Date: Wed, 30 Sep 2015 00:02:40 -0400

Hi Dave, sorry for the delayed reply:

---
Do you have a comprehensive description of the language aside from the
implementation? Particularly, I'd like to see a list of what each
instruction does.
I just looked at an interactive tutorial on Petri Nets, and don't see how
this could correspond to a deterministic language; in the tutorial, any
transition which has all prerequites satisfied can be taken, and I was able
to select which transition happened next. Differently, in a programming
language, one wants there to be always one next step to occur, so that a
program is deterministic. Here's the interactive tutorial that I used:
https://www.informatik.uni-hamburg.de/TGI/PetriNets/introductions/aalst/
TanScript seems to be the same basic idea, in that there is a graph of
instructions, and there are 'heads' that walk along it. In TanScript, there
can only be one head on any program. When TanScript is used only to encode
music, it is very simple, each instruction simply playing a sound, or
branching. Re-usable function/action definitions allow for more interesting
compositions. Recursion is also an option.
Aside from music, TanScript is also a fairly general-purpose language used
for manipulating graph-structured data. A stack frame of a TanScript
program has three references: one to the head, and two more to nodes of
data that the program executes upon. The primitive instructions cause these
latter two references to 'walk' around on the data, modifying and
conditioning on it as they go.
Musical instructions can be combined with non-musical programs in order to
sonify them, making blindfolded debugging feasible.
---
Do you know of any other languages similar to Daisy Chain and Tanscript?
---
What dialect of Lisp did you implement Daisy Chain in, and how do you
recommend making sure the notes play at the right time, with no delay
between timer events and audio? Me and a friend are about to re-implement
TanScript in Pharo (a Smalltalk development environment). (Letting you know
in case you have any advice, having already done something similar in Lisp.)
---
Perhaps you'd like to have a real-time meeting via video to discuss where
we can take these ideas further?
---
Best, and thank you for your feedback,
- Justin
On Sun, Sep 27, 2015 at 6:14 AM, David Griffiths <dave_at_pawfal.org> wrote:
> On 27/09/15 09:50, alex wrote:
> > On 27 September 2015 at 09:11, Justin Northrop <justinorthrop_at_gmail.com>
> wrote:
> >> I can't find a video of Daisy Chain. It looks to be very similar to
> >> TanScript, with the graphics done much more artfully. TanScript nodes
> can
> >> be given user-made images, but the links cannot, so such a beautiful
> >> vine-like composition is not possible in the current design.
> >>
> >> I can't find any documentation, either! Do you know of any? I really
> want
> >> to know more about Daisy Chain!
> >
> > Dave is probably lurking and can speak up! There is a video on the
> > page I linked though, this one:
> >   https://www.youtube.com/watch?v=I2PpBdr1BV0
> >
> > There's a bit in this paper too:
> >   http://www.bcs.org/upload/pdf/ewic_ev10_s2paper1.pdf
>
> Docs, and some philosophy here:
> https://gitlab.com/flotsam/flotsam/blob/master/daisy/notes.txt
>
> The source code has a log at the top, which also might be useful:
> https://gitlab.com/flotsam/flotsam/blob/master/daisy/daisy.scm
>
> Also some conclusions after using it live:
> https://gitlab.com/flotsam/flotsam/blob/master/daisy/conclusions.txt
>
> All in the original repo here:
> https://gitlab.com/flotsam/flotsam/tree/master/daisy
>
> (which itself is part of a sprawling git repo of mainly livecoding stuff)
>
> TanScript looks very similar, it's great to see! - as Alex mentioned,
> daisy was based on petrinets - I recommend looking into them, there are
> quite a few interactive examples online to play with.
>
> This is a project I've wanted to use again for some time, one of the
> best features was the way you can give the 'nodes' a lifetime so code
> disappears as it gets old. I've missed this in other livecoding
> languages since this.
>
> As it's a graph based language for building graphs I worked mainly on
> building different kinds of quines and then listening to the sounds they
> made as they replicated.
>
> cheers,
>
> dave
>
> --
>
> Read the whole topic here: livecode:
> http://lurk.org/r/topic/774geIIijACGqemJTwuzyC
>
> To leave livecode, email livecode_at_group.lurk.org with the following email
> subject: unsubscribe
>
-- 
Read the whole topic here: livecode:
http://lurk.org/r/topic/4nJy0MF9XE0EVIp3y7zNpZ
To leave livecode, email livecode_at_group.lurk.org with the following email subject: unsubscribe
Received on Wed Sep 30 2015 - 04:02:49 BST

This archive was generated by hypermail 2.4.0 : Sun Aug 20 2023 - 16:02:23 BST