I occasionally compile some statistics on programming language popularity by running a bunch of Google searches to rank programming languages according to the number of results. I wouldn’t read too much into these stats, but they are not without value.
After thirteen years with Wordpress, I decided to switch to static site generation for this blog. As a Racket programmer, Frog was a natural choice. This post highlights some of the lessons I learned in the process. I’m running MacOS locally and deploying to Ubuntu Linux.
I previously wrote a post about switching from Carbon Emacs to Gnu Emacs. Upgrading is pretty simple now, so I thought I’d record the procedure for installing Emacs from source on OSX for future reference:
In September, 2008, I translated Peter Norvig’s spelling corrector into Ruby. My current favorite language is Racket, so I thought it would be a good exercise to port it to Racket. After some helpful tips by Vincent St-Amour and Sam Tobin-Hochstadt in the #racket IRC channel, I came up with the following. I’ll show it two different ways, the first minimizes the line count (without sacrificing too much stylistically) to 27 lines, and the second is closer to how I’d normally format it:
Here’s a great, two part, video by Matthew Flatt about embedding DSLs in Racket. Being able to hack the language is one of Racket’s/Lisp’s killer features:
For the last few years (since 2009), I’ve been pitching the idea to my peers that language speed & concurrency/parallel capabilities will become more important as CPU clock speeds plateau and manufacturers add more CPU cores instead of advancing clock rates. My 2+ year old Macbook Pro has 4 cores and 8 hyperthreads.
I stumbled upon a programming challenge a company was using for recruitment purposes and thought I’d create a Haskell solution as a learning exercise. The first problem was to find the longest palindrome embedded in a text string.