内容简介:clojure是lisp语言在java上的方言,clojure视代码为数据,且拥有一套lisp宏系统。Clojure提倡不可变性与持久数据结构,并鼓励程序员显式地管理标识及其状态。对利用不可变值及显式时间进展构造进行编程的专注旨在促进更加健壮的(尤其是多线程)程序的开发。Clojure的类型系统是完全动态的,但人们近期也开始探索其基于渐进类型化的实现。
clojure是lisp语言在 java 上的方言,clojure视代码为数据,且拥有一套lisp宏系统。
Clojure提倡不可变性与持久数据结构,并鼓励 程序员 显式地管理标识及其状态。对利用不可变值及显式时间进展构造进行编程的专注旨在促进更加健壮的(尤其是多线程)程序的开发。
Clojure的类型系统是完全动态的,但人们近期也开始探索其基于渐进类型化的实现。
安装
Leiningen
这是一个用于管理、运行clojure的工具。
Mac/Linux
wget https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein chmod 755 ./lein sudo ./lein /usr/bin/ # run the install script lein
Windows
下载: lein.bat
执行上述下载的脚本。
Calva
建议使用 Visual Stdio Code 作为IDE(相信我,你会爱上她的),然后安装 Calva 插件。
以上,这样就完成了开发环境搭建。
REPL
REPL的含义是“Read-Eval-Print Loop”,即“读取-执行-输出 循环”,就是交互式编程的意思。下面我们进入clojure的交互式编程:
lein repl
然后在终端输入 (println "Hello, World!")
,即可看到coljure版本的 Hello World
了。
Project
接下来,我们学习项目版的 hello world
,即新建一个项目,新建几个文件,用文件的形式来输出 hello world
,搞定这个,我们就可以用coljure来开发项目了。
好了,执行:
lein new hello-world
然后用 VS Code
打开这个这个文件夹,我们就可以看到一个较完整的Clojure项目了。打开文件 project.clj
,这里是项目的一些设置项:
(defproject hello-world "0.1.0-SNAPSHOT" :description "FIXME: write description" :url "http://example.com/FIXME" :license {:name "EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0" :url "https://www.eclipse.org/legal/epl-2.0/"} :dependencies [[org.clojure/clojure "1.10.0"]] :repl-options {:init-ns hello-world.core})
打开 src/hello-world/core.clj
,可看到lein已经为我们生成了一个 hello world
脚本,如下:
(ns hello-world.core) (defn foo "I don't do a whole lot." [x] (println x "Hello, World!"))
里面有一个方法 foo
,下面我们在 project.clj
中添加一行 :main hello-world.core
,如下:
(defproject hello-world "0.1.0-SNAPSHOT" :main hello-world.core :description "FIXME: write description" :url "http://example.com/FIXME" :license {:name "EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0" :url "https://www.eclipse.org/legal/epl-2.0/"} :dependencies [[org.clojure/clojure "1.10.0"]] :repl-options {:init-ns hello-world.core})
将 src/hello-world/core.clj
略作修改:
(ns hello-world.core) (defn -main [& args] (println "Hello, World!"))
最后,执行: lein run
Hello, World!
如果看到了这个,恭喜你开启了clojure的大门。
参考
转载请注明出处:
http://zgljl2012.com/clojureru-men-hello-world/
以上所述就是小编给大家介绍的《Clojure安装与入门》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Golang入门:从安装、部署以及GoLand的安装开始
- webpack入门(2) - 安装,配置,环境搭建
- [ Laravel 5.7 文档 ] 快速入门 —— 安装配置
- 从安装到入门:ElasticSearch 快速学习手册
- ES 入门(一):安装部署与基本概念
- 快速入门Pytorch(1)--安装、张量以及梯度
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
现代应用数学手册
《现代应用数学手册》编委会 / 清华大学出版社 / 2005-1-1 / 48.00元
本书是进行科学计算的常备工具书,内容新颖,查阅方便,实用性强。主要介绍生产、科研、管理、数学等实践中在计算机上使用的各种计算方法和技巧。全书分为14章,依次为数值计算概论、插值法、函数逼近与曲线拟合、数值积分与数值微分、方程求根、线性方程组的直接解法和迭代解法、矩阵特征值问题、非线性方程组数值解与最优化方法、常微分方程初值问题和边值问题的数值解法、偏微分方程的数值解法、多重网络法和积分方程数值解法......一起来看看 《现代应用数学手册》 这本书的介绍吧!
在线进制转换器
各进制数互转换器
html转js在线工具
html转js在线工具