Planet Lisp is refreshing again
Last month I switched servers on short notice and a few services stopped working. I’ve been bringing them back up as I can. Today I got Planet Lisp refreshing again, and I hope to get l1sp.org back shortly.
Last month I switched servers on short notice and a few services stopped working. I’ve been bringing them back up as I can. Today I got Planet Lisp refreshing again, and I hope to get l1sp.org back shortly.
Via Raymond Toy on the ecl mailing list, Maxima in the browser .
Neat use of CL for OCR by Nick Faro. It leverages FFI and run-program nicely to get the job done. I think run-program or equivalent is amazingly handy at getting quick CL access to outside functionality. I ran a busy website that used imagemagick a lot, but I never bothered to use FFI. I called “convert” and friends via run-program, and it had the advantage that incorrect use of the C…
This seems like an interesting old incomplete project - Toilet Lisp with some old source code too.
Check it out!
Sometimes I like to have a short function call to make a lookup table with arbitrary keys and values. Something like this: (table "name" "Alice" "age" 42) => #<TABLE ...> This is easy enough to define like so: (defun table (&rest keys-and-values) ;;; loop over keys and values to construct a table ...) But there’s another option that works: (defun table (&rest keys-and-values &key…
The latest SBCL handles slot :initform and :type options in a new way. It’s mentioned in the release notes. minor incompatible change: the compiler signals a warning at compile-time when an initform of T, NIL or 0 does not match a STANDARD-CLASS slot’s declared type._ Sounds pretty benign, but it breaks dozens of projects in Quicklisp. (To be fair, most of the failures are caused by a…
Ultralisp.org has a great new search system. It indexes the docstrings of all the Ultralisp projects, and as a result it is very easy to search for specific functionality and get useful results. For example, I wanted to see what projects have base64-related functions, and now it’s just a simple search away . I highly recommend it.
Last week I attended the SBCL 20th anniversary workshop , held in Vienna, Austria. Here are some rough impressions - I wish I had detailed enough notes to recreate the experience for those who did not attend, but alas, this is what you get! It’s incomplete and I’m sorry if I’ve left out someone unfairly - you have to go yourself next time so you don’t miss a thing.…
The Planet Lisp twitter fix involved tracking post status with a file. Although it’s not 100% bulletproof, there’s a trick when using files to reduce races. Here’s a naive approach: Assign a Planet Lisp post a unique pathname If that pathname exists, do nothing Otherwise, send a tweet for the post and save its details to the pathname The problem is between 2 and 3 - another…
I brought the @planet_lisp Twitter account back to life after more than a year of dormancy. It updates twitter with every item on Planet Lisp. It broke a while back because of how I used Twitter itself to keep track of what had been posted. I updated it to use a local data directory instead. It’s working well so far.
Every 90 days my letsencrypt certificate expires and I renew it manually. I have to cut and paste data from the certbot script into repl forms to serve the right data on the right path and it’s such a pain that sometimes I put it off until after it expires, and people email me about it, and I feel bad. The manual process looks something like this (not my actual domain or challenges): #…
I really like this comment from Stas Boukarev on Methods or Functions, when do I use which on reddit: [You] don’t make an extensible program by just making each function generic, if each function still makes some assumption on the data. You can’t say “oh, it’s extensible, but you have to define a hundred methods of your own”, an extensible protocol will require…
Want to write Common Lisp for RavenPack? | R. Matthew Emerson
Converter of maps from Reflex Arena to QuakeWorld : Via dzecniv on reddit.
ASCII Art Animations in Lisp
Writing a natural language date and time parser : Via reddit.
Personal Notes on Corman Lisp 3.1 Release
A Road to Common Lisp - Steve Losh
Matt Emerson opened the conference keynote talk on Clozure CL. He also touched on using and celebrating CL. It provided a jolt of enthusiasm and positivity to kick off a fun conference. And it made me want to use Clozure CL more often and learn how to effectively hack on and with it. Nicolas Hafner’s talk on shaders was interesting, but partway through the talk he revealed that the slideshow…