Hello. I will be doing a short presentation on TWINE for school next week. Specifically, my segment will be on the language. I've made some simple programs and looked at the API so I believe that I have a handle on how it works. However, because I don't have time to get really in-depth with it I would appreciate it if I could have some conclusions I have reached confirmed or disputed.
1.It is not possible to create custom functions (or "macros" as they are called here). If there is a hackey way to get around this I would like to know about that as well.
2.In order to run a loop you would need to increment a value defining that loop, run the code, move to another blank passage, move back to the original passage, increment the value again and carry on doing this until the value exceeds a target (in this example I'm describing a for loop). I have also seen the "live" macro, but I'm not clear that this can be used for more traditional computational loops.
3.It is not possible to view the state of a variable while testing the game without including a line of code in the active passage which prints that variable.
I do understand that these things are not critical to Twine's goals, but I would like to be sure before I make claims about the language's capabilities. In particular, I want to be able to say for sure whether or not it is Turing complete.