关于Clojure的简单介绍

*:下面内容翻译自Clojure官网的部分内容,Clojure官网网址为:http://clojure.org/。这里仅为抛砖引玉,故此处保留原文,如觉翻译生硬不通,请移步到官网或参考下面英文部分。


Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR, and JavaScript). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.

Clojure是一个基于Java虚拟机(还有基于CLR和JavaScript版本的)动态编程语言。它被设计为一种通用语言,它具备像使用脚本语言进行开发时一样的能进行交互式开发的能力,并且同时为多线程编程提供了一个高效、稳定的平台。Clojure代码会被编译成JVM的字节码——但虽然它是一种编译语言,Clojure却完全是动态的:因为所有Clojure特性都可以在运行时得到。Clojure为访问Java框架提供方便的访问方式,并且可以通过使用类型提示/推断来避免使用反射来调用Java代码。

Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs.

Clojure是一种Lisp方言,因此具有Lisp“代码即数据”的特性以及强大的宏(macro)系统。它首先是一种函数式编程语言,并具有一组丰富的不可变的、持续的数据结构。当需要可变数据时,Clojure提供了软件式事务内存系统(STM)和可激活代理(Agent)系统来保证它们在多线程应用中能够被简洁地、正确地使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值