Clojure

开源公司:甲骨文公司

作品详情

中文名
clojure
展开
特 点
函数式编程语言引入
展开
风格
Clojure是一种LISP风格的语言
展开
性 质
当今最主流的运算平台JVM
展开
释 义
JVM的字节码进行运算
展开
特色
支持不可变的数据结构
展开

1基本内容

  

概述

Clojure是一种LISP风格的语言,运行在JVM上。Clojure的一大特色就是其并发机制,它支持不可变的数据结构(Clojure是来自于可持久化的数据结构)。Clojure还有一个特色是软件事务存储(Software Transactional Memory,STM),其支持用事务代替锁和互斥器来更新共享内存。STM还是一个有争议的技术,还需要更好的证明自己,一个简单的办法就是访问一个JVM上的实现。

作为当今最主流的运算平台JVM,把函数式编程语言引入JVM也是很多人尝试的方向,Clojure就是其中之一。Clojure是一个在JVM平台运行的动态函数式编程语言,其语法解决于LISP语言,在JVM平台运行的时候,会被编译为JVM的字节码进行运算。  

特点

Clojure保持了函数式语言的主要特点,例如immutable state,Full Lisp-style macro support,persistent data structures等等,并且还能够非常方便的调用Java类库的API,和Java类库进行良好的整合。

2编程举例

Hello world:

(println "Hello, world!")

定义一个函数:

(defn square [x] (* x x))

使用Java Swing库的 GUI Hello World:

(javax.swing.JOptionPane/showMessageDialog nil "Hello World")

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
本方案面向家政从业者,解决流量公域流量转私域流量提高锁客率的问题,小程序对家政公司本身提高展示率,线下展示载体,提高公司的品牌效应,人员管理方面对家政从业者起到高效的调度作用,客户端展示页面清晰,多品类运营,解决运营繁琐等问题
230Vuejava
美食外卖微信商城(公众号商城微信支付) 包括微商城, 后台管理. 包含优惠折扣, 砍价, 三级分销等功能 开发框架: java, 前台AngularJS+JQuery 数据库: MySql5.5以上
首杨集团有限公司CMS系统是一款针对企业信息管理需求定制的综合性内容管理系统。该系统全面覆盖了内容创作、编辑、审核、发布等管理流程,支持多语言和多站点管理,适用于企业官网、新闻发布、产品展示等多元化业务场景,实现了信息的高效管理和快速发布,提升了企业品牌形象和市场竞争力。
360CMSRedisDocker官网
WeJob - Java 本地轻量级消息队列框架‌ ‌项目简介‌ WeJob 是一款基于 Java 开发的本地化消息队列框架,专注于简化分布式系统中的异步通信与任务调度。其核心设计参考 Kafka 的分区存储与高吞吐特性,结合本地文件系统的持久化能力,适用于轻量级场景下的消息持久化、削峰填谷及系统解耦需求‌34。 ‌核心特性‌ ‌轻量级本地存储‌ 基于文件系统的消息持久化机制,支持消息顺序写入与分区管理,确保数据不丢失‌12 文件滚动策略自动清理已消费数据,避免存储空间无限增长‌1 ‌高吞吐设计‌ 采用批量消息提交机制,优化磁盘 I/O 性能,单机支持每秒万级消息处理‌34 零拷贝技术减
620java
WeJob - Java 本地轻量级消息队列框架‌ ‌项目简介‌ WeJob 是一款基于 Java 开发的本地化消息队列框架,专注于简化分布式系统中的异步通信与任务调度。其核心设计参考 Kafka 的分区存储与高吞吐特性,结合本地文件系统的持久化能力,适用于轻量级场景下的消息持久化、削峰填谷及系统解耦需求‌34。 ‌核心特性‌ ‌轻量级本地存储‌ 基于文件系统的消息持久化机制,支持消息顺序写入与分区管理,确保数据不丢失‌12 文件滚动策略自动清理已消费数据,避免存储空间无限增长‌1 ‌高吞吐设计‌ 采用批量消息提交机制,优化磁盘 I/O 性能,单机支持每秒万级消息处理‌34 零拷贝技术减
620java
当前共17578个项目

评论