Google并发编程语言 Clojure 1.3 发布
fmms 13年前
Clojure是一种LISP风格的语言,运行在JVM上。Clojure的一大特色就是其并发机制,它支持不可变的数据结构(Clojure是来自于可持久化的数据结构)。Clojure还有一个特色是 <strong>软件事务存储</strong>(Software Transactional Memory,STM),其支持用事务代替锁和互斥器来更新共享内存。STM还是一个有争议的技术,还需要更好的证明自己,一个简单的办法就是访问一个JVM上的实现。 <br /> <img title="Google并发编程语言 Clojure 1.3 发布" border="0" alt="Google并发编程语言 Clojure 1.3 发布" src="http://clojure.org/space/showimage/clojure-icon.gif" width="100" height="100" /> <br /> Clojure 1.3 发布了,该版本改进包括: <pre class="brush:shell; toolbar: true; auto-links: false;"> 1 Deprecated and Removed Features 1.1 Earmuffed Vars are No Longer Automatically Considered Dynamic 1.2 ISeq No Longer Inherits from Sequential 1.3 Removed Bit Operation Support for Boxed Numbers 1.4 Ancillary Namespaces No Longer Auto-Load on Startup 1.5 Replicate Deprecated 2 New/Improved Features 2.1 Enhanced Primitive Support 2.2 defrecord and deftype Improvements 2.3 Better Exception Reporting 2.4 clojure.reflect/reflect 2.5 clojure.data/diff 2.6 clojure.core/every-pred and clojure.core/some-fn Combinators 2.7 clojure.core/realized? 2.8 clojure.core/with-redefs-fn & with-redefs 2.9 clojure.core/find-keyword 2.10 clojure.repl/pst 2.11 clojure.pprint/print-table 2.12 pprint respects *print-length* 2.13 compilation and deployment via Maven 2.14 internal keyword map uses weak refs 2.15 ^:const defs 2.16 Message Bearing Assert 2.17 Error Checking for defmulti Options 2.18 Removed Checked Exceptions 2.19 vector-of Takes Multiple Arguments 2.20 deref with timeout 2.21 Walk Support for sorted-by Collections 2.22 string.join Enhanced to Work with Sets 2.23 clojure.test-helper 2.24 Newline outputs platform-specific newline sequence 2.25 init-proxy and update-proxy return proxy 2.26 doc & find-doc moved to REPL 2.27 clojure.java.shell/sh accepts as input anything that clojure.java.io/copy does 2.28 InterruptedHandler Promoted to clojure.repl 2.29 Add support for running -main namespaces from clojure.main 2.30 Set thread names on agent thread pools 2.31 Add docstring support to def 2.32 Comp function returns identity when called with zero arity 2.33 Type hints can be applied to arg vectors 2.34 Binding Conveyance 3 Performance Enhancements 4 Bug Fixes 5 Modular Contrib</pre> <span class="comment"><span style="color:#000000;">Stable Release: 1.3The current release of Clojure is 1.3.<br /> <ul sizset="0" sizcache="1884"> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191407955437548" rel="nofollow">Clojure 1.3</a></li> </ul> <br /> Clojure source code is hosted at <a class="wiki_link_ext" href="/misc/goto?guid=4958191408706272988" rel="nofollow">github.com/clojure/clojure</a>. Nightly builds of Clojure's master branch are available at <a class="wiki_link_ext" href="/misc/goto?guid=4958191409441147980" rel="nofollow">build.clojure.org</a>.<br /> <br /> <!-- ws:start:WikiTextHeadingRule:5:<h2> --><h2 id="toc2"><a name="x-Development Environments"></a> <!-- ws:end:WikiTextHeadingRule:5 -->Development Environments</h2> <!-- ws:start:WikiTextHeadingRule:7:<h2> --><h2 id="toc3"><a name="x-The Clojure community maintains instructions for various development environments on the Confluence wiki."></a> <!-- ws:end:WikiTextHeadingRule:7 --><span style="line-height:normal;font-family:Helvetica, helvetica, sans-serif;font-size:12px;font-weight:normal;">The Clojure community maintains instructions for various development environments on the <a class="wiki_link_ext" href="/misc/goto?guid=4958191410186278029" rel="nofollow">Confluence wiki</a>.</span></h2> <br /> <!-- ws:start:WikiTextHeadingRule:9:<h2> --><h2 id="toc4"><a name="x-Older Releases"></a> <!-- ws:end:WikiTextHeadingRule:9 -->Older Releases</h2> <ul sizset="0" sizcache="1992"> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191410931902301" rel="nofollow">Clojure 1.2.1</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191411669137126" rel="nofollow">Clojure Contrib 1.2</a></li> <li><span><a class="wiki_link_ext" href="/misc/goto?guid=4958191412411073649" rel="nofollow">Clojure 1.2</a></span></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191413151826602" rel="nofollow">Clojure 1.0.0</a></li> </ul> <br /> <!-- ws:start:WikiTextHeadingRule:11:<h2> --><h2 id="toc5"><a name="x-Older Developer Releases"></a> <!-- ws:end:WikiTextHeadingRule:11 -->Older Developer Releases</h2> <ul sizset="0" sizcache="1075"> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191413885514809" rel="nofollow">Clojure 1.3 RC0</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191414625196197" rel="nofollow">Clojure 1.3 Beta 3</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191415368198580" rel="nofollow">Clojure 1.3 Beta 2</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191416101542654" rel="nofollow">Clojure 1.3 Beta 1</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191416842505229" rel="nofollow">Clojure 1.3 Alpha 8</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191417592034600" rel="nofollow">Clojure 1.3 Alpha 7</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191418332278280" rel="nofollow">Clojure 1.3 Alpha 6</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191419070745978" rel="nofollow">Clojure 1.3 Alpha 4</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191419809895654" rel="nofollow">Clojure 1.3 Alpha 3</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191420554944261" rel="nofollow">Clojure 1.3 Alpha 2</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191421298980120" rel="nofollow">Clojure 1.3 Alpha 1</a></li> <li><span style="padding-right:10px;background-repeat:no-repeat;background-position:100% 50%;cursor:pointer;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191422036398973" rel="nofollow">Clojure 1.2 RC3</a></span></li> <li><span style="padding-right:10px;background-repeat:no-repeat;background-position:100% 50%;cursor:pointer;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191422777206449" rel="nofollow">Clojure Contrib 1.2 RC3</a></span></li> <li><span style="padding-right:10px;background-repeat:no-repeat;background-position:100% 50%;cursor:pointer;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191423519424051" rel="nofollow">Clojure 1.2 RC2</a></span></li> <li><span style="padding-right:10px;background-repeat:no-repeat;background-position:100% 50%;cursor:pointer;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191424254466900" rel="nofollow">Clojure Contrib 1.2 RC2</a></span></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191424994613989" rel="nofollow">Clojure 1.2 RC1</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191425730677012" rel="nofollow">Clojure Contrib 1.2 RC1</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191426470405695" rel="nofollow">Clojure 1.2 Beta 1</a></li> <li><a class="wiki_link_ext" href="/misc/goto?guid=4958191427213682522" rel="nofollow">Clojure Contrib 1.2 Beta 1</a></li> <li><span style="border-collapse:collapse;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191427956010546" rel="nofollow">Clojure 20090320</a> (pre 1.0)</span></li> <li><span style="border-collapse:collapse;"><a class="wiki_link_ext" href="/misc/goto?guid=4958191428695421192" rel="nofollow">Clojure 20081217</a> (pre 1.0)</span></li> </ul> <br /> 详细内容:<a href="/misc/goto?guid=4958191429431879185" rel="nofollow">https://github.com/clojure/clojure/blob/1.3.x/changes.txt</a><br /> 项目地址:<a href="/misc/goto?guid=4958183920711387805" target="_blank">http://clojure.org/</a></span></span>