What is Nostr?
aziz /
npub14n7…8mxe
2023-06-24 11:55:57

aziz on Nostr: Hey, Chez #Scheme schemers! Chez GitHub, I made a pre-release of letloop v6b9, check ...

Hey, Chez #Scheme schemers!

Chez GitHub, I made a pre-release of letloop v6b9, check it out at: https://github.com/letloop/cli/releases/tag/v6b9

:win3_terminal:​ letloop's CLI is a Chez Scheme command line tool with all the goodies packed in, though, the formula to reverse entropy is missing. Be assured that I am doing everything I can to improve the current state of the art^W loop 😶

Meanwhile, download letloop for your favorite GNU/Linux, or (Just Linux), then you can use the following templates as inspiration to invoke your favorite, and the best scheming device on, and around Earth:

- `letloop exec DIRECTORY ... program.scm` execute program.scm and all imported libraries in the sorted set of zero or more directories `DIRECTORY ...` (yes the order does matter, it makes shadowing possible)

- `letloop compile DIRECTORY ... program.scm` will produce an elf binary called `a.out` based on `program.scm` and the imported libraries (libraries used as part of `(eval exp environmnent)` don't find their way into the binary on their own, and you need top-level-import them in `program.scm`).

- `letloop check DIRECTORY ... library.scm` with its variations allow testing libraries. It is powered by a test runner that expects tests to be thunks named with a prefix `~check-` e.g. `~check-ess-000-earth-is-not-flat` and exported by `library.scm`. The test runner expects a return value that satisfies the following predicate `(lambda (x) (eq? x #true))`, otherwise if it is a nominal return it is considered a test failure, if it is a non-nominal exit a la `(raise (make-error-too-hot))` it is an error. Both lead to a non-zero exit code (immediate if you use the flag --fail-fast). A #HTML code coverage report with number of run times is produced. It helps identify hot, cold, and dead code.

#Fedora build for rawhide is broken. Patch welcome.

letloop's CLI available at https://github.com/letloop/cli/releases/tag/v6b9

NB: This post was sponsored by my grand ma as known as: mother Lily of the valley.

Author Public Key
npub14n73xhdt7jf8px9cw3hdcfkk5s4vel9mvx6ry8zrl9duh9yejwmqnk8mxe