tetrislife, to random

I was wondering if comments alongside source code are not read for reasons other than them being likely to be out of date. Maybe its because ... syntax highlighting makes them less readable?

#SoftwareDevelopment #Documentation #LiterateProgramming

skyfaller, to random
@skyfaller@jawns.club avatar

Has anyone on here written any software using ? If yes, what tools did you use? Did they work well, and would you recommend them?

I've been fascinated by the concept ever since Inform 7 was released as open source, with its own literate programming toolset. @zarfeblong quotes, "...no one has yet volunteered to write a program using another's system for literate programming." https://blog.zarfhome.com/2022/04/inform-7-open-source-release.html

Did you write your own literate programming software?

ole, to hpc

First day of the Workshop on Reproducible Software Environments for Research and High-Performance Computing with focus on Guix :guix: in Montpellier.

I'm excited to learn more about Guix and how it compares to Nix. :nixos:

https://repro4research.sciencesconf.org/resource/page/id/3

ole,

Before the last day of the Guix workshop starts, these are the TILs from yesterday:

  • Guix / Nix empower on many levels 💪
  • HPC (*)
  • system admins
  • developers
  • internal / external users
  • Declarative environments + literate programming = ❤️
  • There's no significant performance impact of Guix on HPC clusters ⚡

(*) It remains to be seen how useful Nix on HPC clusters will be. 🤷

https://repro4research.sciencesconf.org/resource/page/id/1

giuseppebilotta, to random
@giuseppebilotta@fediscience.org avatar

For anyone who might be interested, I've just tagged v1.0 (and v1.1 ahem) of my tool
https://github.com/Oblomov/asciidoctor-litprog

This is an extension that tangles & weaves your source code & documentation with a single pass from an .adoc document.

It's self-hosted: the README is the module source.

(Obviously, a bootstrap version of the module is included to be able to build the actual module.)

giuseppebilotta,
@giuseppebilotta@fediscience.org avatar

“I'm on a roll”, as they say: v2.0 of is out, with improved default styling for woven output and —the most significant change— an overhaul of the system that outputs line numbering comment in the tangling phase.

For those unfamiliar with , weaving is the production of human-readable documentation, and tangling the production of machine-readable source code.

(more >)

giuseppebilotta,
@giuseppebilotta@fediscience.org avatar

(more >)

One of the principles of is that “source code is for compilers”: the order in which functions and data types are defined in the source code depends on how the compiler works rather than on how the developer thinks. In , the pieces of course are written in whatever order the developer finds more fitting for their presentation, and “tangled” to produce the compiler-oriented source.

(more >)

giuseppebilotta,
@giuseppebilotta@fediscience.org avatar

(more >)

The obvious issue with this is that if the compiler or interpreter trips on an error in the source code, any file and line number information will refer to the tangled file rather than the source. So during tangling we insert comments indicating where every piece of tangled source code comes from —which introduces problems when moving different languages in the same source file.

(more >)

giuseppebilotta,
@giuseppebilotta@fediscience.org avatar

Probably the last stretch for today: v2.2 of , with a feature enhancement (runtime renaming of output files), and an important bugfix for when chunk names have <, & or > in them.

https://github.com/Oblomov/asciidoctor-litprog

judell, to llm
@judell@social.coop avatar

"Some explanations can, will, and should be written by code authors alone, or by those authors in partnership with LLMs. Others can, will, and should be conjured dynamically by code readers who ask LLMs for explanations on the fly."

https://thenewstack.io/how-to-use-llms-for-dynamic-documentation/

#LLM #Documentation #LiterateProgramming

jmcastagnetto, to til
@jmcastagnetto@mastodon.social avatar

about "Evidence" a tool, that works using (à la , , or ). It allows the creation of mixing with specific data extraction and visualization section.
More details at https://evidence.dev/

ross, to emacs
@ross@rossabaker.com avatar

Creative Commons is great for text. It's not great for code. Literate programming is both.

CC-BY-SA-4.0 is one-way compatible with GPL-3.0. License a whole doc as CC-BY-SA-4.0, and both are neatly covered. But if you include non-trivial GPL-3.0 code into your literate program (hello, Emacs!), the doc needs two licenses or one awkward one. And so many Emacs configs are GPL, it's hard to avoid.

nil, to Lisp
@nil@functional.cafe avatar
amoroso, to random
@amoroso@fosstodon.org avatar

I run across this interesting site simply called Literate Programming:

http://www.literateprogramming.com

It provides lots of quotes of books and papers about literate programming and software documentation, as well links to tools and resources.

matadan, to random
@matadan@mastodon.social avatar

More Rainbow code showing the Literate programming style it is designed to support. I usually don't do comments in Swift but Rainbow makes comments joyful and intrinsically part of the code page. Black denotes a comment word. More traditional languages make it very hard to add comments in-place like this so I tend to use intermediate variable names and small functions to explain my code in as declarative a way as possible.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • Durango
  • DreamBathrooms
  • ngwrru68w68
  • osvaldo12
  • cubers
  • magazineikmin
  • ethstaker
  • Youngstown
  • rosin
  • slotface
  • everett
  • kavyap
  • InstantRegret
  • JUstTest
  • khanakhh
  • thenastyranch
  • anitta
  • modclub
  • GTA5RPClips
  • mdbf
  • cisconetworking
  • tester
  • tacticalgear
  • provamag3
  • Leos
  • normalnudes
  • lostlight
  • All magazines