From 886ae437fee6a674f7b2757062f1b8a91275457a Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Fri, 8 Oct 2021 01:58:03 -0400 Subject: Add talk pages for 2021 --- 2021/talks/exec.md | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 2021/talks/exec.md (limited to '2021/talks/exec.md') diff --git a/2021/talks/exec.md b/2021/talks/exec.md new file mode 100644 index 00000000..e4d46aef --- /dev/null +++ b/2021/talks/exec.md @@ -0,0 +1,77 @@ +[[!meta title="Org as an executable format"]] +[[!meta copyright="Copyright © 2021 Tom Gillespie"]] +[[!inline pages="internal(2021/info/exec-nav)" raw="yes"]] + + + + +# Org as an executable format +Tom Gillespie + +Org mode is known for its flexibility, power, and staggeringly diverse +number of workflows, users, and use cases. + +This talk explores just how far we can push the boundaries of the sane +and sensible with regard to Org workflows. + +In particular it will discuss shebang blocks, and elvs: two parts of a +complete system for creating executable Org files. + +Org syntax does not support shebang lines. However, it turns out that +Org syntax enables something even better — shebang blocks. + +Org is also (supposedly) not an executable file format. However, by +combining a shebang block with a Org babel source block, and eval +local variables (elvs) Org becomes a multi-language executable format. + +In this talk we introduce shebang blocks and elvs as a two part system +that transforms Org files into executable documents that can run on any +recent version of Emacs. + +These ideas are implemented in + and +, and +orgstrap.el is available as a package on MELPA and can be installed +via M-x install-package orgstrap. + +The talk will open with a demo of how to create an executable Org file +using the orgstrap machinery. + +We then discuss security considerations, and show example use cases. + +Finally the talk will cover the details and development of the +portable shebang block for Org mode that works on a wide variety of +systems and shells, and on the development of a formal specification +and a reference implementation for using Org source blocks to +transform Org files from plain text documents with a bit of markup +into self describing computational documents, or interactive +applications. + + + +# Outline + +- 5-10 minutes: + +A demo of adding the orgstrap block and elvs, +adding a shebang block, and then running an org file. + + + +[[!inline pages="internal(2021/info/exec-schedule)" raw="yes"]] + +[[!inline pages="internal(2021/info/exec-nav)" raw="yes"]] -- cgit v1.2.3