欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

听说scala、结缘clojure

程序员文章站 2022-05-21 09:23:49
...

 

学习scala有一会了,零零碎碎,没有太多时间与精力投入,一段时间后,也厌倦了,虽然scala某些方面很犀利,但兴趣到最后也没多少了,遇到了clojure\也是缘于http://blog.fnil.net/ ,这几天逐步有点入门了,至今而觉比scala要简单许多,也是这才是语言的精髓与王道,而不是看它有多复杂,曲高和寡呀。

 

什么时候也整个教程啥的。。。

 

let 在clojure使用很广泛  http://clojuredocs.org/clojure_core/clojure.core/let   

 

好的教程

https://code.google.com/p/clojure-doc-en2ch/wiki/Chapter_7

 

http://qiujj.com/static/clojure-handbook.html

 

http://xumingming.sinaapp.com/302/clojure-functional-programming-for-the-jvm-clojure-tutorial/#defining-functions

 

查询clojure使用api,中文地址见这里

http://clojure-api-cn.readthedocs.org/en/latest/

 

其实我目前发现的这个网站才是大爱呀,demo+语法介绍,有价值

http://clojuredocs.org/clojure_core/clojure.core/when-not

索引方式google=tag clojure+when/let等,一般排在前面即时上面这个网站

 

学习了这么久,大概有10来天了吧,发现clojure中各种函数太多了,记不住啊,可能记住常用的吧,但在不熟悉的前提下,这些超级多的函数,搞晕了,不知道这种学习方式对不对,但目前学习一种新语言,这可能是一个必须经历的过程吧,必须坚持,断然不能半途而费呀。

 

刚发现,这位博主很有爱,http://dead-knight.iteye.com/blog/1827196  资料齐全,缘君选择。

 

 

https://github.com/stuarthalloway/programming-clojure   学门语言,哪有这么容易,入门简单,想要深入还得敲烂指头啊。这上面的例子,比较丰富。

 

我看到了clojure的副作用了

->(def jucounter (atom 0))

->(defn juinc [] (swap! jucounter inc)))

->(juinc)

->(juinc)

类似上面这种场景,如果多线程并发,如果jucounter是一般数据类型,是否很难保证是线程安全的,利用

[atom][swap!]如何利用stm特性来保证aci,当然不是D(持久性)

 

http://learnxinyminutes.com/docs/clojure/

 

lein基本配置,在此做个备份:

Path = C:\Program Files (x86)\Common Files\NetSarang;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%JAVA_HOME%\bin;%M3_HOME%\bin;%SCALA_HOME%\bin;D:\Program Files (x86)\TortoiseSVN\bin;D:\Program Files (x86)\sbt\;%LEIN_HOME%\;

 

CLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CLOJURE_HOME%\;

 

CLOJURE_HOME = D:\runc\clojure-1.5.1

 

lein不同版本下载

https://github.com/technomancy/leiningen/downloads

 

这位作者的安装过程和方法很靠谱:http://blog.csdn.net/teamlet/article/details/8026176

 

 

字体很好看:http://learnxinyminutes.com/docs/clojure/

 

 

 

 

 

 

相关标签: clojure