`

关于clojure中的一些函数和宏(一)

 
阅读更多
->、->>的区别。

例子:
 (-> (+ 1 2) (/ 2)) ;;返回结果3/2.
 (->> (+ 1 2) (/ 2)) ;;返回结果2/3.


->  后面的函数迭代使用之前的函数结果作为第一个参数,返回最后一次函数调用的值

(-> (+ 1 2) (/ 2)) ;;的可解析为:
(/ (+ 1 2)  2) 
;;(+ 1 2)作为参数,传递给了后一个函数,并作为第一个参数。以此类推下去。



->> 后面的函数迭代使用之前的函数结果作为最后一个参数,返回最后一次函数调用的值.
 (->> (+ 1 2) (/ 2)) ;;的可解析为:
 (/  2 (+ 1 2)) 
;;(+ 1 2)作为参数,传递给了后一个函数,并作为最后一个参数。以此类推下去。
分享到:
评论

相关推荐

    text.unicode:一些用于处理 Unicode 字符串的 Clojure 函数和宏

    一些用于处理 Unicode 字符串的实验性 Clojure 函数和宏。 可能不会去任何地方,但我在这个过程中学到了一些关于 Unicode 的知识。 用法 请参阅源代码中各个函数的文档。 提醒自己如何运行可选测试 现在在测试文件...

    缺少:用于补充Clojure.core的函数和宏的Clojure的实用程序库

    `missing`库就是这样一款实用工具,它的目标是为Clojure社区提供一系列补充`Clojure.core`的功能和宏,以增强语言的表达性和功能性。 首先,我们来探讨`utility`标签所代表的含义。`utility`通常指的是通用的、方便...

    Clojure资格web资源

    "Quick Ref for Clojure Core.htm"是一个Clojure核心库的快速参考指南,它为开发者提供了Clojure核心库中各种函数和宏的速查表。这种文档通常包含函数签名、简短描述以及示例,帮助开发者迅速找到他们需要的函数或...

    living clojure pdf epub azw3

    此外,Clojure 有着丰富的内置函数和宏,如 `def`(定义变量)、`if`(条件判断)和 `let`(局部变量绑定)。 2. **函数式编程**:Clojure 强调函数式编程原则,如无副作用、纯函数和高阶函数。书中会介绍如何使用 ...

    Programming_Clojure.pdf

    2. **数据分析**:Clojure的函数式特性和宏系统使得它非常适合进行复杂的数据分析任务,尤其是在大数据处理方面。 3. **系统集成**:Clojure与Java平台的紧密集成使其成为连接不同系统和服务的理想选择。 4. **...

    最新版counterclockwise clojure插件

    7. **文档查看**:Counterclockwise还可以显示Clojure函数和宏的文档,有助于学习和使用Clojure库。 在压缩包文件中,`content.jar`、`artifacts.jar`、`site.xml`、`features`和`plugins`这些文件是...

    rackjure:在Racket中提供一些Clojure启发的想法。 如果球拍和Clojure发生冲突,请选择球拍

    如果球拍和Clojure发生冲突,请选择球拍" 这个标题暗示了rackjure是一个项目,它将Clojure语言的一些核心概念和特性引入到了Racket编程环境中。球拍(Racket)是一个通用、可扩展的编程语言,而Clojure则是一种基于...

    mapquest:一个很小的函数和宏库,用于处理地图

    一个很小的Clojure函数库和宏,用于处理地图 例子 左合并 (向左合并和地图) 将密钥保留在较早的地图中 (merge-left {:emergency-contact "917-283-3482"} {:emergency-contact "911"}) => {:emergency-...

    masonclj:库可简化Clojure对MASON ABM库的使用

    masonclj是一个非常小的库,提供了一些函数和宏,这些函数和宏可以平滑将与一起使用所涉及的一些粗糙边缘。 粗糙的边缘归因于Clojure和MASON建筑师的合理设计选择; masonclj使一些可用的解决方法更易于使用。 ...

    artigos-clojure:用于存储Clojure文章中描述的代码的存储库

    然后,"使用本地Clojure函数"涉及到了Clojure丰富的内建函数和宏。例如,`map`函数可以对集合中的每个元素应用一个函数,如将所有数字平方: ```clojure (map square [1 2 3 4]) ; 输出: (1 4 9 16) ``` 这里`...

    clojure-essential-ref::bookmark:cider-doc到“ Clojure,基本参考”

    在 Clojure 中,函数和宏通常伴随着 docstrings,这些docstrings是嵌入在源代码中的三引号字符串,用于解释其用途、参数和返回值。当使用 cider-doc 时,Emacs 会查找并显示选定形式的 docstring,这对于即时学习和...

    fif:Clojure中基于堆栈的编程(脚本)

    通过阅读和理解这些源代码,开发者可以学习到如何在Clojure中实现堆栈编程,以及如何设计可复用的函数和宏来构建高效脚本。 总之,“fif:Clojure中基于堆栈的编程(脚本)”这一主题涉及了Clojure语言如何借鉴并...

    xodarap:Clojure中的无畏递归

    在Clojure中,`comp`和`fn`等内置函数和宏已经足够强大,可以实现很多复杂的递归结构。然而,xodarap库通过提供额外的工具和语法糖,进一步提升了递归编程的便利性和效率。例如,`with-recur`宏可以帮助简化递归模式...

    游戏资源中的函数式编程___下载.zip

    在游戏开发领域,函数式编程(Functional Programming, FP)是一种被越来越广泛接受的编程范式。它强调将计算视为函数的组合,而不是状态的改变和副作用。本篇将深入探讨函数式编程在游戏资源管理中的应用及其优势。...

    它从clojure开始:Clojure实用指南

    接下来,你将学习Clojure的函数和宏。函数是Clojure的核心,它们可以无副作用地处理数据。宏则允许你在编译时进行代码操作,提供了强大的元编程能力。此外,Clojure的高阶函数,如map、filter和reduce,可以帮助你写...

    clojure-misc:Clojure练习-不使用

    这个“clojure-misc”项目似乎是一系列Clojure语言的练习,旨在帮助学习者加深对Clojure语法、函数式编程特性和常用库的理解。 1. **函数式编程基础**: - Clojure鼓励使用函数来解决问题,避免使用副作用,这有助...

    sicmutils:Clojure中的Scmutils

    sicmutils 作为 Clojure 社区的一员,充分利用了 Clojure 的动态性、函数式特性和宏系统,使得代码更加简洁、可读性强,同时也易于扩展和调试。Clojure 的这些特性使得 sicmutils 成为一个强大的研究和开发平台。 ...

    一个用于FoundationDB的Java API的精简Clojure包装器。- vedang / clj_fdb

    在Clojure中,库通常以`.clj`或`.cljs`文件形式存在,它们提供了一系列可重用的函数和宏,帮助开发者构建应用程序。 Vedang的`clj_fdb`就是这样的一个库,它将Java的API转换为Clojure友好的形式,使得Clojure程序员...

    learning-clojure-address-book:我在@JarrodCTaylor 精彩教程系列中取得的进展,关于如何使用 clojure 构建地址簿

    在实现地址簿的增删改查功能时,我们将接触到Clojure的核心库,如`clojure.core`,它包含了各种内置函数和宏。例如,` assoc`函数用于在映射中添加或更新键值对,`dissoc`则用于移除键值对。我们还可能用到持久化...

Global site tag (gtag.js) - Google Analytics