general { funcon-term: initialise-giving initialise-binding scope( bind-value("x",99), give( tuple( 99, thunk abstraction( 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))), force second tuple-elements given))) ; } tests { result-term: null-value; standard-out: [42, 42]; }