#+TITLE: Litorgy #+OPTIONS: toc:nil num:nil ^:nil * litorgy Litorgy enables *communication* between programming languages and between people. Litorgy provides: - communication between programs :: Data passes seamlessly between different programming languages, text, and tables. - communication between people :: Data and calculations are embedded in the same document as notes explanations and reports. ** communication between programs *** interaction between languages (disk usage in your home directory) This will work for Linux and Mac users, not so sure about shell commands for windows users. To run place the cursor on the =#+begin_src= line of the source block labeled directory-pie and press =\C-c\C-c=. #+srcname: directories #+begin_src bash :results replace cd ~ && du -sc * |grep -v total #+end_src #+resname: directories | 64 | "Desktop" | | 11882808 | "Documents" | | 8210024 | "Downloads" | | 879800 | "Library" | | 57344 | "Movies" | | 7590248 | "Music" | | 5307664 | "Pictures" | | 0 | "Public" | | 152 | "Sites" | | 8 | "System" | | 56 | "bin" | | 3274848 | "mail" | | 5282032 | "src" | | 1264 | "tools" | #+srcname: directory-pie #+begin_src R :var dirs = directories pie(dirs[,1], labels = dirs[,2]) #+end_src *** operate on the contents of tables *** be called from inside tables ** communication between people *** calculation in/on tables (litorgies own tests) litorgies own functional tests are contained in a large org-mode table, allowing the test suite to be run be evaluation of the table and the results to be collected in the same table. *** interactive documentation (tutorial) This would demonstrate applicability to Reproducible Research, and Literate Programming.