What do you need to know about literate configuration?

What do you need to know about literate configuration?

In this booklet I will introduce you to Literate Configuration, which is the application of Literate Programming to configuration files. If you are already familiar with Literate Programming you might find most of the basic concepts familiar.

What’s the name of the literate programming language?

For literate programming, I use a language called Org-mode. I know, the name is a bit strange, but it makes more sense if you consider its history. Org-mode started as an extension for the text editor Emacs that helped to organize notes. Emacs users have found it so useful that now it’s part of the base install.

What do you need to know about org mode?

Org mode is a markup format and corresponding toolset developed originally within the Emacs text editor. Org provides a wide range of functionality, including text formatting, calendar, task tracking, and much more. For our purposes, we are interested in the combination of two of its functions:

How to write a report as a literate program?

You need to write up a report on which students passed and which failed. Additionally, you need to calculate some statistics to get an idea of how well the course went. Rather than reaching for separate writing and programming tools, you decide to do your report as a literate program.

When did Donald Knuth come up with literate programming?

Literate programming was first proposed by Donald Knuth in 1984 ( Literate Programming, The Computer Journal, 27 (2): 97–111) as a technique of producing computer code from prose. The general idea is that you write code as you would write a story or an article, describing what you want to do and how to solve it.

How to generate config files from org files?

In general, the process of generating config files from Org files can be illustrated as follows: Org mode is extremely flexible, so you can decide how to structure and organize both your source (Org) and destination (config) files in the way that suits you best. Here are some options: