general { funcon-term: initialise-giving initialise-binding scope( bind-value("x",99), give( tuple( 99, thunk closure( sequential( print bound-value"x", print first tuple-elements bound-value"tup"))), scope( collateral( bind-value("x",42), bind-value("tup",tuple(42, second tuple-elements given))), else( force second tuple-elements given, print 77)))) ; } tests { result-term: null-value; standard-out: [99, 77]; }