First Common Lisp work
                       ======================

                           First Elisp
                           -----------

I have started to explore coding in Lisp.

The first step was writing some  Elisp code. I build some stuff, and
used those to  do some actual stuff, take those  "in production", so
to say.

Those working things are in all about 1,000 lines of Elisp code.

So, that is only just a small  start. I have been enjoying this.


                      Next step: Common Lisp
                      ----------------------

I  started reading  books on  Common Lisp,  and explore  Common Lisp
related websites.

I installed SBCL with quicklisp and started to build some stuff.

I started with the same projects as my first Elisp projects.

* Wiki to texinfo converter
* Static site generator

These are  now two compiled  programs, that  I run from  the command
line.

                    Wiki to texinfo converter
                    -------------------------

I use  awkiawki as a  personal wiki. This is  a wiki written  in Awk
that sits  on a pool  of Markdown files.  When a page  is requested,
awkiakwi  converts the  Markdown on  the fly  to HTML.  The wiki  to
texinfo converter  converts a number  of these wiki-pages  into some
texinfo files, and installs the result in a personal info-directory.

This is  not rocket  science of course,  but it was  a great  way to
learn a lot :)

                      Static site generator
                      ---------------------

The source  of my website is  a directory with Markdown  files. This
started as a  Vimwiki diary, so the files are  named after the date,
in the format "YYYY-MM-DD.md". It  uses Vimwiki-tags, every file has
a line  with tags,  surrounded and  delimited with  a colon.  So the
format is ":tag1:tag2:tag3:".

The  static site  generator uses  the  3bmd package  to convert  the
Markdown to HTML, creates  a list of all used tags and  a page a per
tag with the related HTML-files.

I have  a Links-page  on my website.  In my home  network I  have an
instance  of Linkding  running, that  I  use for  my bookmarks.  The
static site generator talks with  the REST API of Linkding, collects
the  bookmarks with  a  certain  tag and  compiles  a  list for  the
Links-webpage.

I am  not completely happy  with the  Links page, because  it simply
dumps  the list,  without  any organization  or categorization.  So,
there is room for improvement.

                        Large executables
                        -----------------

The compiled version of these two scripts are rather large.

This  is in  general  the  case with  SBCL.  With  the FreeBSD  SBCL
package, the option "compression" does not  work. My guess is has to
do with the compile time configuration. My  plan is to set up a jail
and compile SBCL in there, to see if this can be resolved.

                          Just starting
                          -------------

These are just my first Common Lisp projects. Any experienced Lisper
would probably laugh about the code. But the programs work. The next
step is to tidy the code, look for possibilities to refactor, and so
on.

So I  started, and enjoyed, writing  code in Common Lisp.  The quest
will continue !


Last edited: $Date: 2022/10/09 11:21:48 $

                              * EOF *