【发布时间】:2012-04-02 13:25:24
【问题描述】:
我有一个任务,我需要获取一个元组并返回另一个相同大小的元组,其中某些元素发生了变化。问题是我不知道如何处理未定义大小的元组。该函数需要能够处理任何大小的元组。我的想法是使元组成为一个我可以更容易处理的列表,方法是创建一个递归辅助函数来获取元组的元素#1,并将其用于调用相同的函数,这将使元素#2 被 consed 到再次递归,直到没有元素为止,但是当我到达 #n+1 时,这只会给出一个错误,其中 n 是元组中的项目总数。 我会以错误的方式解决这个问题吗?有没有办法找到元组的大小?有没有办法处理这个错误?我知道异常处理,但我不确定如何将其应用于他的案例,如果可能的话。
问题是创建一个名为 subst 的函数,这样 subst (e',x) e = [e'/x]e 即函数 subst 将用表达式 e.为元组添加适当的大小写。
【问题讨论】: