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
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
案例
项目描述:本项目是基于Flink开发的实时数仓,出于客户业务的需要,获取任务开始期间智慧车辆行驶相关指标的实时变化,以便于及时调整车辆参数。整体项目难度较大,需要保证高可用、高吞吐、低延迟、结果的准确性以及良好的容错性。 技术栈: Flume、Maxwell、Kafka、Zookeeper、Flink、MySQL、HBase、Phoenix、Redis、ClinkHouse、Hadoop 个人职责: 1、技术选型与框架搭建:评估多种实时数据处理技术,最终选定Kafka、Flink作为核心组件,搭建起稳定可靠的数据分析框架。 2、系统架构设计:负责整体架构设计,包括数据采集、数据清洗以及数
1.系统核心是提取图片特征,在图片库中搜索相似图片,并给出相似度百分比 2.用户可以通过相似度百分比审核图片是否为重复上传的图片或者是否为修改过的图 3.审核结果会回传到三方平台 4.在该项目中我是项目经理,同事也是主力开发
1.集成汽修商家的一个平台,用户可通过该平台选择商家并选择相对应需要的汽修维护产品 2.类似于电商平台,只不过更适用于汽车行业,针对汽修方面的 3.更倾向于配置化系统,在平台内配置参数越多导致推荐的产品越精准 4.使用了主流框架,易维护,代码量较轻,未使用过多的第三方插件,更多都是直连官方接口,例如微信小程序客服,支付等功能。 5.集成了大量车辆详细信息,如品牌车系车型,甚至能精准到年份,也可通过VIN码识别
1210vue小程序mysql汽车
1.本项目模型训练素材来源于真实排污口监控摄像机,采集了大量训练集,基于yolov11模型训练模型。 2.目标检测程序部署在普通服务器上(部署GPU卡可加速模型推理) 3.从产生预警到web项目展示,预警消息推送形成闭环
展厅多媒体文件与设备中控管理平台是一款专为现代化展厅设计的综合管理解决方案,集成了多媒体文件管理、设备远程控制、用户权限分配及操作日志记录等功能于一体,旨在提高展厅运营效率,简化管理流程,确保展品展示的一致性和设备运行的稳定性。
1160vuemysql微服务
当前共18415个项目

评论