type ins = | Basic of char (* a *) | Terminate (* ! *) | Ptest of char (* +a *) | Ntest of char (* -a *) | Jump of int (* #1 *) | Concat of ins list (* a;b *) | Repeat of ins * int (* a2 : execute a twice *) | Loop of ins (* a* : repeat a infinitely *) | Program of char (* X *) | Empty type program = ins list exception FatalError of string