<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx</link><description>Confluence Over the last few days, there has been one thought running in my head - 'All roads lead to Lisp'. I've tried to get it out of my head but like a tune from the radio, it has firmly lodged itself into my head and refuses to let go. Why this state?</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513096</link><pubDate>Sun, 15 Jan 2006 21:26:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513096</guid><dc:creator>Aarthi</dc:creator><description>Awesome post!&lt;br&gt;&amp;gt;&amp;gt;Maybe C# is the next Lisp. That would be a sight to behold :-)&lt;br&gt;Disagree, you know why :)&lt;br&gt;Also reminds me that I have to dust off my Lisp books and get them to my table.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513113</link><pubDate>Sun, 15 Jan 2006 23:59:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513113</guid><dc:creator>vivek</dc:creator><description>Some of these points are really very valid, but you have to understand that there will always be two paradigms for programmers : Work and Play. I'd group things like C# , Delphi , Java , PHP , Ruby , Python etc in the &amp;quot;Work&amp;quot; side.&lt;br&gt;LISP, Scheme, Perl, C etc are examples of &amp;quot;Play&amp;quot; things. It may seem odd, but things made purely for playing around with have much more impact than anything. K &amp;amp; R wrote UNIX for fun, Linus did the same with linux, I doubt that anyone ever envisioned that lisp would be anything more than a formally analysable notation for   algorithms back in the 50s. Its very simple, work sucks, but play is fun. Just look at the innovations in the private space industry on shoestring budgets. Could nasa ever have done that? The whole automotive industry bowed down to Smokey Yunnick. Burt Rutan taught aero manufacturers a thing or two.If pure efficieny in getting stuff done quickly were all there was to programming, itll be dull and boring.&lt;br&gt;(India specific example)Admitted that a Hero honda will get you the cheapest and easiest way to the destination, but then why do people (like me) ride Royal Enfields?&lt;br&gt;A day will never come when there will be an international Obfuscated C# contest. So C# as the next LISP? Thanks, but No thanks.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513132</link><pubDate>Mon, 16 Jan 2006 02:00:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513132</guid><dc:creator>eloop</dc:creator><description>s/Lucent/Lucid/</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513148</link><pubDate>Mon, 16 Jan 2006 03:43:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513148</guid><dc:creator>Goncha</dc:creator><description>s/reddit\.org/reddit\.com/g</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513173</link><pubDate>Mon, 16 Jan 2006 05:54:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513173</guid><dc:creator>Tukra</dc:creator><description>Your example of memoize is C# shows that templates and such make some things possible but to claim that this is therefore within the grasp of your average C# programer does not follow.&lt;br&gt;&lt;br&gt;I think one would have a much easier time teching this concept to an average programer in lisp where you can see the concept through the code.  Your C# example is a perfect example of the crazy hoops one must jump through in a langauge where these concepts are not the design goal. When I was a C++ progammer I found that most of my peers could not even follow fairly simple templating examples.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513196</link><pubDate>Mon, 16 Jan 2006 07:34:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513196</guid><dc:creator>Jeswin P</dc:creator><description>The best option for a .Net programmer to do functional style coding is using F# or Nemerle.&lt;br&gt;&lt;br&gt;The F# compiler and VS integration is remarkably solid, for something that isn't really out of the labs.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513198</link><pubDate>Mon, 16 Jan 2006 07:37:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513198</guid><dc:creator>Steve</dc:creator><description>I know you know this already, but PLT Scheme has an implementation for Windows, Unix and Mac which includes threading and sockets, etc.  I spent about 6 months learning CL, then switched to PLT using How To Design Programs and SICP.  A cross-platform, full-featured Lisp is here:  it's PLT, and it's fun, powerful, and beautiful.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513221</link><pubDate>Mon, 16 Jan 2006 08:42:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513221</guid><dc:creator>gozh2002</dc:creator><description>great post. I very agree with you that C# looks more prmising to support the FP style paradigm in  next version, look at what all those haskell people do in microsoft research.&lt;br&gt;&lt;br&gt;I looked at Cw recently. What is fantastic to me is its threading support syntax, simple and powerful, also I can feel they are using styles from haskell.&lt;br&gt;&lt;br&gt;What I wondered is in next version of C#, I see LINQ but is there any major sytax upgrade for concurrency?</description></item><item><title>An old lisper pipes up...</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513241</link><pubDate>Mon, 16 Jan 2006 10:31:43 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513241</guid><dc:creator>dp</dc:creator><description>I have been programming in lisp for longer than most of the people in the industry have been alive.  I even got paid to do so for more than 15 years.&lt;br&gt;&lt;br&gt;Some general observations:&lt;br&gt;&lt;br&gt;An old saying - lisp is a ball of mud - You can glom more stuff onto it, and it still looks the same.  Anything you write looks acts, and parses just like the &amp;quot;built in&amp;quot; stuff.  A lot of it started that way, with someone coming up with a construct, and it later moving into the core language.  &lt;br&gt;&lt;br&gt;The most obvious example is the object system - the initial design happend while a couple of MIT types were in line waiting for ice cream -- thats why the lisp machine system was called &amp;quot;Flavors&amp;quot;, and the method combination feature was called &amp;quot;mixins&amp;quot;.&lt;br&gt;&lt;br&gt;As a result the language is huge - the language spec is well over 1,000 pages.  Some of it is historical oddity, but most of it is just the resulte of decades of acretion. (yes, decades.  Lisp as a language is about 6 months younger than fortran)  While the learning curve does have a few steep spots its problem is one of length.  But you can start small, somewhere I have a copy of a &amp;quot;comic book&amp;quot; text - something like 40 pages  might be called &amp;quot;the little lisper&amp;quot; - was used as the text for a one semester &amp;quot;programming for poets&amp;quot; class in the mid 70's.&lt;br&gt;&lt;br&gt;&lt;br&gt;But I will make a closing comment - Lisp can be a developers &amp;quot;secret advantage&amp;quot;.  Partly the language partly that lisp systems tended to have very powerful development tool suites..  But I was able to develop large products with a tenth the staff that comparable &amp;quot;conventional&amp;quot; implementations would need.  (example: buidling a whole IC cad system from scratch, including routing, automated device layout, &amp;quot;live schematic&amp;quot;,  functional simulators, and lots of etc.. with less than 20 man years of development investment - and several of them were learing the language at the start...)&lt;br&gt;&lt;br&gt;There are lisp implemented products out there the association of lisp users has some examples.  The ones I was involved with got a lot more done, and had a much more reliable deliverable than did the conventional programming teams could manage...&lt;br&gt;&lt;br&gt;</description></item><item><title>Lisp is a curse</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513270</link><pubDate>Mon, 16 Jan 2006 14:18:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513270</guid><dc:creator>stumbling tongue</dc:creator><description>Sriram:&lt;br&gt;&lt;br&gt;I have also been stuyding lisp lately, but my thoughts led me to a different metaphor: lisp is a curse.&lt;br&gt;&lt;br&gt;Specifically, lisp is like the curse of the Pharaoes. It is an ancient incantation (40 years old, for a _computer language_), written in strange alien hieroglyphics (all those parentheses), which attracts only the best and the brightest (the first Egyptologist were true scholars and romatnics), and which, inexorably, causes these brilliant men to go mad. &lt;br&gt;&lt;br&gt;I can't believe the Pharaoes' curse merely kills you -- I see it working more more insidiously. Once you have read the papyrus carrying the curse, the symbols stick in your mind. You find you are spending more and more time contemplating them, trying to unriddle them. First it's in the back of your mind. Then it's what you think about for hours of the day. Eventually you spend every waking moment mumbling its strange words to yourself, words which create a private world in your own mind, a world that you lose yourself in. Eventually, you are no longer a man.&lt;br&gt;&lt;br&gt;So too with lisp. Its lyrical beauty reaches out only to certain people, and it destroys them.&lt;br&gt;&lt;br&gt;In the last few days I've been wondering about lisp for a web application. I was put in touch with a friend of a friend, an old-timer who used lisp on PHP project. How did he do this? He decided to implement an entire lisp interpreter in PHP. Now he is implementing a lisp interpreter in javascript.&lt;br&gt;&lt;br&gt;Why? Because lisp is a curse.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513278</link><pubDate>Mon, 16 Jan 2006 14:56:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513278</guid><dc:creator>fiobio</dc:creator><description>Good post indeed. But I must say that in your C# memoization example you're cheating ;) Your example is actually a translation of MEMO function from Norvig's book. Correct me if I'm wrong, but I think that in order&lt;br&gt;to implement MEMOIZE function some very&lt;br&gt;bad IL tricks would be necessary. Also,&lt;br&gt;DEFUN-MEMO macro is entirely impossible without&lt;br&gt;additional code processing tools. Probably&lt;br&gt;the problem can be worked around by adding&lt;br&gt;some [Memoized()] attribute to specific&lt;br&gt;methods that can guide IL-based memoization,&lt;br&gt;but all this is just too hard to implement&lt;br&gt;compared to the Lisp way.&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513283</link><pubDate>Mon, 16 Jan 2006 15:13:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513283</guid><dc:creator>sriram</dc:creator><description>Fibio - you're right. Wrong naming on my part! :) As for Memoize, you probably dont need bad IL tricks. With static extensions in Linq, this *might* be possible. My bad, anyway</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513287</link><pubDate>Mon, 16 Jan 2006 15:48:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513287</guid><dc:creator>abhinaba</dc:creator><description>This one is for stumbing tongue :)&lt;br&gt;&lt;br&gt;I just exchanged some emails with Sriram and in one of them I pointed him to to page in the &lt;br&gt;SICP book he refers to in this Blog take look into &lt;a rel="nofollow" target="_new" href="http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-3.html"&gt;http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-3.html&lt;/a&gt; . Take a look and you'll know why its important to know LISP and why it not important whether you can create a web-application with it.....&lt;br&gt; </description></item><item><title>Lisp is like Tamil Poetry</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513317</link><pubDate>Mon, 16 Jan 2006 18:05:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513317</guid><dc:creator>Yuvi</dc:creator><description>Well Sriram, it's your influence that I now have Python, Ruby, Perl, Lua, TCL &amp;amp; Prolog on my System. With this, I think I'd try LISP as well, though I'm goanna follow up only on Ruby and Lua....</description></item><item><title>Inspired Living...</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513318</link><pubDate>Mon, 16 Jan 2006 18:05:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513318</guid><dc:creator>Yuvi</dc:creator><description>Well Sriram, it's your influence that I now have Python, Ruby, Perl, Lua, TCL &amp;amp; Prolog on my System. With this, I think I'd try LISP as well, though I'm goanna follow up only on Ruby and Lua....</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513757</link><pubDate>Tue, 17 Jan 2006 15:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513757</guid><dc:creator>Vishnu Vyas</dc:creator><description>1. I would kill to have your bookshelf!!&lt;br&gt;&lt;br&gt;Ok.. I partly agree with joel on why java or any language for the Morts is bad or rather pointless.. thats better.. &lt;br&gt;Here, In India people take computer science not because of the love of it, but because it gives you jobs.. and you get average joes, and java suits them fine, but for the occasional guy who ends up being a hacker, would have gone the scheme/Lisp way evantually. So, all your good cs hackers get to scheme or lisp anyway.&lt;br&gt;&lt;br&gt;And secondly, I personally believe that instead of breeding more Morts and Elvis's (Maybe its ok to have Elvis's around), wouldn't it be better to have more einsteins around? Agreed, that for a &amp;quot;business&amp;quot;, a mort is as important as an Einstien, but in the long run, its better to have more einstiens than morts around, or we might miss out on General Relativity.&lt;br&gt;&lt;br&gt;So, shouldn't education endeavour to create more einsteins by &amp;quot;hurting their brains&amp;quot;?. I guess thats what joel's point was all about. It aws about the &amp;quot;perils of java schools&amp;quot; and not about the &amp;quot;perils of java shops&amp;quot;, Not about companys. (btw, If I were a for-profit company trying to build something like vis.studio, morts would be highly important coz they are simply more in number..)&lt;br&gt;&lt;br&gt;Thirdly, Indian education, esp CS is so screwed up beyond hope, we end up having our younger demographic answering phone calls all through the night with a fake accent, that we need something like (as strong as) lisp to get back all that we are losing.&lt;br&gt;&lt;br&gt;&lt;br&gt;2. About maintainable code, after my recent experiences at CAIR, is only a matter of discipline, not the language. Language would make not more than 5% of difference to the maintainability of code. &lt;br&gt;Its about getting the right amount of layers (abstractions) in your code right. Its something you don't expect novices, or even Elvis's to get right in the first try. (btw, some C++ code here can give you nightmares for sometime..)&lt;br&gt;&lt;br&gt;Now, about the schemers part, I guess scheme when you take in numbers, is as popular as lisp, just that it doesn't get talked about much. We have pg who goes about with Lisp propoganda, we don't have equivalent people for scheme.&lt;br&gt;&lt;br&gt;Infact, personally, if it weren't for slime &amp;quot;send code to repl&amp;quot; feature, I would put Dr.Scheme at no.1 (its at no.2). And secondly I guess that most lispers are schemers as well, just that it isn't well known or don't talk about it.&lt;br&gt;&lt;br&gt;On an avg, (when i was not working) I was scheming as much as lisping.&lt;br&gt;&lt;br&gt;And about standards.. Python not having a standard (for the language) is such a huge drawback that makes CL look so good as on option for things I want done. &lt;br&gt;All said and done, having a written and published standard is so important (including aspects of maintainability) that &amp;quot;BDFL&amp;quot; stuff doesn't cut it. (at all..). [ btw, some people tend to disagree about this view on a/c of plausible deniability, i.e standards are something to blame ].&lt;br&gt;&lt;br&gt;Any way, nice post.. good respite from trying to maintain horrible C++ code :)&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513758</link><pubDate>Tue, 17 Jan 2006 16:08:20 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513758</guid><dc:creator>Vishnu Vyas</dc:creator><description>After putting down the morts, etc.. I think simple programming languages are highly important, not for fellow cs people, the software developers, but there are a whole lot of other people who need to get stuff done without worrying about things like pointers, heirachichal memory organisation, or how to flip a list in O(n) time.&lt;br&gt;&lt;br&gt;Infact, I work with these kind of people day in and day out. And no, they are not your morts, they are the EINSTIENS. These are some of the smartest mathematicians and physicisits and signal processing people that I know. And their time is better spent on getting their &amp;quot;X-ray telescope&amp;quot; simulation to work, rather than worrying about things like &amp;quot;Is the function call there getting inlined or not?&amp;quot;.&lt;br&gt;&lt;br&gt;This is where any language that doesn't get in your way goes a Long Long way. python fills this niche perfectly.. but guess what? Neither C++ nor lisp fits it. This is the niche where simple, easy to learn, languages make their mark. Making &amp;quot;non-programmers&amp;quot; productive in programming.&lt;br&gt;&lt;br&gt;So, if you are a programmer, starting out and staying in something like java or python is &amp;quot;SIN&amp;quot;. And lisp is not. you will never learn &amp;quot;computer science&amp;quot; without lisp, the same way you will never learn coordinate-geometry without graphs.&lt;br&gt;But, if you are programming only because you need to get something else done, then java is just as good as any of the dialects of lisp out there.</description></item><item><title>Mr.</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#513812</link><pubDate>Tue, 17 Jan 2006 19:15:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:513812</guid><dc:creator>OneProgrammer</dc:creator><description>Please, if Microsoft &amp;quot;borrows&amp;quot; Lisp and Scheme ideas so heavily as you mention in your blog, at least give proper credit to Scheme and Lisp and guys that did the hard part of programming languages research (including Guy Steele). Maybe he works for Sun which is Microsoft competition, but that doesn't matter - being large and rich like Microsoft doesn't mean you can freely take smaller kids' stuff and call it yours. &lt;br&gt;&lt;br&gt;It's not about your personally, I like your appreciation of Lispy things.</description></item><item><title>Lisp is many things</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514170</link><pubDate>Wed, 18 Jan 2006 08:57:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514170</guid><dc:creator>Sanjay Pande</dc:creator><description>Hi Sriram,&lt;br&gt;Any Scheme dialect is *much* easier to learn than Java, C# or anything else that descended from there. The reason that Scheme is a favourite with AI professors is that they can teach the language in 2-3 classes and then focus on the hard problems that are to be solved. It is clean, beautiful and powerful. Anything that is syntax based cannot look the same even if it lets you do the same things. &lt;br&gt;&lt;br&gt;Common Lisp is very different from Scheme. Very practical and one of the most powerful things I have seen. It does have its drawbacks but that does not have to do with the design of the language but more with the implementations.&lt;br&gt;&lt;br&gt;Another language that is beautiful is Smalltalk and again extremely easy to understand to both a child as well as an esoteric hacker. You folks will never get that.&lt;br&gt;&lt;br&gt;I find programming in lisp dead easy and using anything like C#, Java etc hard and boring.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514262</link><pubDate>Wed, 18 Jan 2006 15:50:10 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514262</guid><dc:creator>Matt</dc:creator><description>This is the best article I've read all month! :-)</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514433</link><pubDate>Wed, 18 Jan 2006 22:13:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514433</guid><dc:creator>Sridhar Ratna</dc:creator><description>Lisp gave me motivation in spikes. I wish it could sustain. I'm considering it again. &lt;br&gt;&lt;br&gt;btw, PCL makes me sick. That book is slow to my 'pace'. So I'm seeking a different book, that is _available_.&lt;br&gt;</description></item><item><title>Translating the Python libs to LISP?</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514643</link><pubDate>Thu, 19 Jan 2006 04:23:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514643</guid><dc:creator>Martin</dc:creator><description>I'm also falling more and more in love with LISP, but I learned LISP via hacking Emacs for more than 10 years rather than studying Scheme in school.  I must admit that acquiring knowledge of Python has made my LISP better, and rekindled a vivid interest in it, to the extent that I'm reading or re-reading the same books you mention in your post these days.&lt;br&gt;&lt;br&gt;Now, I keep wondering, if LISP is only lacking good standard libraries, and Python has them, using Python 2.5's AST work, could we easily build a program that would generate a decent enough translation of those Python libraries into LISP packages?  Of course, the result would need to get LISPified to take advantage of the more powerful paradigms there, but as a first step, wouldn't that sort-of kickstart a great new era?  &lt;br&gt;&lt;br&gt;If think that if I could find a LISP that has all the std libraries that Python has and a decent community around it, I would probably switch to that tomorrow for many of my projects.&lt;br&gt;&lt;br&gt;cheers,&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514747</link><pubDate>Thu, 19 Jan 2006 10:39:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514747</guid><dc:creator>Hemanth P.S.</dc:creator><description>I read this is in a blog; I am not able to recall who said this. Paraphrasing it, &amp;quot;A major problem with lack of Lisp's popularity/practicality is not to do with the language itself. But that the Lisp community is hostile towards newbies and as long as the lisp community suffers from this social problem, Lisp cannot succeed&amp;quot;. I tend to sort of agree with this. My feeling is that I haven't found the Lisp community as friendly as the Python community.&lt;br&gt;--Hemanth P.S.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#514858</link><pubDate>Thu, 19 Jan 2006 19:06:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:514858</guid><dc:creator>RighteousAnger</dc:creator><description>It's funny how these Microsoft bas...rds rip off everything nice in computer science, not giving anything in return. What they give us instead is broken operating system that only gradually gets Unix scripting abilities, they also just &amp;quot;invented&amp;quot; text config files in ISS 5.0 - veery clever, that's what unix guys knew 30 years ago, broken internet browser that can't even parse html comments properly, obfuscated APIs like MS Exchange one which is basically uglish COM wrap around email protocols. </description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515036</link><pubDate>Fri, 20 Jan 2006 00:28:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515036</guid><dc:creator>Pyotr</dc:creator><description>I don't share radical language of my predecessor, however, Sriram, isn't it interesting that you, MS guy, read a book written by Google director, current No. 1 Microsoft enemy (kind of)? &lt;br&gt;On the other hand, do you read books written by Microsoft directors? To me, they are just generic MBA bull... ehm tales that we programmers despise and loath. Books written by  company directors express company culture pretty nicely.&lt;br&gt;So, fair enough, Google culture seems more appropriate for a computer science geek and lisper like you... i am not working neither recruting for Google, just giving yoy a neat little disturbing idea.&lt;br&gt;&lt;br&gt;Good luck&lt;br&gt;&lt;br&gt;P.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515037</link><pubDate>Fri, 20 Jan 2006 00:30:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515037</guid><dc:creator>Jon</dc:creator><description>Have you seen L Sharp - www.lsharp.org ?&lt;br&gt;&lt;br&gt;Wouldn't it be great if you could hack Lisp from Visual Studio ?&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515159</link><pubDate>Fri, 20 Jan 2006 04:34:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515159</guid><dc:creator>Sridhar Vembu</dc:creator><description>I responded to Joel's article on JavaSchools at &lt;a rel="nofollow" target="_new" href="http://svembu.adventnet.com/perma/7635/programmer-=-computer-scientist.html"&gt;http://svembu.adventnet.com/perma/7635/programmer-=-computer-scientist.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Earlier, I posted a variation of Greenspun's Tenth Rule at &lt;a rel="nofollow" target="_new" href="http://blogs.adventnet.com/perma/7024/vembu-s-tenth-rule-of-programming.html"&gt;http://blogs.adventnet.com/perma/7024/vembu-s-tenth-rule-of-programming.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Sridhar</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515177</link><pubDate>Fri, 20 Jan 2006 05:43:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515177</guid><dc:creator>Sridhar Vembu</dc:creator><description>Here is my response to your post: &lt;a rel="nofollow" target="_new" href="http://svembu.adventnet.com/perma/8170/lisp-is-poetry-and-most-programmers-want-prose.html"&gt;http://svembu.adventnet.com/perma/8170/lisp-is-poetry-and-most-programmers-want-prose.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>Take a look at Ocaml</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515262</link><pubDate>Fri, 20 Jan 2006 12:29:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515262</guid><dc:creator>jope</dc:creator><description>Both Lisp and C# are anachronism really, though Lisp has definitely a lot more modern language design features and a lot less madness in it than C#. All languages that build on the crime that C and C++ were should be eradicated from the face of this planet, because all the do is teach programmers how not to do things. &lt;br&gt;&lt;br&gt;Have a look at Ocaml, take the time to actually use it for some time and you will see what a language *can* achieve and how good design makes it not only easy to implement your algorithms, but also hard to commit errors that can get serious during runtime. </description></item><item><title>XSLT</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515263</link><pubDate>Fri, 20 Jan 2006 12:36:45 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515263</guid><dc:creator>Tim</dc:creator><description>I would have thought something like XSLT &amp;amp; XML would be the place that the 'new Lisp'  would spring from. S-expressions == tags, code &amp;amp; data intermingling etc.&lt;br&gt;&lt;br&gt;Some way of making [XSLT|Lisp] look more like the syntax of C# would be a winner. The parentheses in both make ones eyes go funny... Maybe python whitespace?</description></item><item><title>Where are the macros?</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515381</link><pubDate>Fri, 20 Jan 2006 19:48:54 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515381</guid><dc:creator>Sidharth</dc:creator><description>Lisp's great strength is in macros. I think thats also the one bit that most other mainstream languages are going to stay the farthest from. &lt;br&gt;&lt;br&gt;Fortress(&lt;a rel="nofollow" target="_new" href="http://research.sun.com/projects/plrg/"&gt;http://research.sun.com/projects/plrg/&lt;/a&gt;) has some sort of language extention mechanism but I'm guessing that's limited to/focused on scientific computing requirements and won't be anywhere near as complete as lisp macros.&lt;br&gt;&lt;br&gt;Nice post btw.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515616</link><pubDate>Sat, 21 Jan 2006 04:25:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515616</guid><dc:creator>Marcin</dc:creator><description>I made a similar point about the environment for lisp in a comment on lemonodor: Lisp lacks a single turnkey solution, like the JDK, which comes with copious libraries and rational documentation. The creation is not especially a technical problem: It just needs some people to step forward and make themselves the defacto centre of the new lisp universe. Also, this system should not use ASDF, because ASDF has too many incompatible versions, and too many things go wrong, like with all packaging systems.</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#515769</link><pubDate>Sat, 21 Jan 2006 21:09:43 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:515769</guid><dc:creator>Roshan</dc:creator><description>&amp;quot;I remember reading the following piece somewhere about Lisp and it struck a chord back then in me. Its about the progression of a Lisp programmer - the newbie realizes that the difference between code and data is trivial. The expert realizes that all code is data. And the true master realizes that all data is code.&amp;quot;&lt;br&gt;&lt;br&gt;This part of the intro for Dan Friedman's Essentials of Programming Language. It is true. &lt;br&gt;&lt;br&gt;I would recommend scheme to you beacuse of continuations. In time, you may realise, that this is related some deep ideas in computation. &lt;br&gt;&lt;br&gt;Finally, if you have to stick wth one Scheme, stick with Chez Scheme. Also, I hope you know Common Larceny exists.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>re: sin is fun!</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#516244</link><pubDate>Mon, 23 Jan 2006 19:08:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:516244</guid><dc:creator>ja23</dc:creator><description>Here's something sinful:&lt;br&gt;&lt;br&gt;   www.biobike.org&lt;br&gt;&lt;br&gt;Their demo server needs no registration.&lt;br&gt;&lt;br&gt;They call it a &amp;quot;knowledge operating system&amp;quot;... whatever that means. I think that it's just an online Lisp thing, plus a bunch of data and tools.&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#516643</link><pubDate>Tue, 24 Jan 2006 08:14:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:516643</guid><dc:creator>Anand Sathe</dc:creator><description>Hmm - you are close to the promised land - the logical next of in-step step to Lisp would be Smalltalk.&lt;br&gt;been reading your blog for a year or so - based on what I have read, something tells me you would fall in love with it. Can talk some more if you are interested</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#516646</link><pubDate>Tue, 24 Jan 2006 08:34:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:516646</guid><dc:creator>Mayuresh Kathe</dc:creator><description>I agree with you, Lisp surely is quite seductive, but when you look at it from a very practical viewpoint it doesn't fit in at all.&lt;br&gt;First, is the question of code maintainability, second, is the ability for a developer to carry their skills forward.&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#517209</link><pubDate>Wed, 25 Jan 2006 04:59:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:517209</guid><dc:creator>Tage Stabell-Kulø</dc:creator><description>I use Lisp because it is based on a model that has proven to be rather useful: van Neumann.  It is not Lisp that makes code and data looks the same, it is van Neumann.  If your language resembles Turing (code cast in stone) you should ask yourself why Turing machines are on paper only.  In theory, the expressive power of Turing and von Neumann is equal, as is the power of aassembly and C# and Lisp.  But in practice there is a difference,  And this difference has value.  At least to me. </description></item><item><title>Re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#517344</link><pubDate>Wed, 25 Jan 2006 15:07:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:517344</guid><dc:creator>Adhemar</dc:creator><description>I really hope one day the mixed imperative-functional (object oriented) languages are going to break through.&lt;br&gt;&lt;br&gt;Personnally, I really like Nemerle [1], although it's still just a research language. It’s kind of C# with functional additions. It allows you to think functional when it makes sense, and imperative when it doesn’t. Together with the macros it’s quite powerful.&lt;br&gt;&lt;br&gt;I think that’s the direction programming languages should go. Find the best of two worlds.&lt;br&gt;&lt;br&gt;[1] &lt;a rel="nofollow" target="_new" href="http://nemerle.org/"&gt;http://nemerle.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adhemar</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#517627</link><pubDate>Thu, 26 Jan 2006 00:58:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:517627</guid><dc:creator>David A. Mellis</dc:creator><description>For comparison, here's a Common Lisp version of memoize, from Paul Graham's &amp;quot;On Lisp&amp;quot;.  Note that it handles functions of an arbitrary number of parameters.&lt;br&gt;&lt;br&gt;(defun memoize (fn) &lt;br&gt;(let ((cache (make-hash-table :test #'equal))) &lt;br&gt;#'(lambda (&amp;amp;rest args) &lt;br&gt;(multiple-value-bind (val win) (gethash args cache) &lt;br&gt;(if win &lt;br&gt;val &lt;br&gt;(setf (gethash args cache) &lt;br&gt;(apply fn args)))))))</description></item><item><title>Re:</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#518994</link><pubDate>Mon, 30 Jan 2006 06:15:51 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:518994</guid><dc:creator>Aristotle Pagaltzis</dc:creator><description>A basic memoization function in Perl is pretty self-explanatory (I assume this applies to Python and Ruby as well); certainly much, much easier to read for a casual observer than the C# example is. Much less intimidating than the Lisp version, as well – Syntax Matters.&lt;br&gt;&lt;br&gt;Now, Perl 6 will come with continuations, coroutines, hyperoperators and real Lisp-style macros.&lt;br&gt;&lt;br&gt;Not only that, but the language will be defined in terms of its own revamped pattern match syntax, which is really an honest-to-goodness grammar language with first-class language citizen status right alongside other control structures, so that you will be able to *modify* the language grammar *while* the code is being parsed. This is the ultimate eval(): all the power of Lisp, but with actual syntax.&lt;br&gt;&lt;br&gt;(It’ll also clean up OO and add stuff like traits and multimethods. And do a whole host of other spring cleaning.)&lt;br&gt;&lt;br&gt;I know where I’m putting my money for what the next Lisp will be.</description></item><item><title>re: Perl6</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#524156</link><pubDate>Fri, 03 Feb 2006 19:48:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:524156</guid><dc:creator>Someone with Taste</dc:creator><description>I think I'm going to throw up!</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#524766</link><pubDate>Sat, 04 Feb 2006 15:32:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:524766</guid><dc:creator>Rukaiya</dc:creator><description>Damn good post!</description></item><item><title>JavaSchools, Scheme, and Sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#527723</link><pubDate>Wed, 08 Feb 2006 21:02:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:527723</guid><dc:creator>Phil Windley's Technometria</dc:creator><description> Joel Spolsky has a great essay on the perils of JavaSchools, those programs that adopt Java (or .Net, to be fair) because it is easy for students to learn. In it, he sings the praises of learning Scheme. Without...</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#527789</link><pubDate>Wed, 08 Feb 2006 22:34:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:527789</guid><dc:creator>newlisp</dc:creator><description>newLISP is a good alternative for quick scripting stuff! </description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#527790</link><pubDate>Wed, 08 Feb 2006 22:34:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:527790</guid><dc:creator>newlisp</dc:creator><description>newLISP is a good alternative for quick scripting stuff! </description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#535357</link><pubDate>Mon, 20 Feb 2006 13:08:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:535357</guid><dc:creator>Greg</dc:creator><description>Lisp is a sin, ML is a virtue!</description></item><item><title>On Rapid Application Development and Creating Maintainable Code</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#539638</link><pubDate>Mon, 27 Feb 2006 05:21:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:539638</guid><dc:creator>Jeremy D. Miller -- The Shade Tree Developer</dc:creator><description>Some of my CodeBetter neighbors have been posting and arguing about the relative merits of Rapid Application...</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#552881</link><pubDate>Thu, 16 Mar 2006 18:27:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:552881</guid><dc:creator>ya bi siktirin gidin</dc:creator><description>ebenzin amına eşşek yarrağı girsin</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#574668</link><pubDate>Wed, 12 Apr 2006 07:25:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:574668</guid><dc:creator>Marc</dc:creator><description>Great article and lots of interesting links. Thanks!&lt;br&gt;</description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#576015</link><pubDate>Thu, 13 Apr 2006 23:24:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:576015</guid><dc:creator>trouble</dc:creator><description>I have experimented with as many languages that i could get to work on one of my computers. I will have to say this much about lisp. Lisp like any language is only as good as the person can express themselves. I can say things in romainian that do not translate and vice versa. The problem with lisp is not the language per say. It the fact that we are taught that C++ and java is the way to go to start off with. </description></item><item><title>re: Lisp is sin</title><link>http://blogs.msdn.com/sriram/archive/2006/01/15/lisp-is-sin.aspx#611872</link><pubDate>Wed, 31 May 2006 19:49:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:611872</guid><dc:creator>rape stories</dc:creator><description>Best of the text i read about a problem.</description></item></channel></rss>