By Engineers11 (Own work) [CC BY-SA 3.0 (], via Wikimedia Commons

Scripting vs. Engineering

Ian Rogers wrote “I’ve come to the conclusion that the terms like “programming”, “coding” etc. have become horribly ambiguous which has enabled: organisations to offer courses on html/css editing as “coding” people to make claims like “nodejs is more productive than java” (which is a nonsense statement either way) various arguments along the lines of “is X a…”

CodeMesh 2013 Redux

Sam Carr wrote “Last month I attended the CodeMesh conference here in sunny London, along with a couple of my colleagues. Here are my recollections and thoughts. The venue (Hotel Russel on Russel Square) is a pleasantly rambling, grand old hotel, which hosted a few hundred hardcore geeks fairly well. A couple of the rooms were a bit small and…”

Delimited dynamic variables from call/cc

Frank Shearar wrote “I’m prepared to own up to my biases. I like delimited continuations. I like zippers. I like getting halfway through my work, shelving my work for a time, and coming back to it later. We’ve seen the relationship between resumable exceptions and delimited dynamic variables before, but what about languages where you don’t have direct…”

Ruby Property testing with Rantly

Ceri Storey wrote “At LShift, we tend to be big fans of functional programming, and in particular I’ve found ideas from languages like Clojure and Haskell do influence how I use more mainstream languages such as Ruby. One technology that’s been useful to us on a current project is QuickCheck-alike for Ruby, Rantly. Briefly, rather than testing a…”

Comments are important

Frank Shearar wrote “Nat Pryce wrote a fun little library the other day called code-words. It rips your source into words, and turns the words into a wordcloud. In short, a visual representation of the most common words in your source, and using font size to indicate the more common terms. The aim is to give an introduction…”

Transforming Ruby DSLs

Frank Shearar wrote “Ruby excels at “embedded” DSLs – domain specific languages that are simultaneously plain Ruby and yet distinctly their own. RSpec springs to mind as an excellent example. At any rate, I have a DSL that recently underwent a fairly invasive change, and I wanted to automate moving model descriptions from the old format to the…”

Implementing maps and folds using Zippers

Frank Shearar wrote “Zippers continue to fascinate me. Let’s recap a bit: a zipper is a data structure representing the navigation and mutation of an otherwise immutable structure. We’ve looked at several different implementations here on the LShift blog, in several different languages. Today, we’re going to see what else we can do with zippers.”

Randomly testing Ruby

Frank Shearar wrote “I recently ran into the need for testing the behaviour of a parser of a modelling language. The parser processes a number of model descriptions in gem files, as well as local definitions. Until recently, the parser would process the gems in an arbitrary order. However the language while ostensibly declarative, isn’t, because of a…”