Clojure介绍

简介: 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/3455011 Clojure介绍Clojure是一个在Java虚拟机上运行的动态函数式编程语言,其语法源于Lisp语言,在Java虚拟机上运行时会编译成字节码,再运行。
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/3455011

Clojure介绍



Clojure是一个在Java虚拟机上运行的动态函数式编程语言,其语法源于Lisp语言,在Java虚拟机上运行时会编译成字节码,再运行。

Clojure坚持函数式编程风格,简化了多线程编程。Clojure坚持code-as-data编程哲学,自身带复杂的Lisp宏系统。

Clojure的作者是Rich Hickey。

Clojure类似于其它的Lisp,Clojure的语法建立在S-expressions,在编译前首先被读入器(Reader)解析成数据结构,Clojure的读入器支持字面语法如映射(map)、集合(set)以及矢量(vector)。除了列表(list),list语法将直接送出编译器。换句话说,Clojure编译器不编译list数据结构,其它的类型都支持。

Clojure是Lisp-1,与其它的Lisp变种并不完全兼容。

Clojure的语言特征:

1)用read-eval-print循环动态开发


2)提供丰富的数据结构集


3)通过software transactional memory 并行编程


4)Java兼容:Clojure可从Java库调用本地方法,Java程序能调用Clojure函数


5)Clojure是一个编译的语言,产生JVM字节码。

目录
相关文章
|
Java PHP 开发工具
编程语言Clojure入门
在众多的编程语言中,不少开发人员熟悉Java、C#、PHP等。但是很早以前,也有一些小众的语言,比如Lisp语言,它是一种适用于符号处理和自动推理的编程语言,内部使用表结构来表达非数值计算。而Clojure语言是在JVM上实现的Lisp风格的语言,语法与Lisp类似,且可以和Java语言进行互操作
1322 0
编程语言Clojure入门
|
7月前
|
Rust 算法 C++
【从 C++ 到 Rust:掌握 Rust 基础语法】From C++ to Rust: Mastering Rust Basics
【从 C++ 到 Rust:掌握 Rust 基础语法】From C++ to Rust: Mastering Rust Basics
131 0
|
JavaScript 前端开发 Java
JavaScript、PHP、Golang、Haskell、Elixir,哪个才是最佳编程语言?
  在过去的几年里,我有机会尝试了多种不同的编程语言。   我非常喜欢学习不同的语言、方法和范式。我是一个充满好奇心的人,一直对编程语言十分着迷。每种编程语言都是不同的,在本文中,我们来讨论一下以下五大编程语言的优点以及缺点。
308 0
|
Java
《Clojure程序设计》——导读
本节书摘来自异步社区《Clojure程序设计》一书中的导读,作者 【美】Stuart Halloway , Aaron Bedra,更多章节内容可以访问云栖社区“异步社区”公众号查看
2049 0