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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
微微快点是食堂智能化管理新系统,解决因消费机不能在线订餐或消费时不能处理订餐的最佳解决方案。本系统通过手机APP、云端后台、微信公众号、微信小程序、钉钉等实现内网或外网在线订餐的功能,食堂可通过就餐机(Windows版和Andorid版)进行ID卡、IC卡、二维码或人脸等刷卡就餐,并根据订餐状态将作出相应扣款。
360小程序android智慧食堂
氢能车辆公共数据采集平台开发 车企平台转发数据、数据清洗、数据加工、数据归档、数据备份及功能开发与可视化 建设目的是对全域氢燃料电池车辆、加氢站、氢发电等场景进行数据采集、监控等 氢安全的监控平台 6个月周期计划文字描述 (共24周) 第一阶段:需求分析与架构设计(第1周-第2周) 目标:完成技术架构蓝图设计与核心组件选型验证 关键任务 1.架构设计 构建服务架构 划分例如 数据采集、清洗、存储、分析、可视化5大核心服务 定义GB/T32960标准消息格式 实现设备长连接通信 设计并发连接池 构建元数据管理库 2.技术验证 测试理论环境下的数据吞吐能力 完成与Tbox的数据对接测
该系统主要为华润燃气集团的客户进行燃气买卖交易使用的一个专门交易燃气的商城平台, 该系统主要主要提供4大业务模式服务,销售挂单、销售拼单、竞拍采购,比选采购。 主要职责: 1、销售挂单业务模式的开发:销售挂单、审批流程、短信集成、合同流程、支付流程等等。 2、销售拼单业务模式的开发,拼单相关流程,审批流程,推送 比选/竞价 业务等等。 项目亮点: 1、灵活应用自定义注解实现代码的解耦和复用。如:业务操作权限、日志记录等。 2、使用redisson实现读、写锁结合乐观锁用于资金、数量扣减等高并发问题处理。 3、使用redisson 实现分布式锁保证数据安全性,如:解决摘单流程并发问题、合同生
340IT
本项目是基于开源的线上诊断工具Arthas进行改造的,通过修改arthas-tunnel-server的Netty的ChannelHandler逻辑(增加AgentToBrowserHandler和BrowserToAgentHandler),以及增加一个去重工具DistinctUtil,使之可以监听多个副本,解决因请求随机到达其中一个副本而需要通过多个控制台监听不同副本的问题。 此改造对以前的一对一的场景没有任何影响,当需要同时连接多个副本,只需要确保所有副本中arthas agent的前缀是相同,就可以通过前缀匹配连接上所有的副本
460线上诊断工具
为物流控股有限公司设计并开发基于Spring Cloud的分布式风控管理系统,通过动态预警规则配置、跨系统数据拉取、自动化风险处理流程,实现全链路风险监控与闭环管理,覆盖客户信用、库存积压、合同履约、收入成本对比等核心业务场景。(1)通过nacos实现服务注册与配置中心统一管理。 (2)通过aviator和nacos开发规则引擎,实现预警规则的动态配置 (3)使用OpenFeign实现跨子系统接口调用以获取实时数据,响应时间在1s以内。 (4)基于GateWay统一鉴权,拦截非法请求。 (5)通过rabbitMQ实现异步解耦与事件驱动通信,确保预警的处理不会阻碍业务的正常运行,同时也可以避免因
当前共17861个项目

评论