Skip to content
View martinothamar's full-sized avatar

Organizations

@Forse @EnterCon
Block or Report

Block or report martinothamar

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
martinothamar/README.md

Hi there 👋, my name is Martin

I am a polyglot programmer and open source enthusiast, working as a consultant at Forse

  • I've built
    • Mediator - a fast (close to 0 overhead) sourcegenerator-based mediator pattern implementation in .NET. Mostly MediatR-compatible, but faster
    • Fast.PRNGs.NET - fast PRNG implementations (up to 2.5x faster than System.Random)
    • simd-rand - SIMD implementations of common PRNGs in Rust 🦀 (for example Xoshiro256+ ~60 GiB/s u64 gen using AVX512 on my laptop, about 6x faster than non-vectorized)
    • "building x in y" - experiments and learning about systems programming, programming languages, architectures and designs
  • Currently exploring Rust, Zig and Go

I strive to make simple, observable systems - employing mechanical sympathy to build efficient and reliable software.



Some of my favorite technical content 📖:

Pinned

  1. Mediator Mediator Public

    A high performance implementation of Mediator pattern in .NET using source generators.

    C# 2k 67

  2. building-x-in-y building-x-in-y Public

    Repository where I experiment and build various systems for learning purposes (mostly low-level)

    Rust 2

  3. Fast.PRNGs.NET Fast.PRNGs.NET Public

    Fast PRNG implementations in .NET. Your PRNG is unlikely to be a bottleneck in anything you do, but there are exceptions like for instance Monte Carlo simulations, where generating random samples c…

    C# 5

  4. simd-rand simd-rand Public

    SIMD implementations of common PRNGs in Rust 🦀

    Rust 2 3

  5. WrapperValueObject WrapperValueObject Public

    A .NET source generator for creating simple value objects wrapping primitive types.

    C# 51 3

  6. FastLazy FastLazy Public

    Fast, lock-free implementation of lazy initialization on .NET

    C# 2