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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
项目描述: 管理平台管理商品,订单查看,发货等功能。 系统架构: 该服务利用 SSM 框架搭建应用,数据库使用 Mysql, 用 Redis 作为缓存和实现分布式锁,成本问题整体项目采用单一服务结构。
900vuemysqljava
统计t-1日考勤相关所有信息 统计每个人员每日出勤情况 请假,请假时长,请假类型 考勤异常,旷工,迟到,早退
由湖北移动网管中心组织研发的手机端TD和GSM的下载速率指标的网络测试软件。 上传下载文件,HTTP网络,PING,WLAN等进行评测,对网络问题分段定位。 本期工程基于安卓系统建设开发,IOS系统建设开发,手机端网络测试,可以被动或主动的发起测试任务,对网络指标、网络速度进行测试。并对测试结果进行统计、展示。支持从网投系统中自动派发任务,但仅限于已经派发EOMS工单的投诉任务。 整体架构包括服务端管理与手机端两部分。 服务管理端: 1、应用层:面向用户提供人机交互界面,提供功能主要有测试任务管理,测试人员管理,测试任务下发,测试结果统计分析。 2、核心服务层::为应用层提供各项可重复利用的核
1120redisjava
绩效考评 1.各部门的负责人去选择不同的模板去创建不同的考评 2.小组长选择自己担任的小组,选择年份,选择模板去发放考评 3.组员根据组长发放的模板去考评打分,完成提交小组长 4.小组长在继续为组员考评打分 5.打分完成最终取平均值
营销中台主要包括活动中心、为你推荐、菜单页推荐、再来一单、积分商城等功能。其中活动中心提供用户领券能力,包括会员领 券,兑换码领券,H5领券,抽奖活动。为你推荐,菜单页推荐,积分商城共用推荐引擎能力。 系统架构: 该服务利用 SSM 框架搭建应用,采用 dubbo 作为服务间的 RPC 调用,利用 nacos 实现服务的注册发现和配置中心功能,消息中间件采用 RocketMQ ,用 Redis 作为缓存和实现分布式锁, 使用阿里云 ARMS 监控、调用链分析 企业项目不可多传作品图
当前共17778个项目

评论