Firstly thank you for starting this thread. I was a bit sceptical at first, but it’s fascinating.
I worry that if we start trying to remove music from our descriptions we risk ending up with overly generic statements that basically say nothing.
I ended up playing a fill in the blank game with myself.
The _______ language is designed for expression and creativity.
The _______ language is designed for musical expression and creativity.
For the first I’d pick Lisp, and actually for the second I’d pick Lisp too.
What statement has “Teletype” as the answer to fill in the blank. I say this as someone who has spent a considerable amount of time working on the language and code, it is not a good programming language. And yet, if you gave me an identical module, but with Python, or Lisp, or Haskell as the programming language none of them would work as well.
Why? What are we doing in this domain that makes it work so well? Why is the sum greater than it’s parts?
Immediacy is one thing that springs to mind.
Temporalness is another. Time is at the heart of the Teletype, even more so than music. Internal time via the metro script and delays, external time via triggers. The new features that we are discussing like
EVERY and the timeline are rooted in time. Likewise patterns (and turtle) are often used in the context of time. @glia talks about events earlier in the thread.
The Teletype language is designed for temporal expression and creativity.
I posed the question earlier in this post, “why is the sum greater than it’s parts?”, but it’s worth asking what are the parts?
If we only had the grammatical rules of the language, just the OPs and MODs, it wouldn’t feel like a Teletype anymore, would it? Just a feature limited variation on Forth.
I might feel okay about the patterns going away (others might get their pitchforks out). I could even say goodbye to the metro script.
But the triggered scripts…? That’s where I’d have to draw the line. And if they need to be triggered, does that mean the “Teletype language” can’t exist in a vacuum, does it need the ‘external’ to exist?