Which language is better for creating DSLs, Clojure or Haskell?

Another Quora answer. Part of my increasing admiration for the virtues of EDN in Clojure. Which language is better for creating DSLs, Clojure or Haskell? Clojure has a slightly different philosophy than most Lisps, I think. In Clojure you’d be more likely to make your “DSL” in EDN (“Extensible Data Notation”, which is a bit …

ThoughtStorms is nothing but LinkBins

If ThoughtStorms is looking a bit busy but weird these days, it’s because it’s starting to become my “bookmarking” application. I’m not quite sure where I’m going with this, but for a while I’ve had a bookmarklet to add interesting pages to the ThoughtStorms LinkBin page. Now I have a new way to route those …

Pharo and a new Smalltalk

On Quora, I’m often ranting about Smalltalk. And how I’d like to see a “clean-slate” reinvention. Much as Clojure is a clean-slate reinvention of Common Lisp. Over on this answer I was asked what I think of Pharo. My response veered off somewhat : I’ve had a quick look at Pharo. And it’s certainly quite …

Microsoft adds Python to Excel

Several years late, it seems M$ is considering making Python native to Excel. I wrote a … you guessed it … Quora answer as to why this makes sense for Microsoft. Python has become massively popular with the data and machine learning communities in the last few years. Tools like JuPyter are increasingly popular and …

Gmail Snooze

Is GMail Snooze basically building Mind Traffic Control into your email client? Well, it’s about time Google did something radical to improve GMail. There’s still so much untapped potential in the mail-box. And at least email is an open protocol that we should defend against moving to walled rivers like Facebook and Slack etc.

Working with the file system is too verbose. Let's make it more like JQuery!

Working with the file system in Python is too verbose. Seriously. Every time I want to do something with files I need to remember whether it’s the os or sys library that I need to import. I need to remember or look up half a dozen other functions to grab particular bits of metadata from …