Website | Source

DotNext

This library is the core of .NEXT which extends .NET Standard API with

DotNext.Reflection

.NET Reflection is slow because relies on late-bound calls when every actual argument should be validated. There is alternative approach: dynamic code generation optimized for every member call. Reflection library from .NEXT family provides provides fully-featured fast reflection using dynamic code generation. Invocation cost is comparable to direct call. Check Benchmarks to see how it is fast. Additionally, the library provides support of Type Classes. You don't need to wait C# language of version X to obtain this feature.

DotNext.Metaprogramming

This library provides a rich API to write and execute code on-the-fly. It extends C# Expression Tree programming model with ordinary things for C# such as foreach loop, for loop, while loop, using statement, lock statement, string interpolation and even asynchronous lambda expressions with full support of async/await semantics.

DotNext.Unsafe

This library provides a special types to work with unmanaged memory in safe manner:

DotNext.Threading

The library allows you to reuse experience of blocking synchronization with help of ReaderWriteLockSlim, AsyncCountdownEvent and friends in asynchronous code using their alternatives such as asynchronous locks.

DotNext.IO

Extending streams and I/O pipelines with methods for reading and writing typed values including strings asynchronously. Arbitrary character encodings are supported. Now encoding or decoding data using pipes is much easier and comparable with BinaryWriter or BinaryReader.

DotNext.Net.Cluster

Provides rich framework for building clustered microservices based on network consensus and distributed messaging. It includes transport-agnostic implementation of Raft Consensus Algoritm that can be adopted for any communication protocol and high-performance persistent Write Ahead Log suitable for general-purpose usage.

DotNext.AspNetCore.Cluster

Allows to build clustered microservices which rely on network consensus and distributed messaging with ASP.NET Core framework. This library contains HTTP-based implementation of Raft Consensus Algorithm, HTTP-based distributed messaging across cluster nodes, cluster leader detection, automatic redirection to leader node and many other things.

DotNext.Augmentation

.NEXT Augmentations extends compilation pipeline with tricks and optimizations not available in Roslyin Compiler out-of-the-box. It is actually not a library, but IL code weaver implemented as Fody add-in.


Tags: library   language   clr  

Last modified 07 June 2021