...

Michael Bull

michaelbull

Software developer & technology enthusiast with interests towards computer programming, reverse engineering, and full-stack web development.

  • 152 followers
  • UK

Projects

Zero-overhead Result monad for modelling success or failure in operations, offering features like chaining, transformation, and binding support, inspired by Elm, Haskell, and Rust.

Higher-order function for retrying operations prone to temporary failures. Supports customizable retry policies, including exponential backoff and jitter. Integrates with `Result` type for non-exceptional failures.

Facilitates lazily-evaluated log calls using inline classes and functions, integrating with SLF4J. Supports idiomatic logger declarations, resistant to cut-and-paste errors, and improves logging performance by avoiding unnecessary computations.

Multiplatform combinatoric sequences for Kotlin, inspired by python-itertools.