Skip to content

FAQ & Trivia

It is a portmanteau of the character “Sharp” (as in C# or F#) and “fino” (the Italian word for thin or fine). Pronounced sciarpino, it also means “little scarf” in Italian.


The author created it to study Event Sourcing and use it in real-world personal and commercial projects. Functional programming languages (especially the ML family) are a natural fit for Event Sourcing because:

  1. Immutable Events: Events represent facts, which are immutable by nature.
  2. Pure State Computation: Computing current state is simply a fold function over events.
  3. Discriminated Unions: Standard DUs provide a perfect representation for both commands and events.
  4. .NET Ecosystem Integration: Access to libraries like FsPickler, Dapper, and various cache/message bus drivers.

Equinox is a well-established .NET event-sourcing framework. Sharpino differs in its specific lightweight design choices and direct support for features like:

  • Simpler cross-stream transaction helpers.
  • Built-in Refreshable in-memory composite Detail caching.
  • Native SQL/Postgres integrations without complex setup.

You can inspect the following side-by-side comparison repositories:


Yes: