tag:blogger.com,1999:blog-35902186040267878082024-02-20T10:17:45.777-05:00ClojureNews about the Clojure programming languageUnknownnoreply@blogger.comBlogger12125tag:blogger.com,1999:blog-3590218604026787808.post-23985746180549509492010-10-27T07:52:00.002-04:002010-10-27T07:54:51.430-04:00The Conj<div><span class="Apple-style-span" style="font-size: large;"><b>The Conj</b></span></div><div><br /></div><div>I'm finally recovering from the first Clojure Conj conference, held last week in Durham, NC.</div><div><br /></div><div>What a terrific conference! That's not personal boasting, as I did little more than show up. Thanks so much to everyone who worked so hard to make it great - the Clojure/core team and the folks at Relevance, the speakers, and sponsors. They put it together in a short amount of time and did a great job. Special appreciation for the "three A's", the men on the ground - Alan Dipert, Alex Warr and Andrew Collins.</div><div><br /></div><div>Thanks also to all the attendees for bringing that helpful, friendly optimism that is the Clojure community into meatspace, where it was, once again, quite evidently special.</div><div><br /></div><div>I really enjoyed meeting everyone. All the in-depth discussions left me both depleted and full of ideas. What more could you want?</div><div><br /></div><div>Rich</div><div><br /></div>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-3590218604026787808.post-76948909654818228602010-08-19T11:26:00.001-04:002010-08-19T11:29:30.542-04:00Clojure 1.2 Release<div>I'm pleased to announce today the release of Clojure 1.2.</div><div><br /></div><div><a href="http://clojure.org/downloads">http://clojure.org/downloads</a></div><div><br /></div><div>For maven/leiningen users, your settings to get the beta from build.clojure.org/releases are:</div><div><br /></div><div><span class="Apple-tab-span" style="white-space:pre"> </span> :dependencies [[org.clojure/clojure "1.2.0"]</div><div> [org.clojure/clojure-contrib "1.2.0"]</div><div><br /></div><div>This release includes many significant new features, such as protocols and datatypes; enhancements to existing features like the sequence library, destructuring and agents; support for annotations, etc. In addition, it incorporates many enhancements first developed and nurtured in clojure-contrib like I/O, string and pretty printing facilities.</div><div><br /></div><div>This release reflects the work of many people in addition to myself, and I'd like to thank all of the contributors who've submitted fix and enhancement patches, and everyone in the community who has participated in terrific dialog that surrounds the development and use of Clojure.</div><div><br /></div><div>Congrats and thanks to the contrib authors whose work has made it into the release:</div><div><br /></div><div>Chas Emerick</div><div>Tom Faulhaber</div><div>Stephen Gilardi</div><div>Christophe Grand</div><div>Stuart Halloway</div><div>Chris Houser</div><div>David Liebke</div><div>Michel Salim</div><div>Stuart Sierra</div><div><br /></div><div>I'd especially like to thank Stuart Halloway and the rest of the Clojure/core team for their tireless effort in authoring, screening and applying patches, setting up build machines, monitoring the mailing list, cutting releases etc. Their help greatly facilitates my ability to concentrate on the core design issues, and builds the foundation for increasing community involvement. A lot of work goes into Clojure. The team's effort is enabled and funded by <a href="http://clojure.com">the Clojure/core practice</a>.</div><div><br /></div><div>The full list of enhancements and changes is here:</div><div><br /></div><div><a href="http://github.com/clojure/clojure/blob/1.2.x/changes.txt">http://github.com/clojure/clojure/blob/1.2.x/changes.txt</a></div><div><br /></div><div>and the fixed tickets are here:</div><div><br /></div><div><a href="http://www.assembla.com/spaces/clojure/tickets?milestone_id=149827&tickets_report_id=5">http://www.assembla.com/spaces/clojure/tickets?milestone_id=149827&tickets_report_id=5</a></div><div><br /></div><div>What's next? Plenty! There are a few fixes and enhancements too impactful to squeeze into this release that we hope to get out there ASAP. I've done a ton of work already on enhanced primitive support and call linkage that will be moving into master. Design work is proceeding on many fronts. I'm looking forward to the increasing capability and maturity of Clojure, and the growth of the community.</div><div><br /></div><div>Thanks to all involved!</div><div><br /></div><div>Rich</div><div><br /></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-3029563909148698832010-05-25T08:37:00.001-04:002010-05-25T08:39:16.774-04:00Announcing Clojure/core<div>I'm happy to announce <a href="http://clojure.com">Clojure/core</a>, a joint endeavor between myself and Relevance, Inc. Clojure/core is a specialized technical practice within Relevance, focused on Clojure. Featuring myself and Stuart Halloway as advisors, the team also includes Clojure experts such as David Liebke (Incanter), Stuart Sierra (clojure-contrib contributor) and Aaron Bedra (an experienced consultant using Clojure).</div><div><br /></div><div>The practice will be providing mentorship, training and development services for those using, or planning to use, Clojure, and sustaining Clojure itself.</div><div><br /></div><div>Not interested in Clojure mentorship, training or dev assistance? There's still plenty of good news for the Clojure community in this announcement. One of the missions of Clojure/core is the sustainability of Clojure. The team will spend 20% of its time on Clojure itself. This includes working on enhancements and tickets, incorporating patches, helping tend the mailing list etc. This will enable our team to get a lot more done than I could ever do myself, while enabling me to focus on the fundamental aspects of Clojure. It will also broaden the pool of people with intimate knowledge of the internals of Clojure.</div><div><br /></div><div>The availability of services such as this is an important milestone for Clojure, as people choosing to adopt Clojure can be assured they can get mentorship, training and dev assistance, from experts.</div><div><br /></div><div>I'm very excited about this effort. The folks at Relevance have never failed to impress me with their skills and attitude, and they truly get Clojure and care about its sustainability.</div><div><br /></div><div>Note: clojure.com will now resolve to the Clojure/core site. Come check it out!</div><div><br /></div><div><a href="http://clojure.com">http://clojure.com</a></div><div><br /></div><div>Rich</div><div><br /></div>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-3590218604026787808.post-90355881114172027052010-01-27T11:11:00.002-05:002010-01-27T11:13:45.579-05:00New Clojure Books in ProgressNew Clojure books in progress: Get 35% off any version of <a href="http://www.manning.com/rathore">Clojure in Action</a> or <a href="http://www.manning.com/fogus">The Joy of Clojure</a> (print book or ebook) with checkout code "clojure35".Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-77369208250403014392009-12-31T09:21:00.003-05:002009-12-31T09:25:22.892-05:00Clojure 1.1 ReleaseClojure 1.1 is now out:<br /><br /><a href="http://clojure.googlecode.com/files/clojure-1.1.0.zip">http://clojure.googlecode.com/files/clojure-1.1.0.zip</a><br /><br />It contains several new features and many bug fixes and small enhancements. Many people contributed ideas, patches, docs, testing, feedback etc to this release - it truly was a community effort.<br /><br /><a href="http://www.assembla.com/spaces/clojure/tickets?milestone_id=93750&tickets_report_id=5">http://www.assembla.com/spaces/clojure/tickets?milestone_id=93750&tickets_report_id=5</a><br /><br />See the changes file for more details on the new features:<br /><br /><a href="http://github.com/richhickey/clojure/blob/1.1.x/changes.txt">http://github.com/richhickey/clojure/blob/1.1.x/changes.txt</a><br /><br />Many users have been running this code for a while now from the git repository, so I hope it continues the tradition of stability.<br /><br />Without diminishing the efforts of any others, I'd like to call attention to the following:<br /><br />Chris Houser has been helping me with patch commits and management of the Google Group. His efforts are invaluable to my staying focused on core issues.<br /><br />Christophe Grand got his head around the transient mechanism and implemented it for several of the data structures, in addition to pursuing some of my more speculative ideas (with great success). This was a big help to me.<br /><br />Tom Faulhaber has done a terrific job moving the API docs to a much better automated system hosted in the github repo:<br /><br /><a href="http://richhickey.github.com/clojure/">http://richhickey.github.com/clojure/</a><br /><br />To them, and everyone involved in the project - many thanks!<br /><br />RichUnknownnoreply@blogger.com8tag:blogger.com,1999:blog-3590218604026787808.post-27605647596573624482009-10-16T10:00:00.008-04:002009-10-16T12:05:04.204-04:00Clojure is Two!It's hard to believe that another year has passed since I first released <a href="http://clojure.org">Clojure</a>, now 2 years ago!<div><br /></div><div>As with the first year, it's been a thrilling ride, with phenomenal growth. Some highlights (in no particular order, and omitting much, I'm sure):</div><div><br /></div><div><div><ul><li><a href="http://clojure.blogspot.com/2009/05/clojure-10.html">The release of Clojure 1.0</a>, and many happy users of this stable version</li></ul><ul><li>New features slated for 1.1</li><li><span class="Apple-tab-span" style="white-space:pre"> </span><a href="http://www.assembla.com/wiki/show/clojure/Chunked_Seqs">Chunked seqs</a></li><li><span class="Apple-tab-span" style="white-space:pre"> </span><a href="http://clojure.org/transients">Transients</a></li><li><span class="Apple-tab-span" style="white-space:pre"> </span><a href="http://www.assembla.com/wiki/show/clojure/Getting_Tests_Into_Clojure">test in core</a></li><li><span class="Apple-tab-span" style="white-space:pre"> </span><a href="http://www.assembla.com/spaces/clojure/tickets?batch=false&tickets_report_id=5&ticket_id=&commit=Go+%C2%BB">many fixes and enhancements</a></li></ul><ul><li>New features underway for post 1.1</li><li><span class="Apple-tab-span" style="white-space:pre"> </span>Clojure-in-Clojure</li><li><span class="Apple-tab-span" style="white-space:pre"> </span>Parallel algorithms based upon latest ForkJoin</li></ul><ul><li>We moved to <a href="http://github.com/richhickey/clojure">Git</a> and <a href="https://www.assembla.com/spaces/dashboard/index/clojure">Assembla</a></li></ul><ul><li><a href="http://pragprog.com/titles/shcloj/programming-clojure">Stu Halloway's terrific book</a>, and more books on the way</li><li><a href="http://peepcode.com/products/functional-programming-with-clojure">Peepcode's screencast</a></li></ul><ul><li>A viable <a href="http://github.com/richhickey/clojure-clr">CLR port</a>, thanks to David Miller</li></ul><ul><li>Many <a href="http://java.ociweb.com/mark/clojure/article.html">tutorials</a> and <a href="http://clj-me.cgrand.net/">blogs</a></li></ul><ul><li><a href="http://clojure.org/libraries">Lots of libraries</a>, some with their own <a href="http://groups.google.com/group/compojure">user groups</a></li><li>Great growth in <a href="http://github.com/richhickey/clojure-contrib">contrib</a></li><li>Ever improving <a href="http://plugins.intellij.net/plugin/?id=4050">tools</a> and <a href="http://www.enclojure.org/">IDE</a> support</li></ul><ul><li>At least five-fold increase in users and contributors (22,000+ messages from 2600+ list members, 90+ <a href="http://clojure.org/contributing">registered contributors</a>)</li></ul><ul><li>Talks I've given at <a href="http://www.international-lisp-conference.org/2009/tutorials#clojure">ILC</a>, <a href="http://www.infoq.com/presentations/Value-Identity-State-Rich-Hickey">QCon</a>, <a href="http://java.sun.com/javaone/rockstar_wall_of_fame.jsp#rhickey">JavaOne</a>, <a href="http://channel9.msdn.com/shows/Going+Deep/Expert-to-Expert-Rich-Hickey-and-Brian-Beckman-Inside-Clojure/">Microsoft</a>, <a href="http://wiki.jvmlangsummit.com/Clojure_Keynote">JVM Language Summit</a>, <a href="http://jaoo.dk/aarhus-2009/presentation/The+Clojure+Concurrency+Story">JAOO</a></li><li>Many talks about Clojure given by others</li></ul><ul><li>Clojure <a href="http://www.meetup.com/The-Bay-Area-Clojure-User-Group/">user groups</a> springing up <a href="http://clojure.higher-order.net/events/">around the world</a></li><li><a href="http://www.infoq.com/articles/flightcaster-clojure-rails">Success stories</a> from real-world applications</li><li><a href="http://pragmaticstudio.com/clojure">Upcoming courses</a></li></ul><div><br /></div></div><div>It is clear that Clojure is taking off, and I attribute that to the fantastic community that has sprung up around it. Everyone continues to be supportive and friendly, and that matters quite a bit to newcomers who need help. It was great to hop on the <a href="irc://freenode.net#clojure">#</a><a href="irc://freenode.net#clojure">clojure</a><a href="irc://freenode.net#clojure"> </a><a href="irc://freenode.net#clojure">irc</a> this morning to find old hands chouser, cgrand and 170 others chatting away.</div><div><br /></div><div>It takes much more than just the core language to make a language successful, and I want to thank everyone for your continued effort, support, suggestions, donations and patches. You are what makes Clojure great - find some cake and celebrate!</div><div><br /></div><div>Rich</div><div><br /></div></div>Unknownnoreply@blogger.com8tag:blogger.com,1999:blog-3590218604026787808.post-31354732608076384912009-05-04T08:59:00.001-04:002009-05-04T09:02:27.135-04:00Clojure 1.0After a sustained period of API stability and minimal bug reports, I'm happy to announce the release of Clojure 1.0!<br /><br /><a href="http://clojure.googlecode.com/files/clojure_1.0.0.zip">http://clojure.googlecode.com/files/clojure_1.0.0.zip</a><br /><br />Numbered releases will enable people to consume a stable version of Clojure and move to bugfix-only incremental versions while preserving API stability, and to consume libraries designed to work with specific versions. Providing the bugfix-only revisions depends upon the community to submit patches for the release branch as well as the trunk.<br /><br />Clojure represents several years of effort on my part, but has also been shaped profoundly by the community in the 18 months since its release to the public. I can't thank everyone enough for your contributions of ideas, bug reports, suggestions, tests, tools, documentation and code - patches and enhancements. Clojure wouldn't be where it is today without its community and all of your efforts.<br /><br />Of course, there is more to do. Many good ideas have been suggested in the discussions preceding this release that were best put off for 1.1. Now with the release we can pursue them, and many others:<br /><br /><a href="http://clojure.org/todo">http://clojure.org/todo</a><br /><br />I want to give special thanks to those who have made donations - they really help! I did the core work on Clojure during a self-funded sabbatical that has run its course (i.e. through my savings :) - donations help fund the future.<br /><br />Clojure 1.0 is a milestone of achievement, but it also represents a beginning. With 1.0, Stuart's book, the burgeoning set of libraries in and outside of contrib, and the large, friendly community, Clojure is poised to enter a period of increased adoption and application in many domains.<br /><br />Here's to the future!<br /><br />RichUnknownnoreply@blogger.com10tag:blogger.com,1999:blog-3590218604026787808.post-67989848492705970552008-12-18T08:42:00.002-05:002008-12-18T08:45:34.419-05:0020081217 ReleaseI've cut a new release, 20081217, which is available from Google Code:<br /><br /><a href="http://clojure.googlecode.com/files/clojure_20081217.zip">http://clojure.googlecode.com/files/clojure_20081217.zip</a><br /><br />It reflects the many enhancements made since the last release:<br /><ul><li><span class="blsp-spelling-error" id="SPELLING_ERROR_0">AOT</span> Compilation</li><li>gen-class</li><li>gen-interface</li><li><span class="blsp-spelling-error" id="SPELLING_ERROR_1">clojure</span>.main</li><li>proxy performance tweaks</li><li>move to <span class="blsp-spelling-error" id="SPELLING_ERROR_2">EPL</span></li><li><span class="blsp-spelling-error" id="SPELLING_ERROR_3">io</span>! blocks</li><li>atoms</li><li>intern, trampoline, while</li><li>enhanced <span class="blsp-spelling-error" id="SPELLING_ERROR_4">doto</span>, <span class="blsp-spelling-error" id="SPELLING_ERROR_5">doseq</span></li><li>uniform local bindings</li><li>print <span class="blsp-spelling-error" id="SPELLING_ERROR_6">multimethods</span></li><li>print-<span class="blsp-spelling-error" id="SPELLING_ERROR_7">dup</span></li><li>maps implement java.util.Map</li><li>agent watches</li><li>*1 <span class="blsp-spelling-error" id="SPELLING_ERROR_8">et</span> <span class="blsp-spelling-error" id="SPELLING_ERROR_9">al</span></li></ul><br />and many more fixes and enhancements:<br /><br /><a href="http://code.google.com/p/clojure/source/list">http://code.google.com/p/clojure/source/list</a><br /><br />This release should facilitate everyone using the same post-<span class="blsp-spelling-error" id="SPELLING_ERROR_10">AOT</span> <span class="blsp-spelling-error" id="SPELLING_ERROR_11">API</span>, and brings us closer to the 1.0 release. I'll be going through the docs to bring them up to date. If you are using an old release, please move to this one, as it is what the documentation will reflect moving forward.<br /><br />There are a few small things marked high priority I'd like to get done for 1.0:<br /><br /><a href="http://code.google.com/p/clojure/issues/list?can=2&q=priority:High">http://code.google.com/p/clojure/issues/list?can=2&q=priority:High</a><br /><br />Patches welcome from any registered contributors.<br /><br />Thanks again for all of your support and feedback!<br /><br />RichUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-87374384449822960622008-10-01T21:34:00.001-04:002008-10-01T21:37:04.612-04:00Clojure at Boston Lisp Meeting videosClojure at Boston Lisp Meeting videos are now up:<br /><br /><a href="http://clojure.blip.tv/file/1313398">Part 1</a><br /><br /><a href="http://clojure.blip.tv/file/1313503">Part 2</a><br /><br />Note that this talk was for a crowd of experienced Lispers, so may not<br />be the best intro if you don't know some Lisp already.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-40649845041641922462008-09-16T09:55:00.001-04:002008-09-16T09:56:54.360-04:0020080916 ReleaseAdded: validators for vars/refs/agents, delay/force, isa-based multimethods and a la carte hierarchies, require/use/load, namespace aliases and many more functions and fixes.<br /><br />Special thanks to Chas Emerick, Graham Fawcett, Stephen C. Gilardi, Chris Houser and Stuart Sierra for their contributions.<br /><br /><ul><li>fixed resolveIns to resolve alias</li><li>added lazy parallel pmap</li><li>fixed nth with not-found arg - when negative index returns not-found</li><li>fixed withMeta ctor in LazyCons</li><li>all ns-* fns now take ns designators: either a namespace or a symbol naming one. Patch from Stephen C. Gilardi</li><li>fixed zip/up</li><li>modified load to detect and prevent loading a resource while another load of the same resource is pending in the same thread, patch from Stephen C. Gilardi</li><li>renamed clojure/load to clojure/load-reader</li><li>added clojure/load-string</li><li>renamed clojure/load-resources to clojure/load</li><li>fixed up doc strings accordingly, patch from Stephen C. Gilardi</li><li>fixed ns/-in-ns resolution in lookupVar</li><li>added :refer-clojure support to ns, special resolution of ns and in-ns, moved to ns for inspector/parallel/set/xml/zip</li><li>added many predicates</li><li>removed static init dependency on Compiler</li><li>fixed recursive LazyCons by using sentinel other than this</li><li>Fixed genclass method handling to max of 18 parameters</li><li>switched to using baseLoader() in loadResourceScript()</li><li>changed :requires/:uses/:imports in ns macro to :require/:use/:import</li><li>added get-in, assoc-in, update-in</li><li>Added require/use/load-resources, contributed by Stephen C. Gilardi. enhanced ns macro to call these</li><li>added defonce</li><li>added imports, refers, format, printf, ns</li><li>improved UnsupportedOperationException message, patch from Chouser</li><li>removed implicit seq for Iterators and Enumerations, added iterator-seq and enumeration-seq explicit constructors</li><li>made baseLoader public</li><li>filter void from isPrimitive test</li><li>allow bridge methods if reprobing on same sig yields same method</li><li>added with-in-str</li><li>use recur in concat$cat</li><li>seq optimizations</li><li>changed Delay to be non-fn, added delay? and force, added LazyCons and lazy-seq</li><li>made UTF-8 default encoding on iostreams *in*, *out*, and in loadFile and loadResource, from cemerick</li><li>added support for loading scripts from classpath, from cemerick</li><li>made vectors Comparable</li><li>added unary support for =, not=, distinct?</li><li>added multi-arg support for = and not=.</li><li>Added distinct?</li><li>made loadResourceScript throw if resource not found, added maybeLoadLoadResourceScript, failIfNotFound flag, based on patch from cemerick.</li><li>Added overload of RT.var that takes an initial value.</li><li>made taking the value of a macro an error</li><li>made empty lists implement java.util.Collection</li><li>strip path from simple file name in load call from loadResourceScript</li><li>accept duplicate sigs from multiple interfaces - will map to same method, just jike Java</li><li>propagate exception type to tag in catch clauses</li><li>made (class nil) -> nil, instead of NPE</li><li>added TransactionalHashMap</li><li>return null on no bestMatch to allow default logic to run</li><li>changed pom.xml to match latest dir structure</li><li>unmunge _'s to -'s in throwArity message</li><li>re-removed checkcast before invokeInterface</li><li>wrapped non-return try blocks in fn</li><li>added makeNew virtual ctor, from Chas Emerick</li><li>added back checkcast before invokevirtual calls</li><li>switched to using / in loadResourceScript call in generated static init</li><li>moved clj files into src/clj/</li><li>updated docs and example, from Chouser</li><li>added exceptions and errors to default java.lang imports</li><li>new namespace and class rules for genclass, patch from Chouser</li><li>added prefer-method</li><li>fixed argument handling context in eval new</li><li>removed nil returns from derive/underive base cases</li><li>fixed :exposes to use getDeclaredField</li><li>fixed class bug in isa?</li><li>added isa-based multimethods, a la carte hierarchies</li><li>added type hints to pr-strs and class? predicate</li><li>changed Class printing to print only name</li><li>made syntax-quoted symbols resolve aliases</li><li>added parallel alias</li><li>fixed doc typo</li><li>improved validator docs</li><li>added validators for vars/refs/agents - an optional second arg for agent and ref, get/set-validator, also shutdown-agents</li><li>fixed out-of-bounds in toArray(Object [])</li><li>fixed truncation in double/long/float_array</li><li>made vectors implement java.util.List and sets implement java.util.Set</li><li>removed root-level .cljs</li><li>first cut at namespace aliases, via Graham Fawcett</li><li>new clj code hierarchy, old still in place</li><li>fixed loop for multiple scripts</li><li>added load-file to parallel.clj comment</li><li>peel off InvocationTargetException in reflective calls, when possible</li><li>added try around body of analyze</li><li>allow /s in the namespace part of symbols/keywords</li><li>put name in error reports for qualified name use</li><li>wrapped all non-atomic evals in fn</li><li>added doc for return value of alter and commute</li><li>changed cpl url</li><li>made Ref.fn() use get rather than currentVal</li><li>added ACC_SUPER flag</li><li>removed support for finalize, as providing stub causes it to exist, with great performance cost</li><li>allow exceptions to flow out of Script.main</li><li>made conj accept multiple items</li><li>fixed loop with destructuring and inter-binding dependencies</li><li>fixed treatment of catch clauses (saving ret in local) for nested handler</li><li>made (drop 0 s) return seq of coll, and drop-while similarly</li><li>added delay</li><li>added seque</li><li>added drop-last</li><li>removed "no box on statement" optimization so pops align</li><li>added *flush-on-newline*</li><li>fixed reduce w/init </li><li>fixed doc on pmin</li><li>fixed no-arg (sorted-set)</li><li>added *file*, type hint on *agent*</li><li>fixed sort-by regression</li><li>fixed reduce retaining seq</li><li>added getQueueCount</li><li>got rid of deep equals on vals</li><li>added compare, based sorts on compare</li><li>added \return support for Java \r</li><li>added notFound optional arg for keywords as fns and maps as fns, and enabled Symbols as fns</li><li>added nth support for Map.Entry so can destructure seqs of Java maps</li><li>nth takes an optional not-found value, and destructuring uses nth with a nil not found value for sequential destructuring, nth without not-found value throws exception in all index-out-of-bounds cases including seqs</li><li>fixed natural join with empty set input</li><li>fixed fn init local alignment when closed over longs/doubles</li><li>added support for extra static methods in genclass</li><li>made set 'gets' return set member, not arg</li><li>added spaces in genclass for html doc gen</li><li>added static member access classname/member, work for fields with no parens Math/PI, or static method invocations (Math/sqrt 42)</li><li>filter line numbers from syntax-quoted form metadata</li><li>added Java style hex and octal integer literals, as well as arbitrary radix using nRnnnn...</li><li>made proxy tolerant of ns-qualified method names</li><li>added proxy-super</li><li>added *use-context-classloader*, which can be bound to true to cause the thread's context classloader to be the parent of the dynamic classloader used during load</li><li>cons, lazy-cons call seq on 2nd arg</li></ul>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-8766412840293884402008-09-07T21:26:00.002-04:002008-09-07T21:29:14.478-04:00Talk at Boston Lisp Meeting, Sept. 29thI will be speaking at the Boston Lisp Meeting, Monday September 29th<br />2008, 6pm at MIT.<br /><p>Details here:<br /></p><p><a target="_blank" rel="nofollow" href="http://fare.livejournal.com/134108.html">http://fare.livejournal.com/134108.html</a><br /></p><p>If you are in the area please feel free to join us!<br /></p>RichUnknownnoreply@blogger.com0tag:blogger.com,1999:blog-3590218604026787808.post-71683275016681480712008-06-12T14:05:00.002-04:002008-06-12T14:11:42.237-04:0020080612 ReleaseMany new features and fixes. Added new primitive number support, host call/return/if optimizations, new use of java.lang.Numbers, new host call syntax, parallel processing api, gen-class api for generating fixed .class files. Full change list in changes.txt.<br /><br /><a href="https://sourceforge.net/project/showfiles.php?group_id=137961">Download</a><br /><br />Feedback welcome as always,<br /><br />RichUnknownnoreply@blogger.com0