![]() |
1
26
在球拍中你可以使用
以及相关的事情,比如
它适用于列表、向量、结构等。对于多个值,您可以使用
或
|
![]() |
2
8
赤裸裸的成语是 应用 具有 兰姆达 你会用到的地方 让 ,例如:
其优点是它可以在任何实现上工作。当然,这只能用于简单的情况,但有时这就是你所需要的。 |
![]() |
3
7
你要找的东西(至少在Lisp世界里)的通用术语是 解构 实现它的宏称为 解构绑定 . 在Common Lisp中,它的工作方式如下:
它也适用于多个“级别”的嵌套:
好像有一个 nice implementation 将bind作为scheme宏进行解构。 |
![]() |
4
4
|
![]() |
5
0
如果你不想把
从列表中:
或者直接从值表达式:
|
|
6
0
这里有一个简单的
下面是激发我编写此宏的示例。将默认值放在主体之前可以使代码可读:
以下是计算不同方案中长度为9的排列的基准:
转换为GHC Haskell比Chez方案快5倍。诡计比这些计划都慢得多。
除了利用现有的便利性之外
|
![]() |
David J. · 这个基本的scheme函数有什么问题 2 年前 |
![]() |
Asher · 如何使用DrRacket遵循简单方案手册 6 年前 |
![]() |
Flux · 如何从MIT方案访问环境变量? 6 年前 |
![]() |
Adam Morad · 方案反转值 6 年前 |
![]() |
Adam Morad · 方案更改树值 6 年前 |
![]() |
lightning_missile · 词法范围和共享对象 6 年前 |