获取 Clojure 参数列表

2024-01-10

我想要一些东西来给我传递给函数的实际值的序列,类似于论点 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/argumentsJavaScript 函数中的值。

我知道我可以使用以下命令获取整个函数参数列表

(defn fx [& args]
 args)

<= (fx {:a 1} 2)
=> ({:a 1} 2)

但这消除了我的函数的数量。我想要有类似的东西

(defn fx [{:keys [a]} b]
 (MAGIC_FUNCTION_THAT_RETURNS_THE_ARGS_VALUES))

<= (fx {:a 1} 2)
=> ({:a 1} 2)

是否可以获取传递给函数的值的原始序列?


当函数体执行时,参数已经被解构。你可以定义你自己的defn宏并公开这些值。我知道 Lighttable 在他们的 Instarepl 中这样做是为了显示参数值。

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

获取 Clojure 参数列表 的相关文章

  • Emacs/Swank/Paredit for Clojure 的温和教程

    我要转向 Emacs 来工作Clojure http en wikipedia org wiki Clojure Lisp 为了能够执行以下操作 我需要在 Emacs 上设置哪些信息 自动匹配 生成相应的右括号 自动缩进 Lisp Cloj
  • 在 Clojure 中退出 Recur 循环

    我想跳出下面的循环 并在第 10 行计算结果为 true 时返回最佳最小移动 我查看了 print 语句的输出 当第 10 行的计算结果为 true 时 它 找到了我正在查找的数据 但仍然重复出现 在 Clojure 中 有没有办法在语句计
  • 使用 CounterClockwise 和 Eclipse 在 Clojure REPL 中进行评估

    我通常使用 Emacs 但受到启发再次尝试 CCW Eclipse 我有一个 Clojure 测试项目 其源文件 src user clj 包含以下内容 ns user println hi 我有一个 REPL 我从 Window gt S
  • Clojure:只能从尾部位置重复

    我正在尝试递归地反转列表 但是我得到了Can only recur from tail position运行时 这到底意味着什么 如何改进我的代码才能使其正常工作 defn recursive reverse coll loop coll
  • 使用 Compojure、Hiccup 和 Ring 上传文件

    要将文件上传到我用 Clojure 编写的服务器 我需要一个如下所示的客户端表单
  • Clojure:无法找到静态字段

    给出以下代码 map Integer parseInt 1 2 3 4 为什么除非我换行 否则会出现以下异常Integer parseInt在匿名函数中并手动调用它 Integer parseInt clojure lang Compile
  • 改进迭代文本解析的 clojure lazy-seq 使用

    我正在编写一个 Clojure 实现这次编码挑战 http biostar stackexchange com questions 1759 code golf mean length of fasta sequences 尝试找出 Fas
  • Clojure def 与 defn 对于没有参数的函数

    我用 clojure 编写了一个程序 但有些函数没有参数 将此类函数编码为 def 而不是不带参数的 defn 有什么优点 def t0 System currentTimeMillis defn t1 System currentTime
  • Java 中 .NET 的 Lambda 表达式

    我最近 再次 从 C 迁移到 Java 但我非常怀念 lambda 表达式和 C 的 IEnumerable Foreach 之类的东西 所以我正在寻找Java中的lambda表达式库 有比这更好的图书馆吗LambdaJ http code
  • 如何在 RHEL 6.1 / JDK7 上安装 Clojure 1.3 with contribs?

    我一直在努力让它发挥作用 获取 clojure 1 3 是一件轻而易举的事 但现在我一直在尝试安装 contrib 库 但遇到了错误 有关于如何正确执行此操作的指南吗 旧的 clojure contrib 整体库与 clojure 1 3
  • Clojure 的映射和减少 Monad...Juxt Monad 怎么样?

    在学习 Clojure 的过程中 我花了很长时间试图理解 monad 它们是什么以及我们如何使用它们 但没有取得太大成功 然而 我发现了一个很棒的 Monads for Dummies 视频系列 http vimeo com 2071730
  • 为什么这个 Clojure 程序在可变数组上运行如此慢?

    剧透警告 这是 代码降临 第六天的第一部分 我试图解决this http adventofcode com day 6Clojure 和 Scala 中的问题 Scala 程序在我的 Macbook Air 上运行良好 几秒钟内就完成了 然
  • 使用 swank-clojure 攻击 Clojure 库的工作流程

    Clojure 库的黑客攻击有典型的工作流程吗 假设我的应用程序 Foo 依赖于第三方库 Bar 该库是从存储库获取的 并通过以下方式包含在项目 Foo 中lein deps 然后 假设我想破解 Bar 库 所以我从 github 克隆它
  • 如何解构向量以用作函数参数

    在 Python 中 您可以将列表或元组传递给函数并让函数解压参数 我怎样才能在 Clojure 中做到这一点 下面是一些 Python 代码示例 def f a b c d print a a print b b print c c pr
  • 如何在 Compojure 中使用 lib-noir 有状态会话

    我想我这里有一个相当简单的问题 但我已经看这个屏幕太久了 所以我正在尝试 但失败了 让有状态会话在 Compojure 中工作 refheap代码粘贴is here https www refheap com paste 11161 你可以
  • 为什么 CouchDB 使用仅追加 B+ 树而不是 HAMT

    我正在阅读数据结构 尤其是不可变的数据结构 例如仅追加 B 树 http guide couchdb org draft btree html用于 CouchDB 和哈希数组映射 trie http en wikipedia org wik
  • 我应该如何使 Clojure STM 程序持久化?

    我正在编写一个使用 STM 的 clojure 程序 目前 我在启动时从数据库填充 STM 使用引用 然后在 dosync 事务成功时异步更新数据库 我不知道我是否以正确的方式这样做 或者是否有更好的标准技术来做到这一点 谁能向我解释一下他
  • 如何在 REPL 中显示 Clojure 中函数的定义?

    我正在寻找让 REPL 打印函数当前定义的能力 有什么办法可以做到这一点吗 例如 给定 defn foo if true true 我想说类似的话 print definition foo 并得到一些类似的东西 foo if true tr
  • Linux 上的 Clojure 实时浏览器重新加载

    有没有类似的东西机架实时重载 https github com johnbintz rack livereload可以与类似的工具一起使用Guard LiveReload https github com guard guard liver
  • Common Lisp 中的原子和 Clojure 中的原子有什么区别?

    下列page http clojure org atoms讨论原子在 Clojure 中的工作原理 它并没有详细说明 Clojure 和其他 lisp 方言中原子之间的差异 Common Lisp 中的原子和 Clojure 中的原子之间的

