May. 22nd, 2013 | 08:26 am
Boston Lisp meetings are a lot of fun. Here's Alex Plotnick's announcement for the next meeting:
I'm pleased to announce that François-René Rideau will speak at the next Boston Lisp meeting on his recent work on ASDF 3. The meeting will take place on Thursday, 23 May at 6:30 PM, in the Star Conference room at MIT's Stata Center (MIT 32-D463; <http://whereis.mit.edu/?go=32>).
I'm sorry about the short notice on this one; communications problems of all kinds have been gumming up the works. Please feel free to spread the word about the meeting via whatever mechanisms are available to you.
Talk details (courtesy of Faré) follow. I hope to see you all there!
Title: "ASDF 3, or lessons in building portable Common Lisp programs"
"ASDF (Another System Definition Facility) has been the de facto standard Common Lisp build system for over ten years. I recently rewrote it completely, several times, all the time (mostly) preserving backwards compatibility. The latest incarnation, ASDF 3, in addition to fixing deep design bugs older than ASDF itself, also includes extensive portability library, UIOP, not to be confused with an existing parallelizing extension, POIU. I will show how to use ASDF, explain the recent improvements, and discuss the challenges of writing portable Common Lisp programs and what that means for the past and future of Lisp."
About the speaker:
"François-René Rideau is a Lisp plumber. On good days, he designs great piping for persistent data, to be used in airline reservation system of ITA (now part of Google). On bad days, he dons his rubber gloves and scrubs the pipes. He also has a blog, Cybernethics, where he writes on liberty, music, programming, and dynamic systems in general."
I can't make it, but if you're in the Boston area, you should go!
May. 14th, 2013 | 08:57 am
Hello? "Hello, this is Jack," said a heavily accented voice, "This is the second call about the slow performance and possible virus problems of your Windows PC."
I don't have one of those, is what I thought, but what I said was, Ok, yeah, I have had a lot of problems lately. "Well sir I am calling to assist you with those problems, is the PC on right now?" Yeah, sure. "Ok, sir, can you please go to your PC."
Ok, I'm at my PC. "Now in the LOWER, LEFT corner of the screen, do you see a Windows button?" Windows button? What's that? "It looks like a flag." What color flag? "It is a flag in the corner." Which corner? What color is it?
Jack is starting to sigh. "In the LOWER, LEFT corner." I don't see a button anywhere. "It is in the corner sir." OH! I see the button!
Jack gets happier. "Now do you see Computer or My Computer in the menu that pops up?" I don't see any menu. "You have to click the Windows button." Where is that? More sighs. "In the lower left corner." OH! Ok, I clicked it! "Do you see Computer or My Computer in the menu?" I can't see YOUR computer! I'm at my house! "No, do you see COMPUTER, or do you see MY COMPUTER?" I can't see your computer, that doesn't make any sense!
Jack sighs some more. "What do you see for menus?" OH! I see Computer there! "Ok, can you right-click on Computer, and..." I closed the menu. Sigh, sigh. "Can you open the menu again and right-click on..." Where am I supposed to write it?
I can't stop laughing any more, so I interrupt Jack and ask him how dumb he thinks I am. "VERY DUMB!" He is pretty mad. Jack, who are you calling from, who do you represent? "I am calling from Afghanistan!" And what company are you calling from? "I am Mozilla Firefox!" And what are you trying to do? "I am trying to HACK YOUR COMPUTER!" I just laugh and wish him good luck, and he says "Go to hell, you bastard!" and hangs up.
May. 13th, 2013 | 01:33 pm
Subject: ECLM 2013 - two days left to register
Date: Mon, 13 May 2013 19:17:26 +0200
From: Edi Weitz
Ladies and Gentlemen,
This is our last call - there are two days left to register for this year's ECLM in case you haven't done so already:
We have more than 50 registrations so far, but we wouldn't mind seeing another dozen or two...
Arthur & Edi.
I greatly enjoyed my last visit to ECLM and I can't recommend it highly enough if you want to meet people with interesting Common Lisp projects and ideas.
May. 8th, 2013 | 03:13 pm
Apr. 28th, 2013 | 12:17 pm
A bunch of people have forked it on github to add more and more functionality, and I think jscl will just keep getting cooler. Good job, David Vázquez and contributors!
Apr. 24th, 2013 | 10:39 pm
Today I was running some analysis on about 9,000 files, basically mapping a function over each to warm up a cache. Something like this:
* (map nil 'analyze-file *9000-files*) time passes
I had no idea how well it was progressing, and whether I'd need to take a snack break or let it run overnight. So I interrupted it and wrote a quick and dirty REPL utility function:
(defun :dot-every (count fun) (let ((i 0)) (lambda (&rest args) (when (< count (incf i)) (setf i 0) (write-char #\. *trace-output*) (force-output *trace-output*)) (apply fun args))))
It prints out one dot per COUNT invocations of the function it returns, giving some indication of progress. Sensible values for COUNT depend on the volume of function calls.
For this problem, I called it with a COUNT of 100:
* (map nil (:dot-every 100 'analyze-file) *9000-files*) ............etc
The cached analyses printed out a ton of dots quickly, and the uncached analyses started printing dots at a slow but steady pace, and I could tell that it would be done in a few minutes instead of a few hours.
So now I'm going to use this to wrap up any function I have to call a ton of times and I want to get a sense of how it's progressing.
Feb. 16th, 2013 | 11:41 am
Feb. 2nd, 2013 | 09:38 pm
Rob Warnock has posted neat stuff for many years, both in comp.lang.lisp and comp.lang.scheme. After creating the Erik Naggum archive, Rob was next on my list of authors to archive. It took me a few years, but here it is: the Rob Warnock Lisp Usenet archive. It has 3,265 articles from comp.lang.lisp and comp.lang.scheme from 1995 to 2009, indexed and searchable. I hope it helps you find as many useful articles as I have over the years.
Here are a few articles I've saved and shared over the years:
- The crucial role of the readtable
- Emacs is NOT required to hack Lisp
- The historical context of Baker's META
- Designing an OS for the PDP-8 (and part 2)
(In case you're curious, I used a library called usenet-legend to create the archive and make it searchable. I also have some unreleased code that provides a thin layer of web interface on top of usenet-legend.)
Jan. 2nd, 2013 | 11:18 am
Well, it has been more than 20 years with Lisp in earnest... I'm sitting on a gold mine of great code that I haveYou can read the rest of his message on the lisp-hug archive. His github page is here.
used over the entire period, and still use daily in my work. But it seems the Lisp community is a bit short on
libraries of code. No point sitting on all this stuff till I die...
One of the (many) great things I have found with Lisp is that Code Rot (I always called this Bit-Rot, but I
realize that I'm wrongly attributing when I do that) is almost a non-problem, compared to just about every
other language system that I have used in my 40+ year career. I'm still using a large body of code that I wrote
nearly 15-20 years ago and has never needed any maintenance.
My code generally grows organically to supply solutions to problems I am facing in my own work. I generally
don't write libraries for others to use. And that will show through in a lot of what I share with the world.
C'est la vie...
Jan. 2nd, 2013 | 09:07 am
The upshot in terms of Lisp evangelism has been quite good, BTW. MostRead the full post here.
of the students have only been exposed to Java and scripting languages
so far and there are always some who express an immediate interest in
learning more about CL.