general { funcon-term: finalise-failing sequential( atomic(tuple()), atomic(print 1), atomic sequential(print 2,print 3), interleave( atomic sequential(print 4,print 5), print 6), interleave( atomic sequential(yield-on-value print 7,print 8), print 9), else( atomic yield-on-abrupt sequential(print 10,fail), print 11)) ; } tests { result-term: null-value; standard-out: [tuple(), 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]; //Also possible: // standard-out: [................, 6, 4, 5, ...............]; // standard-out: [........................., 7, 9, 8, ......]; // standard-out: [........................., 9, 7, 8, ......]; }