如何在球拍/计划中添加?

ಠ_ಠ*_*ಠ_ಠ 3 scheme racket

例如,如果您尝试(+ 3 4),它是如何在源中分解和计算的,具体而言?它是否使用递归add1

Asu*_*awa 8

+实际上实现比你想象的要复杂得多,因为算术在Racket中是通用的:它适用于整数,有理数,复数等.你甚至可以混合和匹配这些类型的数字,它会做正确的事情.最后,它最终将在C中使用算术,这是运行时系统的编写.

如果你很好奇,你可以在这里找到更多数字塔的内容:https://github.com/plt/racket/blob/master/src/racket/src/numarith.c

其他指针:Bignum的算术,该计划数字塔,在球拍上的参考数字.


Ósc*_*pez 6

+操作是一种原始的操作,核心语言的一部分.出于效率原因,将其实现为递归过程没有多大意义.