A canvas library for generating technical drawings
The ADG library (Automatic Drawing Generation) is a set of functions focused on automating the drawing of mechanical parts. It is not a CAD system but a GObject-based library where a custom application can put common CAD entities such as paths, hatches and dimensions, to automatically create technical drawings. A demo application is provided in order to show the capabilities of the canvas. Although it is possible to interact with the library directly in C (that is what the adg-demo program is doing), the canvas is expected to be used from higher level languages, much in the same way as what done in the GNOME stack. Lua bindings based on LGI are already provided out of the box. The adg-lua project, downloadable from the "Files" section, provides Lua programs and demos that leverages these bindings.
Realtime bigdata tool for bit strings up to 2^63 based on AVL forest
Realtime bigdata tool at the bit level based on immutable AVL forest which can be run in memory or, in future versions, as a merkle forest like a blockchain. Main object is a sparse bit string (Bits) that efficiently scales up to 2^63 bits normally compressed as forest has duplicated substrings. Bits objects support reading bit, byte, short, int, or long (Java primitives) at any bit index in 64 bit range. Example: instead of building a class to hold a header and then data, represent all of that as Bits, subranges of them, and ints for sizes of its parts. Expansion ability for other kinds of compression, since Bits is a Java interface. Main functions on bits are substring, concat, number of 0 or 1 bits, and number of bits (size). All those operations can be done millions of times per second regardless of size because the AVL forest reuses existing branches recursively. Theres a scalar (originally for copy/pasting subranges of sounds) and a bit Java package. Sparse n dimensional matrix.