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、负责搜索模块的优化,加入ElasticSearch来提升搜索速度,替代之前直接对数据库进行查询 2、负责登录模块的实现 3、对项目进行微服务化拆分,加入Docker管理 4、针对分布式事务问题使用seata来进行处理,保证数据库访问一致性 技术描述: 1、异步编排CompletableFuture对服务进行异步处理,提高服务响应时间 2、使用D
Java虚拟机知识的枯燥和乏味,让很多Java开发人员望而却步,本书旨在让Java虚拟机的学习不再困难重重,原理讲解通俗易 懂,全程案例边学边练,理论与实践相辅相成,让学习者切身领会到Java虚拟机的奥义。 本书从理论到实践再到调优,内容全面,讲解细致,实战性强。全书共分四大篇章:运行时数据区篇,涉及Java内存区域的各 个核心结构,以及对象创建的各个细节;垃圾收集篇,详解Java内存回收体系,涉及各种回收算法、多种垃圾收集器;字节码与 类的加载篇,介绍字节码文件的解析和类的加载机制;性能监控与调优篇,上手实践JVM常用的监控与调优工具,企业级的性能 调优案例。 本书适用于Java的学习者与从
1. 3D深度体感相机能够识别人体部位(四肢、躯干、头部等),可用于实现人体动作的捕捉,进而实现人机自然交互。 2. 我负责对接体感相机,实现对人体动作的识别,进而实现软件操控,实现体感互动游戏。主要使用Android/Java/C++/NDK/OpenNI技术栈 3. 主要难点在于虚拟触摸屏、虚拟键盘鼠标、虚拟游戏手柄、虚拟陀螺仪的实现,需要在Linux输入子系统实现虚拟输入设备,并且将肢体动作转换为输入信号。
1. 项目实现了对中英文句子的语法成分的分析和识别,能帮助学习者快速理解句子主干,从而建立语感。另外一项主要成果是智能辞典,能够准确的呈现一个单词在句子中的最合适的词性和词义。 2. 负责语法和知识点分析的主要代码实现,主要使用 Python+NLP,Java+MySQL+SpringBoot技术栈,完成了中英文句子语法成分的识别,句子难度的定级,以及匹配的各年级的知识点清单。 3. 实际开发过程中,最大的难点在于自建了一套语法描述的机器语言,该套语言由句式结构模板和知识点脚本组成,在语法定义和描述上极具灵活性,另外对该套机器语言的解析、编译和执行,都是极具挑战性的任务。
2720教育mysqlredis
1,公司由于使用nc系统年限较久,每年需要缴纳高额系统维护费用,并且nc系统操作复杂,对普通用户不太友好,所以自研一套更符合公司业务,操作更简单的费用系统 2,负责整个后端功能从需求评审到最终实现,对接了公司的nc65系统,单据完成审核后推送nc65进行结算
当前共17960个项目

评论