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. 实现用户下单黄金进行交易等 3. 实现全自动根据实时金价进行自动补仓、自动爆仓 4. 实现实时金价实时计算订单盈亏 5. 提供完善的后台管理工具进行订单维护等 6. 实现特殊订单走特殊流程操作等
940vueJava
基于 JFinal、Layui、MQTT、MySQL、TDengine 构建,实现中央空调系统数据实时采集、监控、分析和预警。平台通过传感器和网关获取设备运行数据,利用 TDengine 高效存储和查询,结合 Layui 实现数据可视化,并通过 MQTT 实现实时消息推送。提供设备运行监控、故障预警、能耗分析等功能,助力提升设备运行效率,降低能源消耗,实现智能化运维。
项目描述: 由于电子商业汇票系统(ECDS)将于2024年7月27日起停止对外服务,新疆银行将按照上海票据交易所统一安排,于7月27日进行老电票数据迁移。 对于尚未结清的老电票,提示付款、追索相关操作您仍可通过现有菜单的“原电票”页签处理;不能再进行老电票出票、背书、贴现等操作。 新疆银行将对此类不可操作的业务菜单中“原电票”页签进行下线处理,仅保留“新一代电票”页签。 对于电子商业汇票系统(ECDS)下线特别提示如下: 一、您如需使用新一代电票,请及时通过我行企业网银在线签约新一代电票服务。 二、老电票数据迁移后,对于已提交背书、贴现等申请但对方未签收票据,无法进行签收操作,申请撤销操
开发者社区是一个集技术交流与知识分享于一体的平台,其核心功能模块包括博客和论坛。博客模块专注于技术文章的发布与展示,而论坛模块则为用户提供了一个讨论和互动的空间,通过多种标签分类来组织话题和内容。技术栈:Spring Boot MySQL JDK 1.8&17 MyBatisPlus Nacos Redis
1. 本方案面向数据分析人员,解决了用户每次都需要单独开发一张报表或指标图形,通过平台配置,拖拉拽生成多维报表、明细报表以及指标图形及看板的功能 2. 通过后台配置,可以通过拖拉拽的形式生成新的报表及数据看板和数据大屏,无需另外的单独开发。 3. 技术构成:通过将数据写入clickhouse数据库,并通过数据平台进行配置。 技术主要包括:clickhouse、zookeeper、mysql、mybatis、springboot/springcloud、rocketmq
560SpringCloud数据平台
当前共18169个项目

评论