More Ideas on CL SSG
May 31, 2023 (IST)
Following up on my initial post (CL SSG — Common Lisp Static Site Generator), Coleslaw didn’t really work out (more below). Instead, I’m imagining a static site generator based on a build system, a typst-inspired language, and a simple server.
Regarding Coleslaw, I had some bugs that I didn’t feel like going through, plus it loaded a lot of modules I wasn’t interested in (but not the incrememental build one?), and I didn’t feel like learning all about it. Even the preview didn’t work properly. So I just let it be. Zola gives me most of what I need anyway. I might give Coleslaw a try again later.
I did look up some Common Lisp libraries, however.
Overlord seems to be a good build system. It should get me incrememental and parallel builds.
For the authoring and templating, I want to use a typst-like language. Templates will simply be functions that wrap the rest of the content. I wonder how I’d extract metadata. Perhaps a metadata function?
Hunchentoot seems to be the most popular server, and it should be more than good enough. I simply need to serve pages locally, and it should be well documented, with enough guides and references.
The first step is to start messing with cl-typst.
Should be as simply as evaluating anything starting with ,(
and simply passing along anything else as regular text.
Then figure out a system for sharing state or environment?
Or should I strive to keep it functional?
Oh, well. Get the parser-evaluator figured out first.