sExpression *evalSequence(sList *exps, sEnvironment *env){ if(isLastExp(exps)){ return eval(firstExp(exps), env); }else{ eval(firstExp(exps), env); return evalSequence(restExp(exps), env); } }
void sequenceToExp(Register result, Register seq) { if (isNull(seq)) copyReg(result, seq); else { isLastExp(result, seq); if (isTrue(result)) firstExp(result, seq); else makeBegin(result, seq); } }