These projects are all spare-time efforts and not a result of any employment. Luckily, I tend to get a seat on my train.

✇ Atavachron

Fast, scalable and secure de-duplicating backup

  • Scalable to any repository size (stream-based architecture)
  • Verifiable immutable snapshots that are forever incremental
  • Content-derived chunking for optimal de-duplication
  • Encryption (libsodium) and compression (LZ4)
  • Lock-free repository sharing and de-duplication across multiple machines
  • Multi-threaded chunk processing and upload
  • Property-based testing of core processing pipeline
  • Amazon S3 support
GitHub Project

☕ Expresso

A simple expressions language with polymorphic extensible row types

Expresso is a minimal statically-typed functional programming language, designed with embedding and/or extensibility in mind. Possible use cases for such a minimal language include configuration (à la Nix), data exchange (à la JSON) or even a starting point for a custom external DSL.

Expresso has the following features:

  • A small and simple implementation
  • Statically typed with type inference
  • Structural typing with extensible records and variants
  • Convenient use from Haskell (a type class for marshalling values)
  • Whitespace insensitive syntax
  • Type annotations to support first-class modules and schema validation use cases
  • Lazy evaluation
GitHub Project