Strilanc

May: A functional C# option type
  • 11,713 total downloads
  • last updated 11/29/2012
  • Latest version: 1.0.2
  • may option type maybe
Implements an option type (Strilanc.Value.May<T>) that encourages usage based on pattern matching rather than ForceGetValue. Also includes utility methods for producing, consuming and transforming May<T>. Note on null: May<T> treats null like any other value. May.NoValue is distinct from null, and... More information
Simple Angle Library
  • 1,106 total downloads
  • last updated 11/29/2012
  • Latest version: 1.0.3
  • angle
A simple library for working with directions and rotations in 2d. Provides types for representing facing (Dir), turning (Turn), conversion (Basis) and clamping (Range).
Lifetime (improved CancellationToken)
A small library that implements an improved version of System.Threading.CancellationToken with support for removable registrations, to allow for garbage collection in the presence of long-lived tokens, plus some related utilities. Motivation: cancellation tokens can be the source of memory "leaks",... More information
Linq to Collections
Implements types and extension methods for transforming and implicitly defining instances of the readonly collection interfaces new to .Net 4.5. (The interfaces are IReadOnlyList<T>, IReadOnlyCollection<T>, and IReadOnlyDictionary<K,V>.) For example, the library implements a Select method that... More information
PickleJar
Parse and pack simple binary formats by describing the format as a combination of basic binary elements. A 'jar' is a combination parser/packer. The library includes basic jars, like a jar for big-endian 32-bit integers, as well as combinators that augment jars into more complicated jars, like... More information
Twisted Oak Threading Utilities
A variety of utility classes and methods related to tasks, synchronization contexts, asynchrony, exclusion, and awaiting. Makes tasks queryable and synchronization contexts awaitable. Includes anonymous awaitable types, a void task completion source, a simple one time lock, etc. See the project url... More information