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. 基础模块开发: 1、优化故障研判模块,2、根据提供得接口数据,做输入处理,适配公司现有 主站业务逻辑,如拓扑识别、负荷辨识、阻抗、线损分析等等。 2. 文档编写:详细设计文档 3. 服务拆分工作、项 目的 mysql、oracle 适配工作。
1140vuemysqlspringbootreact
1、负责计划模块中的常态调整模块功能开发和维护: 1)模块主要功能,发送、退回、转派、新增、删除、调整、调减、导入、导出, 数据主要以状态值进行流转。(角色+路由)判断所能查看状态值的权限,一个状态值对应一个菜单 页面 2、作为组长主导数据报表功能模块的开发,共计 30-40 张报表。 3、后面作为计划模块组长,主导并带领组员一起在完成需求功能开发之外,解决该模块出现的性能 问题,主要包括全选的批量发送问题、sql效率慢的问题,以及解决业务代码冗余、混乱等一系列问 题。 4、主导用Activity 7流程引擎去重构已有的功能模块。 5、熟悉并在docker+k8s上部署新开的服务。 6、还负责
责任描述: 负责活动模块(秒杀、砍价、拼团、每满每减、抽奖) 需求沟通、数据结构设计、接口编写、文档编写、埋点数据对接、模块部署、任 务分配。 负责系统监控模块的集成。 负责内购小程序的设计和实现。 项目描述: 技术: Springboot+SpringCloud+Nacos+Sentinel+Zipkin+Gateway+Amqp+Mysql+Redis+Mongodb+SpringbootAdmin+Vue 该项目包括:微信小程序、PC、H5、微信内购小程序4个渠道,共用一个后台,有消费、售后、活动营销等一系列商城必备的功 能,为飞利浦官方销售商品的商城之一。 项目包括 product (
院系领导在平台发布教学考核工作任务后,教员可根据平台进行信息填报由系统算分,填报后提交院系审核,统计数据
1060ERPweb
秘塔AI搜索是一款能够深入理解用户的问题的AI搜索。 我做了搜索,账号信息,反馈,反爬等功能。 PC端,h5,小程序,chrome插件都有参与
2060react
当前共18000个项目

评论