随机推荐

  • C# 使用 Linq 连接 3 个列表 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想加入 3 个具有以下格式的列表
  • Wireshark 中看到的数据报,Qt UDP Socket 未接收到

    我正在编写一个 Qt 5 6 应用程序 通过 UDP 套接字与 FPGA 进行通信 数据包以 2 KHz 的速率传输到 PC 所有数据包大小相同 1272 字节 Wireshark 显示数据包正在发送 并且 UDP 标头符合预期 问题是 我
  • SmartGWT GWT 客户端服务器架构

    我们计划使用智能GWT GWT和相关框架用于客户端丰富的接口 以及在服务器端返回JSON数据的Spring MVC 作为调查是否符合我们要求的一部分 需要回答以下问题 在不使用任何框架的情况下从头开始构建 GWT 应用程序需要付出大量努力才
  • 使用 DbSet 应用 OrderBy

    我正在尝试使用通用存储库实现分页和排序 如何在 DbSet 中将主键列作为默认按列排序 DbSet Context Set
  • 获取唤醒我的 Activity 的 Intent

    我正在开发一个包含广播接收器的应用程序 广播接收者在 onReceive 上设置一个通知 其中包含一个待处理的 Intent Intent updateHistoryIntent new Intent this NotificationsH
  • IntelliJ 的“UML 支持”插件

    我肯定错过了什么 我在读本文 https www jetbrains com idea help working with diagrams html它说有一个名为 UML Support 的插件默认启用 我没有它 所以我转到 首选项 gt
  • 如何对 HTML 标记属性使用多行值? (即如何转义换行符?)

    如何在 HTML 标记属性中包含换行符 例如 a href somepage html some link a Edit 抱歉 例子不好 如果标签碰巧不在 javascript 中怎么办 比如说
  • 类型 'K' 不能用于索引类型 '{ [key in keyof K]: V; }'.ts(2536)

    我想创建一个从自定义对象类型返回新对象的方法 type K represent the type of key in an object type V represent the type of value in an object cla
  • 使用unix终端解析XML

    有时我需要快速从 XML 文件中提取一些任意数据以放入 CSV 格式 在 Unix 终端中执行此操作的最佳实践是什么 我想要一些代码示例 那么例如我怎样才能解决以下问题 XML 输入示例
  • 分析递归算法 T(n) = T(n - 1) + T(n - 2) + T(n -3)?

    于是 有人发了这个question https stackoverflow com questions 17239861 how would i get the order of algorithm tn tn 1tn 2 tn 3 com
  • 对象当前正在其他地方使用

    我收到此错误 看起来是因为不同的线程正在访问同一个 Bitmap 对象 然而我到处都使用锁 public class MySingleInstanceClass private Object locker new Object privat
  • 添加将 Excel 数据粘贴到 Django 表单中的功能

    我目前有一个 Django 表单 它有 N 行 x 12 列的表格形状的文本框 用户可以一次填充此表单一个文本框 注意 该表仅显示 9 列 但我使用的实际表格是 12 列
  • boost::asio::ip::tcp::socket 没有读取任何内容

    这实际上是我在套接字编程中的第一个程序 除了复制粘贴教程代码并享受乐趣之外 无论如何它都不起作用 我想我已经仔细阅读了文档 但也许还不够 我怀疑我使用socket read some in read message 因为我的有问题的程序停在
  • 从 jsonfile 数据创建多个 Chart.js 图表

    我使用 python 创建了一个 json 文件 它是一个列表列表 每个子列表都有一个 Chart js 图表的数据 即chartObject 0 has chartObject 0 0 and chartObject 0 1 对于 x 和
  • Android 如何从 facebook 获取用户关于我的信息

    我想在 Facebook 应用程序中获取 user about me 权限的信息 我能够获取电子邮件 位置 但我尝试获取 about me 它只提供 id 我想要所有信息 我怎样才能做到这一点 我就是这样做的 bundle putStrin
  • 不同JDK版本的Maven编译

    我的应用程序分为使用 Java 1 6u45 和 Java 1 8 的用户 我们的问题是我们无法指定项目系统库并且同时对代码有两种不同的编译器设置 项目结构 Project gt gt src main java com us javafx
  • 正确对齐控件

    我想调整我正在开发的网站上相同控件的外观 但似乎进展不太顺利 我想使用 CSS 来正确对齐控件 我想让复选框和标签左对齐 然后留一点空间 然后文本框就来了 另外我希望所有文本框垂直对齐 如何在不使用表格的情况下使用 css 来做到这一点 预
  • 执行 Excel Interop 的 C# 控制台应用程序 - 按计划任务运行时失败 -System.UnauthorizedAccessException

    正如标题所述 我有一个 C 控制台应用程序 它使用互操作性来打开 Excel 并创建新的工作簿 通过命令行运行控制台应用程序时 代码工作正常 但是 通过计划任务运行控制台应用程序时会引发此异常 System UnauthorizedAcce
  • React 组件中锚标记中的下载属性[重复]

    这个问题在这里已经有答案了 我将文件存储在云中 因此在上传过程中它们会获得前缀 使其名称独一无二 例如 如果我上传一个名为test txt 在上传过程中它被保存为7ea205f01ae5 test txt 值得注意的是 我确实捕获并保存了原
  • 获取 Clojure 参数列表

    我想要一些东西来给我传递给函数的实际值的序列 类似于论点 https developer mozilla org en US docs Web JavaScript Reference Functions and function scop