A Language by Any Other Name

February 10, 2014 #

Some programs are configurable, and they expose a so called "configuration" language. These tend to range from key value pairs to full-fledged, Turing-complete, programming languages.

A "programming" language is also a "configuration" language, but only in the abstract. A programming language (somehow, by compiler, or virtual machine, or direct execution of an AST) produces, let's call it an image[1], in memory which evolves the CPU and memory over time while executing.

But, then there's an interesting realization. A "configuration" language doesn't configure the CPU and its attached memory in the typical sense. It configures the image. Essentially, a "configuration" language writes specialized programs on the fly, just like a JIT, or a macro-processor in Lisp.

  1. An image is just an executable and associated data residing in memory.
Tagged: thought , programming

Other Recent Posts

31 Jan 2014—Stripe CTF 3.0 Recap

15 Jan 2014—Static Analysis

01 Jan 2014—"2014"

12 Dec 2013—When

05 Dec 2013—Realm of Racket

24 Sep 2013—A Spreadsheet is Not a Database

17 Sep 2013—Technical Interviews Make Me Smile

25 Jul 2013—Applying the Web of Trust Model to Blog Reading

18 Dec 2012—A Prescription for Dynamic Image Resizing