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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
项目简介:主要为网易新闻APP的时政类直播提供技术支持,包括运营后台、直播服务、聊天服务,每日承载百万级别的访问量,并且基本达到高可用 相关技术:openresty、springboot、dubbo、rabbitmq、redis、mysql、elasticjob 主要职责: 负责日常需求和维护,主要包括运营直播配制后台、直播信息生产平台和消费平台、消息调用统一接入和认证平台等 针对热门直播压力大问题,改造和优化直播核心服务,一方面推动cdn运营商优化直播推拉流,一方面通过监控redis热key自动下发预做二级缓存方案减轻压力 工作成果: 周均支持 50+ 业务需求,上线无延期,上线后
1.适用于教育部门、培训机构、企业培训部门,解决学校一体化管理。 2.相比市场,利用先进的云计算技术,将教育信息化资源和教学管理系统进行有效整合,实现生态基础数据共享、应用生态统一管理,为智慧教育建设的统一性,稳定性,可扩展性,互通性提供保障的智慧教育一体化云解决方案 3.主要由班牌系统、预约系统、访客系统、闸机系统、门禁系统、画框屏系统、防疫系统、点餐系统、宿舍系统等组合而成:
830教育vueandroid
1、用户关注公众号领券 2、用户注册送券 3、用户在小程序中抢购优惠券 4、用户购买优惠券记录 5、门店小程序优惠券核销 6、后台管理系统中包含: 1、管理门店 2、会员信息管理 3、优惠券信息管理,包含:优惠券内容配置(注册领取,抢购,优惠券包) 4、优惠券、券包领取/购买详情 5、门店优惠券核销详情 6、积分管理 7、店员管理 7、这里代码为纯后端代码
1440mysql
1.本方案面向中小企业,解决了中小企业智能办公各方面的需求 2. 相比于市场常规方案,本方案有实现对企业人、车、物各方面的管理 3.方案的产品组成云端部署,超级管理员新增账户,用户即可通过web和小程序登录使用
510vuemysqlcss物联网
项⽬简介:为⽅便教学使⽤开发的棋类游戏框架,可以快速开发扩展新棋类、接⼊不同AI进⾏对战。旨在⽅便学⽣学习软件⼯程、专注于AI核⼼逻辑的编写。 负责模块: 1. 参与项⽬需求评审,确定需求细节。 2. 主导棋类游戏框架基类的开发。 3. 两种五⼦棋AI的编写(极⼤极⼩值搜索算法、CNN卷积神经⽹络)
当前共17986个项目

评论