使用Lisp简单描述加法运算

最近在看 MIT 公开课-计算机程序的构造和解释,即使你像我一样根本没学过 lisp 也能看懂下面这段代码,这段代码展示了怎么实现加法运算,这种我们几乎从来不会去想为什么的问题,这几行简单的代码告诉我们如何计算出 3 + 4 的值

由 皮亚诺 算术定义的求 x 和 y 之和的过程

 
 
  1. ; Define a [+] processor 
  2. (define (+ x y) 
  3.     (if (= x 0) 
  4.         y 
  5.         (+ (-1+x) (1+y)))) 
  6.  
  7. ; x = 3, y = 4 
  8. (+ 3 4) 
  9. (if (= 3 0) 4 (+ (-1+3) (1+4))) 
  10. (+ (-1+3) (1+4)) 
  11. (+ 2 5) 
  12. (if (= 2 0) 5 (+ (-1+2) (1+5))) 
  13. (+ (-1+2) (1+5)) 
  14. (+ 1 6) 
  15. (if (= 1 0) 6 (+ (-1+1) (1+6))) 
  16. (+ (-1+1) (1+6)) 
  17. (+ 0 7) 
  18. (if (= 0 0) 7 (-1+0) (1+7)) 

网站标题:使用Lisp简单描述加法运算
转载注明:http://www.shufengxianlan.com/qtweb/news43/354393.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联