当前位置: 首页 > 软件库 > 其他开源 > 编程语言 >

Clojure

并发编程语言
授权协议 CPL
开发语言
所属分类 编程语言
软件类型 开源软件
地区 不详
投 递 者 冯文彬
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Clojure是一种LISP风格的语言,运行在JVM上。Clojure的一大特色就是其并发机制,它支持不可变的数据结构(Clojure是来自于可持久化的数据结构)。Clojure还有一个特色是软件事务存储(Software Transactional Memory,STM),其支持用事务代替锁和互斥器来更新共享内存。STM还是一个有争议的技术,还需要更好的证明自己,一个简单的办法就是访问一个JVM上的实现。

  • 如何表示和处理数据 Clojure是一种动态类型语言,这意味着你在程序中永远不需要明确定义符号、函数、或者参数的数据类型。但是,所有的值仍然有一个类型。字符串时是字符串,数字是数字,列表是列表,等等。如果你尝试执行一个类型不支持的操作,将会在运行时产生错误。写代码时避免这种事情,是程序员的责任。对于有动态语言背景的人来说是很自然的事情,而那些只使用静态语言的人需要一些转变。 Clojure的类型既

  • 首先推荐两个目前正在学的免费学习资源: Functional programming in Clojure Clojure for the Brave and True 都是英文的,第一个是边学边练的形式,很容易测试自己是否真的学懂了,在实践中也能学到更多的东西;第二个是一本Clojure的入门书籍,第二章介绍了Emacs的安装配置以及一些常用的快捷键,很适合作为新手入门教程。 一、注释和命名空间

  • 相比我们传统的 c ,java ,python ,javascript等,Clojure的语法比较特别,初一看,还可能会有些不适应。 本文来介绍下Clojure的语法特点。 一、表达式 所有的Clojure代码都是由表达式组成的,每个表达式都会产生一个值。 常见的表达式如:  60 [2  4  6] (+ 1 2) (average [2 3 4]) 1)上面的第一个表达式就是一个字面常量,这里

 相关资料
  • Erlang 的许多原语为大型并发实时系统开发的问题提供了解决方案。其模块系统允许将大型系统构建为概念上的可管理单元。其错误检测机制可用于构建容错软件。其代码加载原语允许在不停机的情况下替换运行时系统的代码。 英文原版

  • 作为对《C++ Concurrency in Action》的中文翻译。

  • 全面记录了 Java 并发编程的相关知识,包括 Java 5 新增加的并发包内的相关类,分析了并发编程中的常见问题,并深入 Java 内存模型,对底层并发机制的实现做了一些分析。

  • 2. 并发的优势和风险 注:相同代码两次并发执行结果不同,不一定违反安全性。例如两个线程一读一写,可能先读后写,也可能先写再读。 3. 多线程并发与线程安全

  • 本章讲解 Rust 中,并发,并行,多线程编程的相关知识。

  • 主要内容:面向读者,前提条件Java是一种多线程编程语言,我们可以使用Java来开发多线程程序。 多线程程序包含两个或多个可同时运行的部分,每个部分可以同时处理不同的任务,从而能更好地利用可用资源,特别是当您的计算机有多个CPU时。多线程使您能够写入多个活动,可以在同一程序中同时进行操作处理。 Java是最初由Sun Microsystems开发并于1995年发布的高级编程语言。Java运行在各种平台上,如Windows,M

  • 并行 理论上并行和语言并没有什么关系,所以在理论上的并行方式,都可以尝试用Rust来实现。本小节不会详细全面地介绍具体的并行理论知识,只介绍用Rust如何来实现相关的并行模式。 Rust的一大特点是,可以保证“线程安全”。而且,没有性能损失。更有意思的是,Rust编译器实际上只有Send Sync等基本抽象,而对“线程” “锁” “同步” 等基本的并行相关的概念一无所知,这些概念都是由库实现的。这

  • Cocoa 并发编程 iOS 中的多线程,是 Cocoa 框架下的多线程,通过 Cocoa 的封装,可以让我们更为方便的进行多线程编程。 在介绍 Cocoa 并发编程之前,我们先理清会提到的几个术语: 线程:就是我们通常提到的线程,在进程中可以用线程去执行一些主进程之外的代码。OS X 中线程的实现基于 POSIX 的 pthread API。 进程:也是我们通常意义上提到的进程,一个正在执行中的