PersistedConcurrentSortedList 10.1.201.2
dotnet add package PersistedConcurrentSortedList --version 10.1.201.2
NuGet\Install-Package PersistedConcurrentSortedList -Version 10.1.201.2
<PackageReference Include="PersistedConcurrentSortedList" Version="10.1.201.2" />
<PackageVersion Include="PersistedConcurrentSortedList" Version="10.1.201.2" />
<PackageReference Include="PersistedConcurrentSortedList" />
paket add PersistedConcurrentSortedList --version 10.1.201.2
#r "nuget: PersistedConcurrentSortedList, 10.1.201.2"
#:package PersistedConcurrentSortedList@10.1.201.2
#addin nuget:?package=PersistedConcurrentSortedList&version=10.1.201.2
#tool nuget:?package=PersistedConcurrentSortedList&version=10.1.201.2
PersistedConcurrentSortedList
PersistedConcurrentSortedList is an F# library for ordered key/value storage with on-disk persistence.
It is designed for workloads where:
- the dataset is loaded once or rebuilt at startup,
- reads dominate after initialization,
- only occasional small updates are expected,
- ordered queries such as
FirstLastN*still matter.
Features
- ordered in-memory index over persisted values
Add,Update,Upsert, andRemoveTryGetValue, key hashing helpers, and buffered/non-buffered value loading- protobuf and FsPickler serialization paths
- support for F# records and discriminated unions in the value path
Package
NuGet package id:
PersistedConcurrentSortedList
Quick Start
See QuickStart.fsx for a runnable sample.
let pcsl =
PersistedConcurrentSortedList<string, fstring>(
20,
@"c:\pcsl",
"test",
PCSLFunHelper<string, fstring>.oFun,
PCSLFunHelper<string, fstring>.eFun
)
pcsl.Add("OGC", A [| S "GG" |], 3000) |> ignore
pcsl.Upsert("123456", S "ORZ")
let found, cell = pcsl.TryGetValue("OGC")
Serialization
The library currently supports:
FAkka.ProtoBuf.FSharpFAkka.FsPicklerFAkka.FsPickler.Json
The protobuf path includes the compatibility handling required by the current fCell2<'T> model used in this repository.
Documentation
Additional design and test documents are under doc/.
Development
Build:
dotnet build PersistedConcurrentSortedList.fsproj
Pack:
dotnet pack PersistedConcurrentSortedList.fsproj -c Release
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FAkka.FSharp.Collections.ParallelSeq (>= 10.1.201)
- FAkka.FsPickler (>= 10.1.201)
- FAkka.FsPickler.Json (>= 10.1.201)
- FAkka.ProtoBuf.FSharp (>= 10.0.103.2-dgx)
- FSharp.Core (>= 10.1.201)
- protobuf-net.Core (>= 3.2.56)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on PersistedConcurrentSortedList:
| Package | Downloads |
|---|---|
|
FAkka.Mathnet.Symbolic.withTensorSupported
Package Description |
|
|
FAkka.FSI.Supervisor
Package Description |
|
|
PersistedConcurrentSortedList.IFileSystem
Package Description |
|
|
FAkka.Mathnet.Symbolic
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.1.201.2 | 56 | 4/7/2026 |
| 10.1.201.1-dgx | 152 | 3/17/2026 |
| 10.0.103.2-dgx | 96 | 3/14/2026 |
| 10.0.102 | 321 | 1/20/2026 |
| 10.0.101 | 404 | 12/22/2025 |
| 9.0.27.320 | 239 | 9/11/2025 |
| 9.0.27.319 | 206 | 8/9/2025 |
| 9.0.27.318 | 240 | 7/30/2025 |
| 9.0.27.317 | 580 | 7/21/2025 |
| 9.0.27.316 | 299 | 7/20/2025 |
| 9.0.27.16 | 207 | 7/3/2025 |
| 9.0.27.15 | 202 | 7/3/2025 |
| 9.0.27.14 | 317 | 4/11/2025 |
| 9.0.27.13 | 213 | 4/11/2025 |
| 9.0.27.12 | 202 | 4/6/2025 |
| 9.0.27.11 | 176 | 4/5/2025 |
| 9.0.27.10 | 216 | 4/4/2025 |
| 9.0.27.9 | 222 | 4/4/2025 |
| 9.0.27.8 | 216 | 4/4/2025 |
| 9.0.27.7 | 234 | 4/4/2025 |