diff options
Diffstat (limited to '2024/talks/literate.md')
-rw-r--r-- | 2024/talks/literate.md | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/2024/talks/literate.md b/2024/talks/literate.md new file mode 100644 index 00000000..0fb0a0de --- /dev/null +++ b/2024/talks/literate.md @@ -0,0 +1,50 @@ +[[!meta title="Literate Programming for the 21st Century"]] +[[!meta copyright="Copyright © 2024 Howard Abrams"]] +[[!inline pages="internal(2024/info/literate-nav)" raw="yes"]] + +<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing --> +<!-- You can manually edit this file to update the abstract, add links, etc. ---> + + +# Literate Programming for the 21st Century +Howard Abrams (he/him) - @howard@emacs.ch , <https://www.howardism.org> + +[[!inline pages="internal(2024/info/literate-before)" raw="yes"]] + +Donald Knuth’s idea of *literate programming* in the 80’s and 90’s was +interesting, but he didn’t realize what Emacs and Org can do in this +century. In this talk, I would like to go back your initial *dabblings* +with Org `src` blocks to show how you can program *literately* as quickly +as you can in any other mode. + +Some of the tips and tricks include: + +- Automatically keeping your lit code sync’d +- Easier code generation +- Jumping to Org headers to help organize code +- Jumping to code definitions with the xref interface + +At the end of this talk, I hope to inspire you to try it again, as my +personal “go to” is *programming literately*. + +I will be following the format and outline in my essay: +<https://howardism.org/Technical/Emacs/literate-writ-large.html> + +About the speaker: + +About ten years ago, I gave a talk I called *literate devops* and people +still ask me if I still use those techniques. For all my personal +projects, I do. Even projects that I share with others, I often *start* +programming with an Org file. + +I will admit, programming within Org blocks has some burrs, but over +the years, I’ve filed them off with helper functions, snippets and +other features. Thought I would share these. + + + +[[!inline pages="internal(2024/info/literate-after)" raw="yes"]] + +[[!inline pages="internal(2024/info/literate-nav)" raw="yes"]] + + |