<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to patches</title><link>https://sourceforge.net/p/clojure/patches/</link><description>Recent changes to patches</description><atom:link href="https://sourceforge.net/p/clojure/patches/feed.rss" rel="self"/><language>en</language><lastBuildDate>Sun, 29 Jun 2008 00:10:58 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/clojure/patches/feed.rss" rel="self" type="application/rss+xml"/><item><title>Enhance the REPL</title><link>https://sourceforge.net/p/clojure/patches/1/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;br /&gt;
I've been playing with Clojure this past week. The choices you made are really interesting(Immutability, etc). The language is really cool. One thing is off though...&lt;/p&gt;
&lt;p&gt;The current Clojure REPL has no history, no tab-completion, and no way of correcting input. This made it unusable for me. I cannot live without those features. Maybe Emacs can fix this... but I don't use emacs.&lt;/p&gt;
&lt;p&gt;This patch adds those features to REPL with minimal changes.&lt;/p&gt;
&lt;p&gt;It uses the JLine library. JLine provides the basic console handling functions. It was either that or java-readline. java-readline cannot be used because it links against GNU readline - which is under GPL. JLine is under the BSD license. It is 100% Java and doesn't have dependencies. JLine is used by important projects(i.e. JRuby). It was an easy choice.&lt;/p&gt;
&lt;p&gt;The patch only defines one new class: LispConsoleReader. Before the patch, the input was read and transformed into intermediate representation at the same time. This made adding more features to input handling very difficult.&lt;/p&gt;
&lt;p&gt;The solution I adopted was to separate the two steps. The input is now read all at once by LispConsoleReader. Then that input is fed to LispReader to be transformed into intermediate representation.&lt;/p&gt;
&lt;p&gt;There might be some issues remaining.&lt;/p&gt;
&lt;p&gt;Can you review my patch and merge it? That would be great.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Yann N. Dauphin</dc:creator><pubDate>Sun, 29 Jun 2008 00:10:58 -0000</pubDate><guid>https://sourceforge.net65cb1ab178c2f92bb7a9d04f70bb7d54195d1689</guid></item></channel></rss>