最新文章列表

clojure defn的参数解构

In Clojure 1.2, you can destructure the rest argument just like you would destructure a map. This means you can do named non-positional keyword arguments. Here is an example: user> (defn blah [ ...
Aaron5 评论(0) 有1894人浏览 2013-04-16 23:50

clojure-基本语法-集合(三)

操作集合的通用语句 1、count: count函数返回集合中元素的个数,如果count参数为nil,则返回0 user=> (count nil) 0 user=> (count []) 0 user=> (count [1 2 3]) 3 user=> (count '(1 "a")) 2 user=> (count {:on ...
Dead_knight 评论(0) 有2286人浏览 2013-03-20 20:45

clojure-基本语法-集合(二)

三、映射Map Map存储一个键-值对的集合。键和值都可以是任何数据类型的对象,无论是基本数据类型还是其它映射。然而,使用关键字来作为映射的键非常合适,因此它们经常在应用映射的场合被使用。clojure的Map有三种实现方式:数组映射、哈希映射和有序映射。它们分别使用数组、哈希表和二叉树来作为底层实现。数组映射适用于较小的映射,而对哈希映射和有序映射的比较则要基于特定应用场合的情况。Map形式以“{ ...
Dead_knight 评论(0) 有3798人浏览 2013-03-17 15:22

clojure-基本语法-集合(一)

Clojure提供以下集合类型: list, vector, set, map。并且可以使用Java里面提供的集合类型。所有的clojure集合是不可修改的、异源的以及持久的。不可修改表示集 ...
Dead_knight 评论(0) 有8383人浏览 2013-03-16 19:39

clojure-基本语法-符号及关键字

一、创建: Keyword: 关键字是一个内部字符串; 两个同样的关键字指向同一个对象; 通常被用来作为map的key。 user=> (keyword 'foo) :foo user=> (keyword "foo") :foo user=> (keyword "user" "foo") :user/foo ...
Dead_knight 评论(2) 有3883人浏览 2013-03-16 11:47

clojure-基本语法-流程控制(二)

二、异常处理 Clojure代码里面抛出来的异常都是运行时异常。当然从Clojure代码里面调用的java代码还是可能抛出那种需要检查的异常的。try,catch,finally 以及throw 提供了和java里面类似的功能: try、catch、throw、finally: user=> (try (throw (Exception. "error")) (fina ...
Dead_knight 评论(0) 有2258人浏览 2013-03-15 12:56

clojure-基本语法-流程控制(一)

一、标准的流程控制 if: 将一个判断表达式作为它的第一个参数进行求值。如果求值为true,那么就返回它的第二个参数(相当于“then”子句)的求值结果。如果结果为false(包括nil)就返回第三个参数的求值结果(相当于“else”子句),前提是有提供第三个参数并且不为空。 user=> (defn is-small [number] (if (< number 100) &quo ...
Dead_knight 评论(0) 有2930人浏览 2013-03-13 20:33

clojure-基本语法-函数定义

一、创建函数: fn: fn是一个宏(后面进行详细描述),用于定义一个简单的函数,如下: user=> (fn [] "hello") #<user$eval375$fn__376 user$eval375$fn__376@eabd2f> user=> ((fn [] "hello")) "hello" ...
Dead_knight 评论(0) 有7607人浏览 2013-03-12 21:00

clojure-基本语法-正则表达式

一、创建正则表达式 re-pattern函数: 函数 (re-pattern) 接受一个字符串参数,返回一个正则表达式样式(java.util.regex.Pattern类的实例)。这个样式能用于正则表达式匹配 user=> (re-pattern "\\d+") #"\d+" 也可以使用读取宏来直接用文本的方式输入正则表达式:在字符串前 ...
Dead_knight 评论(0) 有3916人浏览 2013-03-12 10:44

clojure-基本语法-字符串类型

一、创建 函数str: 函数 (str) 接受任意数量的参数。如果参数不是字符串则将其转换为字符串,返回创建的新字符串。如果没有参数或为nil,则返回空字符串,""。 user=> (str 1) "1" user=> (str -2.5) "-2.5" user=> (str "a") ...
Dead_knight 评论(0) 有2622人浏览 2013-03-11 21:13

clojure-基本语法-数字类型

一、算术运算 加法+: 加法函数(+)接受任意数值类型的参数,返回它们的和;没有参数时返回0。 user=> (+) 0 user=> (+ 1) 1 user=> (+ 1 2 3 4) 10 减法-: 减法函数(-)接受任意数值类型的参数。如果只有一个参数,则返回它相反的数。当有多个参数时,返回第一个参数减去后面所有参数的结果。 user=> ( ...
Dead_knight 评论(0) 有4083人浏览 2013-03-11 15:46

clojure-学习资料汇总

官方文档: http://clojure.org/documentation 中文资料(强烈推荐): 1.clojure入门教程 http://xumingming.sinaapp.com/302/clojure-functional-programming-for-the-jvm-clojure-tutorial/ 2.clojure文档翻译 http://code.google.com/p/c ...
Dead_knight 评论(5) 有8249人浏览 2013-03-10 20:54

用Clojure写的阅读器“美味爱读”,欢迎大家试用

美味爱读(readWise)现在正式开放帐号申请了。     美味爱读是一个智能的阅读器,它以订阅标签而非订阅媒体的形式组织内容:           我们从社交网络上抓取转发数来对文章排序:       用户可以通过“标记”按钮和“焚毁”按钮训练:       响应式UI多种设备可以使用:           目前测试阶段我们 ...
sunngmw 评论(0) 有853人浏览 2013-01-05 16:19

clojure collections

user=> (class '(1 2 3)) clojure.lang.PersistentList user=> (class [1 2 3]) clojure.lang.PersistentVector user=> (class #{:the :brown :fox}) clojure.lang.PersistentHashSet user=> (clas ...
no7beckham 评论(0) 有848人浏览 2012-10-10 10:07

Clojure Dev. on Eclipse

  原创,转载请注明。 本文关注怎样在eclipse上搭建基本的Clojure开发环境。本文读者需要有Java的开发经验和eclipse的使用经验,最好有Maven使用经验。 1.   基础概念 1.1.  Clojure Clojure 是以JVM为基础平台的 Lisp 方言,属于现代的函数式语言。关于Clojure本身可以访问其官网(http://clojure.org ...
hyper-carrot 评论(2) 有1536人浏览 2012-08-14 07:26

clojure的文件IO处理的持续优化

、需求,把文本文件r.txt的内容处理(每行前边加hello 后边加!),然后写入w.txt 2、实现1: (defn read-file []     (with-open [rdr (clojure.java.io/reader "f:/r.txt")]         (doall             (map #(str "hello" ...
weiyongqing 评论(0) 有1126人浏览 2012-05-18 15:11

Clojure细节之form和special form的区别

前言     在lisp程序员看来,form和special form的区别是一目了然而且无需解释的--因为这两个 概念本身就源自lisp.但对于指令式语言的开发人员而言,当他们进入clojure的世界中,会不 断看到和听到这两个名词,然后会把special form理解为某种关键字或者是宏之类的东西. 这样的理解实际上是有一定偏差的. form     首先让我们来看看Clojure中 ...
songry 评论(1) 有2265人浏览 2012-05-07 14:26

window 下安装配置Clojure的Emacs开发环境

安装步骤和方式参看巫云的教程 64位window7下配置Clojure+Emacs开发环境 http://www.cnblogs.com/darkluck99/archive/2012/02/20/2360216.html 我这里做一下安装补充,避免大家走弯路: 1、xp下的Emacs配置目录是在C:\Documents and Settings\你的当前用户名\Application Data, ...
yoyayoyayoya 评论(0) 有2100人浏览 2012-03-19 16:20

clojure第二次聚会

此次聚会,各地都有来的。感觉真是有幸。收获非常大。并且面对面见庄晓丹,江宏等等高手们的谈论。加强了继续搞clojure的信心。 在clojure论坛上提到的问题,老外也给我了hint,做了回答。建议很中肯。我就应该一步一步来,先把clojure的doc文档网站上的core都敲打一遍,然后,学习孙宁的RPC框架,空闲时做4clojure的问题。
weiyongqing 评论(0) 有1907人浏览 2012-03-06 16:41

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics