Teletype: A few questions and requests

Hey!
I got my teletype about a couple of weeks ago :slight_smile: It is incredibly inspiring!

Here are a few questions:

Is the github master always “releasable”? I’ve also stumbled on the USB problem and also noticed that the master contains more interesting commands like ER. Is it recommended to avoid using master or generally ok? I do not mind experimenting as long as it won’t lead to unrecoverable state.

One of the things I struggle with is the limitation of 6 lines. While I understand the principle behind trying to keep the interface minimal, it would be awesome if we could expand some way or another.
For example would it be possible to enhance the prefix parser to parse more complex expressions?
When trying say for instance

OR AND X A B

meaning if X do A else do B, it seems the parser cannot interpret it, although it’s a valid expression.
I would personally prefer to have that level of expression to triggering other scripts allowing for more lines. I can also potentially help with a pull request if this is desired.

Thanks again!

these will always be “good” to use. it’s basically impossible to get in an unrecoverable state as the bootloader is write-protected.

check out the v2 doc addendum at the bottom of http://monome.org/docs/modular/teletype/ for new goodies.

SCRIPT 1

for example will execute script 1 (you can do X instead of 1 etc).

also check out IF

i think you have the OR AND X A B syntax a little off. teletype is basically reverse notation-- i’d suggest going through all of the studies. http://monome.org/docs/modular/teletype/studies-1/

to do what you’re suggesting

IF X : SCRIPT A
ELSE : SCRIPT B

given x, a, and b are defined. granted, that’s two lines, but it’s readable. we have a TT v2 feature proposals and many of them cover use cases for longer scripts.

Ah thank you, always forget about the releases tab on github.

I still think the OR AND expression is valid in reverse notation and does what I suggested. I am away from my teletype, but it should just work provided that AND, OR behave as in python (which iirc they do) i.e.

AND A B

returns A if either are “falsy”, B if both “truthy”, and

OR A B

returns A if either “truthy”, B if both “falsy”.

I totally understand though how this kind of cheating would lead to unreadable scripts. Would you be so kind to point to the v2 feature proposal?

Echoing what @tehn said, in practice I find that chaining scripts is a good way to work around the 6 line limit. On a good day, it almost feels like you’ve got an abstraction and you’re calling a macro. :slight_smile:

Here’s a tonnetz-inspired example:

I:

X  9
Y 12
Z 16
T 0
SCRIPT 8

1:

IF EZ T : Y ADD X 3
ELSE : Y ADD X 4
Z ADD X 7
SCRIPT 8

2:

IF EZ T : X ADD X 4
ELSE : X SUB X 4
IF EZ T : Y ADD X 3
ELSE : Y ADD X 4
Z ADD X 7
SCRIPT 8

3:

IF EZ T : X SUB X 3
ELSE : X ADD X 3
IF EZ T : Y ADD X 3
ELSE : Y ADD X 4
Z ADD X 7
SCRIPT 8

8:

CV 1 N X
CV 2 N Y
CV 3 N Z
T FLIP

Script 8 is the update macro. (For completeness you might even MUTE 8.)

Excellent, thank you!

oh certainly it’s valid, it’s just, confusing, and does possibly not what you hope

OR AND X A B

translates to

B | (X & A)

which is easier to read as

OR B AND X A

but i’m not sure i’m clarifying anything at this point