如何解释方案表达式 '(a 'b)

2024-04-19

'(a 'b) 给出答案 (a 'b)。当 a 没有绑定(未加引号)时,这是如何工作的。


这就是我们计算表达式时发生的情况:

'(a 'b)
=> (a 'b)

The 'quote 是简写quote http://docs.racket-lang.org/guide/quote.html特殊形式,请参阅链接文档了解更多详细信息:

(quote (a 'b))
=> (a 'b)

正如您所看到的,它阻止了引用的参数被求值,所以如果a是未定义的,因为a不被解释为带引号的表达式内的变量。如果我们尝试建立这样的列表,那就是另一回事了:

(list a 'b)

上面会产生错误,因为a是一个未定义的变量,而b是一个引用表达式。不过,这会起作用 - 因为列表中的两个元素都被引用了:

(list 'a 'b)
=> (a b)

这是构建问题中显示的列表的另一种方法:

(list 'a ''b)
=> (a 'b)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何解释方案表达式 '(a 'b) 的相关文章

  • 用于提前退出循环的功能代码

    如何以函数式风格重构此代码 scala 惯用 def findFirst T objects List T T for obj lt objects if expensiveFunc obj null return obj null asI
  • Scala - 以函数方式修改字符串

    我刚刚开始使用 Scala 因此开始以更实用的方式做事 只是想知道是否有一种更实用的方法来实现如下所示的功能 def expand exp String String var result exp for k v lt libMap res
  • 实现字典的 Applicative 实例(Map、关联数组)

    为关联数组实现函子实例 本质上是映射操作 似乎很简单 例如 参见Functor定义 1 然而 Applicative实例未定义 地图不是应用程序有一个很好的理论理由吗 它们需要什么额外的限制才能成为应用程序 1 https hackage
  • 如何在 Haskell 中建模类层次结构?

    我是一名 C 开发人员 来自面向对象的世界 我从接口 类和类型层次结构的角度开始思考 由于 Haskell 缺乏面向对象 有时我发现自己陷入困境 无法想出用 Haskell 建模某些问题的方法 如何在 Haskell 中对涉及类层次结构的现
  • 为什么 OCaml 不允许函数匹配? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Racket 中的“match”可以具有带有来自外部作用域的变量的模式吗?

    考虑以下示例 lang racket match cat doge a b match b a t f Not a pair 如果我想匹配头部和尾部相同的对 我可能会这样写 但这不起作用 因为第二个a被绑定为一个新变量 并且匹配任何内容 是
  • 如何在 React Native ListView 中将项目居中?

    我试图在选择一个项目时将其置于水平列表视图的中心 我当前的策略是首先测量项目并滚动到视图中引用项目的 x 坐标 目前 每当我按下某个项目时ListView滚动到最后x 538 有没有更简单的方法来实现这一点 同时保持代码无状态 功能 con
  • 在 F# 中组合谓词

    F 中是否有逻辑组合谓词的标准方法 例如 假设我有isCar x and isBlue x然后我想要一些能给我的东西 let isBlueCar x isCar x isBlue x 但是使用某种组合而不是调用 可能像 let isBlue
  • Haskell 将两个列表中不同索引处的元素组合起来

    对这个糟糕的标题表示歉意 我不太确定如何用语言描述它 但这就是我的意思 如果您知道更好的表达方式 请告诉我 假设我有 2 个长度相等的列表 a b c x y z 我想创建列表 a y z b x z c x y 本质上 对于 list1
  • scalaz 中的 Store 是什么

    我试图理解Lenses in scalaz 令人惊讶的是没有找到类似的东西cats core 我遇到了所谓的Store这是一个类型别名 type StoreT F A B IndexedStoreT F A A B type Indexed
  • 使用参与者模型进行基于时间的模拟

    我们有一个单线程应用程序 可以模拟数十万个对象随着时间的推移与共享内存模型的交互 显然 它无法在多 CPU 硬件上进行扩展 在阅读了一些有关基于代理的建模和函数式编程 参与者模型的内容后 我正在考虑使用消息传递范例进行重写 这个想法非常简单
  • 如何根据列表中的先前值过滤Haskell中的列表元素?

    我正在努力在 Haskell 中创建一个函数 该函数根据列表中前一个元素的条件过滤列表的数字 Example 前一个数字是 2 的倍数 myFunction 1 2 5 6 3 expected output 5 3 我知道如何申请filt
  • 使用map或reduce或filter,在Scheme中,计算列表中有多少个元素[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 number length 1 1 0 1 0 0 这假设返回 6 我知道如何使用长度并找到它 但我不知道如何在没有长度的情况下使用映射或过
  • f# 运行总计序列

    好吧 这看起来应该很容易 但我就是不明白 如果我有一个数字序列 如何生成由运行总计组成的新序列 例如 对于序列 1 2 3 4 我想将其映射到 1 3 6 10 以适当的功能方式 Use List scan https msdn micro
  • F# 编码练习

    我一直在 Visual Studio 2010 中涉足 F 我是一名在 C 和 Java 等面向对象语言方面拥有更多代码 架构设计经验的开发人员 为了扩展我的技能并帮助做出更好的决策 我正在尝试使用不同的语言来做不同的事情 特别是掌握使用函
  • “函数是第一等值”这到底是什么意思?

    有人可以用一些很好的例子清楚地解释它吗 在解释函数式编程时 我在 Scala 中遇到了这句话 一流 并不是一个正式定义的概念 但它通常意味着一个实体具有三个属性 有可能used 不受限制 只要 普通 值可以 即从函数传递和返回 放入容器等
  • 纯函数怎么能做IO呢?

    我最近了解到莫纳德随机数 http hackage haskell org package MonadRandom 0 1 13 docs Control Monad Random Class html t 3aMonadRandom图书馆
  • 在Racket中将结构递归转化为累积递归

    我有一些代码来查找最大高度并将其替换为关联的名称 身高和姓名有单独的列表 每个列表的长度相同且非空 我可以使用结构递归来解决这个问题 但必须将其更改为累积递归 而且我不确定如何做到这一点 我见过的所有例子都让我困惑 有人能够将代码变成使用累
  • 学习 LISP 的最佳方法是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 是否可以只迭代一个流一次并执行 2 个或更多操作?

    给定代码 List

随机推荐

  • CoroutineScope.async 上的异常传播如何工作?

    我看到多个消息来源声称 async 块内发生的异常不会传递到任何地方 仅存储在Deferred实例 声称该异常仍然是 隐藏的 并且仅在人们调用时影响外部事物await 这通常被描述为之间的主要区别之一launch and async 这是一
  • 创建Flutter项目时出现权限错误

    我是 Flutter 新手 安装后 当我尝试创建项目时出现此错误 hello world flutter create ios language swift android language kotlin Failed to open or
  • 如何在 Javafx 中将文本插入到形状中?

    我使用 JavaFX 创建了一个简单的矩形对象 我希望能够将文本对象放入该矩形内 并使其自动在矩形内保持对齐 我必须绘制矩形的代码是 public static Scene createScene Group root new Group
  • 科尔多瓦应用程序中的输入类型=“文件”替代方案

    我正在开发一个科尔多瓦 Android 应用程序 但是input type file 在那里不起作用 我应该使用哪种替代方法才能在加载文件之前看到提示窗口 None
  • 如何在 C# 中保存电子邮件附件 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何使用 C 从我的邮件 例如 gm
  • React-router-redux 在链接上单击两次即可更新位置状态

    我的应用程序出现问题 无法在任何地方找到解决方案 我用react router redux and syncHistoryWithStore 当我单击导航以使用链接更改路线时 新路线会加载 浏览器中的 URL 会更新 但是location除
  • 有没有更好的方法将多值数据显示为列?

    我的笔记数据库中有 4 个审核字段 它们是多值的 当表单上的某些内容发生更改时 它们都会获得一个新条目 我有一个审核表单 以柱状方式显示这些字段 几乎就像一个视图 这是列的代码
  • 返回响应后如何记录 POST 方法的返回值?

    我正在开发我的第一个 REST API 所以如果我错过了一些基本的东西 请提前道歉 我有一个函数 它从另一台服务器获取 JSON 请求 对其进行处理 根据数据进行预测 然后返回另一个带有结果的 JSON 我想在服务器的本地磁盘上保留对此端点
  • 同时使用 2 个 GPU 调用 cudaMalloc 时性能较差

    我有一个应用程序 可以在用户系统上的 GPU 之间分配处理负载 基本上 每个 GPU 都有一个 CPU 线程来启动一个GPU处理间隔当由主应用程序线程定期触发时 考虑以下图像 使用 NVIDIA 的 CUDA 分析器工具生成 作为示例GPU
  • NSKeyValueObservation:无法从对象中删除关键路径的观察者,因为它未注册为观察者

    我的应用程序中出现随机崩溃 我无法在我拥有的设备上重现 但有例外 无法从 AVPlayerLayer 0xaddress 中删除关键路径 readyForDisplay 的观察者 Foundation NSKeyValueObservati
  • 导入Matplotlib而不显示

    我正在尝试在我的 Linux 服务器上运行 python 脚本并制作并保存一些绘图 我已经安装了ipython and pylab and matplotlib但当我运行我的脚本时 我收到此错误 Traceback most recent
  • 引用 wmp.dll (\windows\system32\wmp.dll)

    我可以在商业应用程序中使用对 wmpLib ddl wmp dll windows system32 wmp dll 的引用吗 我在用Visual Studio 2008 Express http en wikipedia org wiki
  • 具有可选命令行模式的 Cocoa 应用程序

    我即将从头开始一个新的 Cocoa 项目 我已经给出的要求之一是能够从同一个可执行文件中选择 Cocoa GUI 或命令行模式 未来可能会增加脚本能力 但这不是现在的问题 在 Cocoa 中解决这个问题的最佳策略是什么 特别是如果我想维护某
  • Struts2 jQuery 插件 java.lang.ClassNotFoundException: org.apache.struts2.views.TagLibrary

    该问题涉及到Struts v2 3 16 and Struts2 jQuery 插件 v3 6 1 Struts 项目似乎不支持第三方插件 例如 Struts2 jQuery 插件 如何解决以上版本不兼容的问题 这是启动时抛出的异常 13
  • 如何在移动设备上使用Unity3d实现多点触控?

    I use OnMouseDown 可以处理按压 但不可能实现多点触控 该程序包括当您点击时增加然后减少的对象 如果轻轻一按 一切都会正常 但是 当您尝试同时单击多个对象时 它不起作用 我正在尝试解决该问题 但它不起作用 对象无法缩放并且多
  • std::bind 和 boost::bind 多态性之间的区别

    我有一个派生类 从中绑定了一个我没有在此类中重写的虚函数 因此我希望调用父类中的一个 它与 boost 1 55 配合得很好 但如果我从 C 11 切换到 std bind 它会拒绝编译 错误 C2100 非法间接寻址 1 gt 功能 11
  • Ant 使用 -source 7 或更高版本来启用钻石运算符

    我确信这是一个非常简单的问题 但我一直坚持使用 Ant 从命令行构建 Android 应用程序 我收到这样的消息 use source 7 or higher to enable diamond operator 我需要在构建文件中添加什么
  • 在 Wpf 中创建垂直菜单

    如何使用 xaml 在 Visual Studio 在 wpf 中 窗口的左侧创建一个垂直菜单 就像http www wpftutorial net http www wpftutorial net 我尝试代码 menu 但这不是任务 因为
  • 如何在 Ada 中直接访问内存地址?

    所以我是 Ada 的新手 我正在尝试在其中编写内核 但我似乎找不到任何关于如何正确执行此操作的好信息 在 C 语言中 我会这样写 unsigned char videoram char 0xB8000 videoram 0 65 直接访问视
  • 如何解释方案表达式 '(a 'b)

    a b 给出答案 a b 当 a 没有绑定 未加引号 时 这是如何工作的 这就是我们计算表达式时发生的情况 a b gt a b The quote 是简写quote http docs racket lang org guide quot