示例#1
0
文件: eval.c 项目: tkmr/tonburi-scm
sExpression *evalSequence(sList *exps, sEnvironment *env){
  if(isLastExp(exps)){
    return eval(firstExp(exps), env);
  }else{
    eval(firstExp(exps), env);
    return evalSequence(restExp(exps), env);
  }
}
示例#2
0
文件: syntax.c 项目: jarvinet/scheme
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);
    }
}