FAQ & Trivia
FAQ & Trivia
Section titled “FAQ & Trivia”Why the name “Sharpino”?
Section titled “Why the name “Sharpino”?”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.
Why another F# Event Sourcing library?
Section titled “Why another F# Event Sourcing library?”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:
- Immutable Events: Events represent facts, which are immutable by nature.
- Pure State Computation: Computing current state is simply a fold function over events.
- Discriminated Unions: Standard DUs provide a perfect representation for both commands and events.
- .NET Ecosystem Integration: Access to libraries like FsPickler, Dapper, and various cache/message bus drivers.
How does Sharpino compare to Equinox?
Section titled “How does Sharpino compare to Equinox?”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
Refreshablein-memory composite Detail caching. - Native SQL/Postgres integrations without complex setup.
You can inspect the following side-by-side comparison repositories:
Is there a full-stack template?
Section titled “Is there a full-stack template?”Yes:
- Sharpino.Blazor.Template shows a full-stack walking skeleton utilizing a Blazor C# frontend communicating with a Sharpino F# backend.
- A live restaurant order management demo is hosted at orderssystem.azurewebsites.net.
