<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-27488238.post7425479667836352721..comments</id><updated>2007-04-21T04:13:15.546+02:00</updated><title type='text'>Comments on taw's blog: Pattern matching for RLisp</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://t-a-w.blogspot.com/feeds/7425479667836352721/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default'/><link rel='alternate' type='text/html' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html'/><author><name>taw</name><uri>http://www.blogger.com/profile/16972845140253292628</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>3</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-27488238.post-1825384409208849373</id><published>2007-04-21T04:13:15.546+02:00</published><updated>2007-04-21T04:13:15.546+02:00</updated><title type='text'>schemd does not lack a full macro system.syntax-ru...</title><content type='html'>schemd does not lack a full macro system.&lt;BR/&gt;syntax-rules is not the only game in town; most modern schemes implement Dyvbig's syntax-case which allows you to do full macros with arbitrary symbol injection...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/1825384409208849373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/1825384409208849373'/><link rel='alternate' type='text/html' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html?showComment=1177121595546#c1825384409208849373' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html' ref='tag:blogger.com,1999:blog-27488238.post-7425479667836352721' source='http://www.blogger.com/feeds/27488238/posts/default/7425479667836352721' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-27488238.post-4926795727114228690</id><published>2007-04-20T14:29:57.060+02:00</published><updated>2007-04-20T14:29:57.060+02:00</updated><title type='text'>Fabien: I think I'll try to build optional Scheme-...</title><content type='html'>Fabien: I think I'll try to build optional Scheme-like macro system on top of default CL-like defmacro.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/4926795727114228690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/4926795727114228690'/><link rel='alternate' type='text/html' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html?showComment=1177072197060#c4926795727114228690' title=''/><author><name>taw</name><uri>http://www.blogger.com/profile/16972845140253292628</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='16858664008194455200'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html' ref='tag:blogger.com,1999:blog-27488238.post-7425479667836352721' source='http://www.blogger.com/feeds/27488238/posts/default/7425479667836352721' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-27488238.post-235304697965649716</id><published>2007-04-20T08:54:05.303+02:00</published><updated>2007-04-20T08:54:05.303+02:00</updated><title type='text'>Notice that once you've got robust pattern matchin...</title><content type='html'>Notice that once you've got robust pattern matching, you're quite close to have hygienic macros: &lt;BR/&gt;&lt;BR/&gt;- to avoid variable capture, just perform an alpha conversion of variables declared in a macro's quoted code&lt;BR/&gt;&lt;BR/&gt;- to avoid change of open variables meaning, collect all of them in a hashtable at macro declaration time, and replace these variables by hashtable indexing in the maacro's body.&lt;BR/&gt;&lt;BR/&gt;Both operations are rather easy to implement with pattern matching. I implemented the first half in metalua (http://metalua.luaforge.net), through pattern matching.&lt;BR/&gt;&lt;BR/&gt;I didn't bother with the second half, because I want, by design, to get macros clearly separated from regular code. That's one of the ways in which metalua is not just Lisp-with-syntax :)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/235304697965649716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27488238/7425479667836352721/comments/default/235304697965649716'/><link rel='alternate' type='text/html' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html?showComment=1177052045303#c235304697965649716' title=''/><author><name>Fabien</name><uri>http://www.blogger.com/profile/02739446213556869485</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://t-a-w.blogspot.com/2007/04/pattern-matching-for-rlisp.html' ref='tag:blogger.com,1999:blog-27488238.post-7425479667836352721' source='http://www.blogger.com/feeds/27488238/posts/default/7425479667836352721' type='text/html'/></entry></feed>