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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
PPM系统用于产品的规划和分析,在整个产品的生命周期内属于初始规划阶段。技术选型有SpringCloud、Mysql、Kafka、MyBatis等。整体架构前后端分离,接以Restful为模型设计,为前端React提供数据支持。采用ElK、Promethus、Grafana等做系统的监控。结合Jenkins、K8S、Docker技术实现CI、CD 由于PPM系统定位问题困难,问题发现不及时。所以我开发设计系统日志追踪功能,能够精确定位问题,并发送邮件通知到相关人员。提高了运维效率,降低了运维成本
1440mysql
1. 精斗云云会计内部服务,同时提供存储操作根据客户对自己的数据的备份以及恢复的需求,提供加密形式的备份恢复,形成备份文件可在精斗云云会计系统恢复;客户操作可通过日志形式上传、以及提供客户自己备查 2. 主要负责实现以上的功能, 涉及技术栈包括:springboot、sqllite、kafka、elasticsearch 3. elasticsearch的语法和普通sql的语法比较不一样,开发过程不断查询文档解决
1. 这是公司内部使用的配件售后管理系统,主要有服务需求、配件需求两大价值链构成,两大价值链结合,对服务、物流、库存、周转提升进行综合管理,形成数字一体化管理平台 2.两大模块均有负责开发,主要技术栈包括:spring cloud 、BI、redis、mysql、mybatis、seata
1. 从功能上来讲包含了一个会计软件最常用的模块包括凭证、账簿、报表、资产、出纳等模块,基本囊括了一个小微企业在中国营商所需要的绝大部分会计功能,对于客户来说,是一款简单易用的会计产品;假如对会计原理不熟悉,为了方便使用者使用,还提供一系列服务,例如售后功能咨询、直播课堂等教学服务。 2. 基本所有功能模块都有深度参与开发,了解背后设计开发原理;从架构上来讲,依托于集团统一登陆平台精斗云,网关采用自研网关,拆解部分高内聚应用独立部署,并把所有服务采取微服务架构,服务之间采用grpc协议通信。 3. 老版软件采用的是单个应用的分布式部署,并且内部大量使用存储过程,不好维护。重构过程采用了上述的架
1.分为三个模块,首页,我的,核销 2.我负责独立开发三个模块 3.实现了店铺的管理,和产品的扫码核销 洗嗨嗨商家端app是一款店铺管理软件,洗嗨嗨商家端app主要用户洗车的商家,用户可以在这里对自己的店铺进行管理,软件中有各种管理功能。
当前共17791个项目

评论