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.项目包括不动产、股权数据分析、报表管理、流程引擎等主要功能。 2.项目基于springboot + vue2进行开发,并引用redis处理部分缓存及重复提交等问题。
项目模块介绍: 系统一个权限访问系统,目前做到菜单级别的权限控制,正在做到接口级别的权限控制。目前项目主要的模块有:系统管理(用户管理、角色管理、菜单管理、数据字典)、图书馆管理(图书收集)、报表管理(图书阅读报表)。项目管理主要是对用户角色权限方面进行新增或修改,图书馆管理是用于记录读取过的读书,报表管理是数据跑批处理,对读书阅读进行t+1数据跑批处理,记录图书的阅读情况。 担任责任:项目都是由我自己开发的。主要的技术栈:前端VUE,后端springsecurity、token拦截器,mybatis-plus以及分页,重要日志入库、全局异常以及统一返回结果集处理
项目介绍:本项目为证券公司的核心运营平台,已上线多家头部券商。基于该平台,营业部柜员及客户经理可为投资者办理各种证券业务,如开户业务、权限业务及相关经纪业务。 技术介绍:本项目后端语言为Java基于微服务开发,前端基于Vue框架进行开发,生产使用Docker等相关容器化部署。同时在开发的过程中广泛使用本开发团队基于Node.js开发的相关工具进行辅助开发。 个人工作内容:本人担任项目经理、主要开发负责人。主要负责项目工作协调,资源调配及项目困难点开发,如集成视频服务、电子签字、对接第三方系统。
系统负责上下游数据的传输和整合,在数据的流转上有承上启下重要作用。技术选型有Struts2、PGsql、Kafka、hibernate等。 系统的数据下发流程存在下发速度慢等问题。原来系统1000W数据需要30小时,处理我经过优化后,只需要3小时。提高了系统的数据处理能力
1250java
网校在线课堂系统,学生上课系统 包含课程 im模块、下载管理、视频直播等 独立负责课程sdk开发 教务系统研发 mvp开发框架、自研im系统
1320android在线教育
当前共17791个项目

评论