gpt4 book ai didi

lisp - 在 Scheme 中,数字和对象有什么区别?

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

如果在 Scheme 中我有类似的东西:

1 = 1

和数字 1。这两个符号 1 和数字 1 之间有什么区别?数字1不也是一个符号(代表数字1)吗?那么像 Pi 或 e 这样的东西呢?它们是数字还是符号?

最佳答案

我猜你的意思是 (define one 1) 而不是 one = 1

在此上下文中,one 是标识符(而不是符号)。标识符指的是一个值,在这种情况下,one 标识符的值为 1。(顺便说一句,数字不是符号或标识符。)但情况并非总是如此.请考虑以下事项:

(define one 1)
(define (my-function one)
(display one))

(my-function 42)

尽管 my-function 包含表达式 (display one),表达式 (my-function 42) 实际上会打印 42,因为这里的one指的是my-function的参数,而不是顶层的one

pie 也是标识符,可以绑定(bind)到任何值。当然,您可以使用以下定义为它们提供您期望的值:

(define pi (acos -1))
(define e (exp 1))

关于lisp - 在 Scheme 中,数字和对象有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40687700/

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