Tiny Little Libraries

I usually work in gameplay and UI roles in projects that I am involved in and almost always in relatively high level languages. For this reason, in what free time I have available, I occasionally write small, low level utility libraries, mostly in C99 and therefore should be very portable

These are my Tiny Little Libraries. I don’t claim they are the most optimal solutions, nor are they the smallest. Most of the time, they are just small self contained tasks I set myself to see whether I can do it.

The design principle for all of them is very similar. They follow a few key ideas.

  • Adhering to C89 or C99 standard. Allows for the libraries to run on everything more powerful than a toaster.
  • Have no implied state – everything should be contained within a library context.
  • No external dependencies apart form what is absolutely necessary.
  • Should run at a minimum on *nix systems, and ideally all on Windows.
  • Have simple API with as few exposed functions as possible to provide the functionality required.

TLMM Tiny Little Maths Machine github

This was my first tiny little library and the one that set the design for subsequent libraries. It takes mathematical equations (such as (x^2)+22) and will evaluate them, given values of x.

TLVM Tiny Little Virtual Machine  github

Potentially my most complicated TL library to date. A small 8 bit processor, initially with 8080 instruction set.

TLLITiny Little Lisp Interpreter github

A little lisp interpreter. As with most of these libraries was a proof of concept. It would be nice to make this a more featureful in future.

TLMDTiny Little Message Dispatcher github

Client-Server architecture for communicating between processes which may or may not be on the same computer

TLMP – Tiny Little MooltiPass (lib) github

Native communication library to communicate with Mooltipass hardware password keeper.

Leave a Reply

Your email address will not be published. Required fields are marked *

Diary of a Slacker