Had an interesting conversation with a buddy last night. It started out as a shift-reduce problem with Bison and ended up a ping-pong of useful UNIX API:s. We concluded that despite having worked professionally with UNIX for over a decade, it is still very satisfying finding gems like these.
Most people are completely unaware they exist and end up rolling their
own (buggy) implementations. For instance, string manipulation and
various forms of linked lists. Which is why I many years ago extracted
the frog DNA from Finit to a
separate library called libite,
or -lite for short. It imports the OpenBSD strlcpy() family of API:s,
up-to-date queue.h with the _SAFE iterators, and more. Some people
like libbsd for this, but I’ve
found many of the ports incomplete and unsafe and prefer to stay closer
to the upstream *BSD versions.
Update: This post was originally written Nov 14, 2015. It was a Saturday and I remember being extremely inspired when I wrote it. I’ve continued adding to it over the years, and still do. So, as of Jul 2, 2017 I’m bumping the modification date each time I add something new :-)
[Read More]