并发编程语言,clojure 1.4 发布

fmms 13年前
     <p><a href="/misc/goto?guid=4958183920711387805" target="_blank">Clojure</a>是一种LISP风格的语言,运行在JVM上。Clojure的一大特色就是其并发机制,它支持不可变的数据结构(Clojure是来自于可持久化的数据结构)。Clojure还有一个特色是<strong>软件事务存储</strong>(Software Transactional Memory,STM),其支持用事务代替锁和互斥器来更新共享内存。STM还是一个有争议的技术,还需要更好的证明自己,一个简单的办法就是访问一个JVM上的实现。</p>    <p>Clojure 1.4 发布了,该版本主要改进内容有:</p>    <p><strong>1 废弃和被删除的特性:</strong></p>    <div>         1.1 Fields that Start With a Dash Can No Longer Be Accessed Using Dot Syntax    </div>    <p><strong>2 新增和改进的特性:</strong></p>    <div>         2.1 Reader Literals    </div>    <div>         2.2 clojure.core/mapv    </div>    <div>         2.3 clojure.core/filterv    </div>    <div>         2.4 clojure.core/ex-info and clojure.core/ex-data    </div>    <div>         2.5 clojure.core/reduce-kv    </div>    <div>         2.6 clojure.core/contains? Improved    </div>    <div>         2.7 clojure.core/min and clojure.core/max prefer NaN    </div>    <div>         2.8 clojure.java.io/as-file and clojure.java.io/as-url Handle URL-Escaping Better    </div>    <div>         2.9 New Dot Syntax for Record and Type Field Access    </div>    <div>         2.10 Record Factory Methods Available Inside defrecord    </div>    <div>         2.11 assert-args Displays Namespace and Line Number on Errors    </div>    <div>         2.12 File and Line Number Added to Earmuff Dynamic Warning    </div>    <div>         2.13 require Can Take a :refer Option    </div>    <div>         2.14 *compiler-options* Var    </div>    <div>         2.15 Improved Reporting of Invalid Characters in Unicode String Literals    </div>    <div>         2.16 clojure.core/hash No Longer Relies on .hashCode    </div>    <div>         2.17 Java 7 Documentation    </div>    <div>         2.18 loadLibrary Loads Library Using System ClassLoader    </div>    <div>         2.19 Java int is boxed as java.lang.Integer    </div>    <p><strong>3 性能提升</strong> <br /> <strong>4 Bug 修复</strong></p>