<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wisdom and Wonder &#187; Lisp</title>
	<atom:link href="http://www.wisdomandwonder.com/tag/lisp/feed" rel="self" type="application/rss+xml" />
	<link>http://www.wisdomandwonder.com</link>
	<description>Science and Philosophy</description>
	<lastBuildDate>Wed, 25 Jan 2012 05:09:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Whalesong: a Racket to JavaScript compiler</title>
		<link>http://www.wisdomandwonder.com/link/6027/whalesong-a-racket-to-javascript-compiler</link>
		<comments>http://www.wisdomandwonder.com/link/6027/whalesong-a-racket-to-javascript-compiler#comments</comments>
		<pubDate>Thu, 10 Nov 2011 04:02:27 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=6027</guid>
		<description><![CDATA[Whalesong is a compiler from Racket to JavaScript; it takes Racket programs and translates them so that they can run stand-alone on a user’s web browser. It should allow Racket programs to run with (hopefully!) little modification, and provide access through the foreign-function interface to native JavaScript APIs. The included runtime library supports the numeric [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p><a href="http://hashcollision.org/whalesong/">Whalesong</a> is a compiler from Racket to JavaScript; it takes Racket programs and translates them so that they can run stand-alone on a user’s web browser. It should allow Racket programs to run with (hopefully!) little modification, and provide access through the foreign-function interface to native JavaScript APIs. The included runtime library supports the numeric tower, an image library, and a framework to program the web in functional event-driven style.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/6027/whalesong-a-racket-to-javascript-compiler/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Destructuring Lists Using CA*D*R vs First, Second, &#8230; vs Pattern Matching</title>
		<link>http://www.wisdomandwonder.com/link/5982/destructuring-lists-using-cadr-vs-first-second-vs-pattern-matching</link>
		<comments>http://www.wisdomandwonder.com/link/5982/destructuring-lists-using-cadr-vs-first-second-vs-pattern-matching#comments</comments>
		<pubDate>Sun, 23 Oct 2011 21:15:09 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5982</guid>
		<description><![CDATA[This thread discusses the pros and cons of using the CA*D*R functions vs named first, second, third, list-tail, &#8230; and so on vs pattern matching for the same task. I thought that pattern-matching was the best way to do it; and now I&#8217;m curious about why CA*D*R is better.]]></description>
			<content:encoded><![CDATA[<p><a href="http://lists.scheme-reports.org/pipermail/scheme-reports/2011-October/001568.html">This thread</a> discusses the pros and cons of using the CA*D*R functions vs named first, second, third, list-tail, &#8230; and so on vs pattern matching for the same task. </p>
<p>I thought that pattern-matching was the best way to do it; and now I&#8217;m curious about why CA*D*R is better.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5982/destructuring-lists-using-cadr-vs-first-second-vs-pattern-matching/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bringing Scheme to the iPhone</title>
		<link>http://www.wisdomandwonder.com/link/5900/bringing-scheme-to-the-iphone</link>
		<comments>http://www.wisdomandwonder.com/link/5900/bringing-scheme-to-the-iphone#comments</comments>
		<pubDate>Sat, 27 Aug 2011 01:33:29 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5900</guid>
		<description><![CDATA[Here is another Scheme on iPhone project.]]></description>
			<content:encoded><![CDATA[<p><a href="http://soft.vub.ac.be/soft/ipop/scheme">Here</a> is another Scheme on iPhone project.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5900/bringing-scheme-to-the-iphone/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding raw string syntax to Racket</title>
		<link>http://www.wisdomandwonder.com/link/5891/adding-raw-string-syntax-to-racket</link>
		<comments>http://www.wisdomandwonder.com/link/5891/adding-raw-string-syntax-to-racket#comments</comments>
		<pubDate>Sun, 14 Aug 2011 00:38:34 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[C Sharp]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Racket]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5891</guid>
		<description><![CDATA[Racket is great; if you are missing a language feature then you just add it. How empowering. Joan wanted C# style @-escaped strings and documents how he added them here. (via Racket)]]></description>
			<content:encoded><![CDATA[<p>Racket is great; if you are missing a language feature then you just add it. How empowering. </p>
<p>Joan wanted C# style @-escaped strings and documents how he added them <a href="http://jarnaldich.me/2011/08/07/raw-strings-in-racket.html">here</a>.</p>
<p>(via <a href="http://groups.google.com/group/racket-users/browse_thread/thread/e21d111e3beecd89/4106508bac901302?lnk=gst&#038;q=Adding+raw+string+syntax#4106508bac901302">Racket</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5891/adding-raw-string-syntax-to-racket/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DSLs are still fun</title>
		<link>http://www.wisdomandwonder.com/link/5836/dsls-are-still-fun</link>
		<comments>http://www.wisdomandwonder.com/link/5836/dsls-are-still-fun#comments</comments>
		<pubDate>Mon, 27 Jun 2011 20:34:03 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[DSL]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Racket]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5836</guid>
		<description><![CDATA[Now the popularity of DSLs may have waned, but the fun surrounding them surely has not. A while back James and I looked into implementing a DSL for modeling insurance products in Java that worked really nicely: built on top of Java we’ve full access to all its goodies like the libraries and object system [...]]]></description>
			<content:encoded><![CDATA[<p>Now the popularity of DSLs may have waned, but the fun surrounding them surely has not.</p>
<p>A while back James and I looked into implementing a DSL for modeling insurance products in Java that worked really nicely: </p>
<ul>
<li>built on top of Java we’ve full access to all its goodies like the libraries and object system and containers</li>
<li>integrates with Eclipse to get code-completion and error-reporting and intelligent-debugging</li>
<li>open-source so we can tweak and bug-fix as needed</li>
</ul>
<p>If that is your cup of tea, you might have a look at this super awesome tutorial on implementing a brainf*ck interpreter on top of the Racket programming language:</p>
<p><a href="http://hashcollision.org/brainfudge/">http://hashcollision.org/brainfudge/</a></p>
<p>Basically you get all the power of what Racket has to offer as a language, its libraries, it’s IDE, and the great users. </p>
<p>The article is sort of funny in that the first version of the DLS was deemed “too slow” at 37 second vs 16 second for the version running on the PyPy interpreter; so the author went about optimizing it with all sorts of tweaks that are might be inappropriate for an entry-level article, but for bragging rights… dropping its benchmark speed down to 1 second.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5836/dsls-are-still-fun/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In-Source Documentation in Racket</title>
		<link>http://www.wisdomandwonder.com/link/5688/in-source-documentation-in-racket</link>
		<comments>http://www.wisdomandwonder.com/link/5688/in-source-documentation-in-racket#comments</comments>
		<pubDate>Wed, 01 Jun 2011 02:34:45 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Racket]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5688</guid>
		<description><![CDATA[The scribble/srcdoc and scribble/extract libraries support writing documentation within the documentation code along with an export contract, similar to using JavaDoc. Very nice. (via racket)]]></description>
			<content:encoded><![CDATA[<blockquote><p>The scribble/srcdoc and scribble/extract libraries support writing documentation within the documentation code along with an export contract, similar to using JavaDoc.</p></blockquote>
<p>Very nice.</p>
<p>(via <a href="http://docs.racket-lang.org/scribble/srcdoc.html">racket</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5688/in-source-documentation-in-racket/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Lisp merges Lexical binding to the Trunk</title>
		<link>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk</link>
		<comments>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk#comments</comments>
		<pubDate>Fri, 01 Apr 2011 23:10:10 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5642</guid>
		<description><![CDATA[(via emacs-devel)]]></description>
			<content:encoded><![CDATA[<p>(via <a href="http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00043.html">emacs-devel</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javathcript</title>
		<link>http://www.wisdomandwonder.com/link/5396/javathcript</link>
		<comments>http://www.wisdomandwonder.com/link/5396/javathcript#comments</comments>
		<pubDate>Thu, 16 Dec 2010 14:58:30 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5396</guid>
		<description><![CDATA[kybernetikos shared with me a link to his Lispy language implementation on Javascript: Javathcript allows you to script your web pages in a simple lisp variant. Once you include Javathcript.js, any script tags in your document with type=&#8221;text/lisp&#8221; will be evaluated. It will also download lisp files (only from the original server), if you have [...]]]></description>
			<content:encoded><![CDATA[<p>kybernetikos shared with me a link to his <a href="http://kybernetikos.github.com/Javathcript/">Lispy language implementation on Javascript</a>:</p>
<blockquote><p>Javathcript allows you to script your web pages in a simple lisp variant. Once you include Javathcript.js, any script tags in your document with type=&#8221;text/lisp&#8221; will be evaluated. It will also download lisp files (only from the original server), if you have a script tag that has a src attribute. Finally, you can also evaluate lisp code from javascript using Javathcript.eval(lispString).</p>
<p>While it is not an exact implementation of any pre-existing variant of lisp, if you know lisp most of it should be familiar. If you don&#8217;t you might find it useful to follow a tutorial, e.g. this one. There will be differences between this implementation and others, but there is also much that is common.</p></blockquote>
<p>It has more features than are shared in the blurb.</p>
<p>Looks pretty neat; check it out!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5396/javathcript/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Do Scheme implementors take hygiene seriously?</title>
		<link>http://www.wisdomandwonder.com/link/5380/do-scheme-implementors-take-hygiene-seriously</link>
		<comments>http://www.wisdomandwonder.com/link/5380/do-scheme-implementors-take-hygiene-seriously#comments</comments>
		<pubDate>Mon, 22 Nov 2010 02:16:44 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5380</guid>
		<description><![CDATA[Even the vast majority of Scheme systems, the platform that has experimented the most with hygiene, provide unhygienic defmacro-style macros—presumably because not even Scheme implementors take hygiene very seriously. &#8211; Let Over Lambda, Chapter 6 Hygiene is in the standard here. (via Racket-users)]]></description>
			<content:encoded><![CDATA[<blockquote><p>Even the vast majority of Scheme systems, the platform that has experimented the most with hygiene, provide unhygienic defmacro-style macros—presumably because not even Scheme implementors take hygiene very seriously.</p></blockquote>
<p>&#8211; Let Over Lambda, <a href="http://letoverlambda.com/index.cl/guest/chap6.html">Chapter 6</a> </p>
<p>Hygiene is in the standard <a href="http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-13.html#node_idx_1098">here</a>.</p>
<p>(via <a href="http://groups.google.com/group/racket-users/browse_thread/thread/e5c3153e41acb9ea">Racket-users</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5380/do-scheme-implementors-take-hygiene-seriously/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Racket on Racket?</title>
		<link>http://www.wisdomandwonder.com/article/5298/racket-on-racket</link>
		<comments>http://www.wisdomandwonder.com/article/5298/racket-on-racket#comments</comments>
		<pubDate>Wed, 22 Sep 2010 15:43:20 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Article]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>
		<category><![CDATA[Racket]]></category>
		<category><![CDATA[Scheme]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5298</guid>
		<description><![CDATA[There is a precedent for hosting other languages on top of Racket by compiling their syntax down to Racket. What got me thinking other languages on Racket was Shriram&#8217;s P4P article, and also to some degree a discussion surrounding Gambit&#8217;s SIX. It got me wondering&#8230; Would PLT have anything to gain from providing a non-parenthesized [...]]]></description>
			<content:encoded><![CDATA[<p>There is a <a href="http://groups.google.com/group/racket-users/browse_thread/thread/3de685cc9ef1d861">precedent </a>for hosting other languages on top of Racket by compiling their syntax down to Racket. What got me thinking other languages on Racket was Shriram&#8217;s P4P article, and also to some degree a discussion surrounding Gambit&#8217;s SIX. It got me wondering&#8230;</p>
<p>Would PLT have anything to gain from providing a non-parenthesized language created specifically for Racket? What I mean is take Racket, remove the stuff too hard to do without parens, and offer that up as an &#8220;official&#8221; Racket language. This is not the same as implementing Java on Racket.</p>
<p>How difficult would it be to &#8220;come up with&#8221; such a language? I&#8217;m totally ignorant regarding language design. Would it be interesting&#8230; or boring and a waste of time?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/article/5298/racket-on-racket/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

