gpt4 book ai didi

c - LISP 算术实现

转载 作者:太空宇宙 更新时间:2023-11-03 18:44:25 24 4
gpt4 key购买 nike

我正在用 D 做一个玩具 lisp 解释器,我不太了解 Lisp 的理论。

我想知道 Lisp 是否可以自己实现基本的算术函数(+、-、×、÷)。大多数 Lisp/Scheme 方言使用 C 的内置函数实现它,类 Java 语言并将其重载为 lisp 代码(重复实现?)。

我想纯粹用 Lisp 代码编写算术函数。可能吗?

最佳答案

除非你想使用 Church numerals等等,在某些时候你将不得不进入硬件算术指令(addsubmuldiv) 一种或另一种方式。

如果沿着硬件指令路线走下去,那么根据您的 Lisp 实现,它可能会使用 C 代码实现(尤其是对于基于解释器的实现),或者这些指令可能会直接发出(对于基于 JIT 编译器的实现) ).

如果你想尽可能地成为第一性原理,你可以使用加法和减法指令来实现乘法和除法(在紧要关头,你可以像在学校教的那样来实现它们,尽管你我们正在使用字长的数字——也就是说,对于 32 位机器,每个数字都是 base-4294967296 而不是 base-10)。

关于c - LISP 算术实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31449110/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com