Projects

Over the years, I have written code in various programming languages and on different operating systems. In this section of the website, I will share code, documentation, and external references related to these materials. Please note that they may not be complete, exhaustive, or well-written. Most of these personal projects are a collection of ideas and a few lines of code, while others are more structured with fully functional applications. Only a few of them are currently in production. Among all these projects, here is a list of the ones I care about the most and plan to continue working on. If you find any of them interesting and believe you can offer assistance or would like to discuss them, please feel free to get in touch with me.

Project Description
Bae (go,protobuf) bid/ask market engine. It supports multiple markets,agents,portfolios. It also has an associated simulator. (Early prototype)
BondMachine (go,HDL) My personal flagship project. A full heterogeneous framework. Check out the project site to know more (Working prototype)
Clusexec (python) Distributed shell with some peculiar features like intra-machines pipes and task automation. (Production)
Dssim (c,opencl,lua) Distributed systems simulator. Agents can be programmad in lua and the framework build OpenCL kernels to simulate the distributed system within a GPU. (Working prototype)
Icg (go,9p,HDL) Small footprint protocol designed for distributed systems and targeted to taxonomy based environments (Draft)
Mel (go) Toolkit to create,manage an use Domain Specific Languages (DSL). Programs written in those languages can be evolved in a Genetic programming way or used as code for agents in a complex system to be simulated and studied. (Working prototype)
Redmon (go) Minimal monitoring system. (Production)
RodoFS (ruby,fuse,redis) Tag based filesystem in userspace written in Ruby. Files in RodoFS are not organized hierarchically in directory but with tags attached to them. The synthetic directory is used to manipulate, filter and organize the tags instead. (Working prototype)

Here instead you can find an unstructured list of other projects I have worked on.