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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
1.项目主要适用于远程控制桌面,目前只有android版本 2.我负责后台服务开发和android的音视频通信、共享桌面、反控 3.使用的技术主要为: 3.1:服务器使用的是springboot3 3.2: 客户端使用的是webrtc,反控使用的是安卓的辅助服务
项目主要分为新店开发,工作流任务审批,店铺管理等等众多模块,本人完成了以上三个模块以及登录的功能开发,主要的技术栈有jquery、redis、spring、mysql等等
雷蛇 2015年01月04日 - 2015年10月10日 项目类型: Web 网站 项目描述: 当时雷蛇的一个电子游戏相关设备商城项目,主要是鼠标,键盘耳机等数码产品 用户端包含首页,用户中心,商品列表,购物券,购物车,订单列表,订单详情等页面,基本与现在的商城功能一致 管理后台包括商品管理,活动管理,订单管理等。对整个系统以及商品的上下架,订单的处理进行统一的管理 行业: 电商 我的职责: 负责从项目从0-1的搭建,包括页面ui的设计开发,登录,订单相关的功能实现,以及后台功能的开发 除此以外,还包括该系统上线后的后期维护,也是我在负责
1560电商vuereact
功能:本系统整合,对接了各种第三方支付比如微信支付,如:支付宝,IOS支付,google支付等。提供了一套统一的支付接入文档给业务系统进行接入,降低业务系统使用不同支付渠道的难度。 1. 业务系统申请系统接入参数,即可享受各种支付能力。 2. 本系统难点:支付的0掉单。通过延迟队列和订单状态轮询,实现60秒内订单自动补单。
1090mysqljava
功能简介: 本项目是一个在线游戏充值平台。规避IOS30%的充值税。支持各种充值渠道包括海外的gash充值,mycard充值,韩国的naverpay钱包,支付宝国际等。提供web页面给玩家进行在线充值,另外支持其他业务系统进行支付渠道的接入。 管理员在后台配置商品信息。用户在前台进行登录,进行购买游戏道具。 1. 本系统采用的技术:java,springboot,MySQL,Redis,Vue,js 2. 本系统难点:对接各渠道的不同api协议。并且要做到0掉单60秒内发货。我们通过异步发货重试来保证发货的0丢失。采用轮询机器人进行订单的状态校验,通过与远程订单的比对实现了自动补单自动发货的功
当前共18001个项目

评论