17 lines
1.1 KiB
Org Mode
17 lines
1.1 KiB
Org Mode
#+title: Literate Programming
|
|
|
|
In literate programming the goal is to write your program as you would write a book. Or to see it another way, you write the documentation first, and then the implementation in it. Or another way, you make your documentation executable. It lets us focus on the /why/ of the code before the what.
|
|
|
|
The idea is that you don't write code with documentation sprinkled throughout, but instead you write documentation with code sprinkled throughout. Writing software becomes like writing a book. The documentation comes first, and code comes after.
|
|
|
|
Here is a video that talks about what literate programming is:
|
|
|
|
#+begin_center
|
|
#+begin_export html
|
|
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Av0PQDVTP4A" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
|
#+end_export
|
|
#+end_center
|
|
|
|
Some example projects that do this:
|
|
|
|
- The books “Implementing Elliptic Curve Cryptography” and “Lisp in Small Pieces” are supposed to have been written as literate programs.
|