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)(Superseded by Herdsim) |
| Herdsim (pony) | The evolution of Dssim. A distributed system simulator where agents are written in Pony and the simulation is done in a distributed way. (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) |
| Peshmind (go,prolog) | Network topology discovery and analysis tool that uses Prolog inference to reconstruct LAN network topology based solely on MAC addresses observed by network switches (Working prototype) |
| Redmon (go,redis) | 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) |
| Rulemancer (go,clips,c) | Go application that embeds the CLIPS expert system engine to power rules-based games and direct JSON-to-CLIPS bridges. Define logic using CLIPS (an expressive rule/fact inference engine), then interact with it via HTTP or CLI. (Working prototype) |
Here instead you can find an unstructured list of other projects I have worked on.