MarsonShine/Books
47.5
Weak · 3 August 2026
6.6k
lines of production code
C#
with Java, Go
2
measurements over time
What this system is
This repository is a comprehensive educational resource and codebase for systems programming and software engineering, primarily focusing on C\# and C++. It provides concrete, runnable examples for advanced language features, concurrency patterns, and performance optimization techniques. The collection also includes foundational examples for Java, Go, and TypeScript, alongside documentation for Kubernetes, shell scripting, and system design interviews.
How it got here
2018–2019 — Concurrency and language feature expansion
32 changes.
This period focused on expanding the codebase with comprehensive examples for C\# concurrency, asynchronous programming, and modern language features, alongside the introduction of Java and TypeScript samples. The work included migrating the documentation site to MkDocs and adding extensive coverage of parallel processing, reactive extensions, and design patterns across multiple projects.
2020–2021 — High-performance .NET and C++ educational examples
40 changes.
This period focused on expanding the repository's educational content, primarily by adding numerous C\# and C++ code samples. The work emphasized high-performance .NET patterns, such as memory management, concurrency, and source generators, alongside foundational C++ and C\# language feature demonstrations.
2022–2023 — Comprehensive language and system programming examples
33 changes.
This period is defined by the addition of extensive educational examples across multiple languages and domains, including C++ (OOP, templates, memory management), C\# (functional programming, diagnostics, SIMD), and system-level programming (Unix, TCP/IP, Kubernetes). The work focuses on providing practical, runnable code for complex concepts like generic programming, memory safety, and distributed systems design.
2024–2026 — Data structures and algorithms implementation
11 changes.
This period focused on implementing and documenting a comprehensive suite of data structures and algorithms, including immutable collections, graph algorithms, and unification logic. The work also involved adding C\# 14 language feature examples and enhancing documentation for both the Rx.NET and .NET Garbage Collector series.
Features
Add C\# 11 required modifier example
Added a new example file demonstrating the C\# 11 \required\ modifier. The code shows how \required\ properties enforce initialization, how the \\[SetsRequiredMembers\]\ attribute interacts with constructors, and how the \new()\ generic constraint behaves with \required\ types.
CSharpGuide/LanguageVersions/11.0 · high confidence
Add C\# 7.2 language feature examples for readonly structs and Span\<T\>
Added C\# 7.2 language feature examples for readonly structs and Span\<T\>. The new file ReadonlyAndRefStructs.cs demonstrates the use of the readonly modifier on structs, including ref readonly returns and in parameters. The new file Spans.cs provides an example of using ReadOnlySpan\<T\> to handle memory slices without value copying.
CSharpGuide/LanguageVersions/7.2 · high confidence
Add C\# 8.0 demo showcasing null-state handling with the null-forgiving operator
A new demo file (practice\_demo.cs) was added to the C\# 8.0 language guide, illustrating how to handle potential null references in constructor initializers. The code demonstrates using the null-forgiving operator (!) to suppress compiler warnings when passing a potentially null value (recipient?.HomeAddress) to a constructor that expects a non-nullable reference, effectively 'lying to the compiler' about nullability as per Jon Skeet's guidance.
CSharpGuide/LanguageVersions/8.0/demo · medium confidence
Add C\# Reactive Extensions (Rx) cookbook examples
The 05ReactiveExtensions directory now includes a complete set of C\# source files demonstrating Reactive Extensions (Rx) patterns. These examples cover converting standard and non-standard .NET events into observable streams, grouping events using Window and Buffer, applying flow control with Throttle and Sample, handling timeouts, and managing execution context with ObserveOn. The addition also includes VS Code launch and task configuration files to support building and debugging the examples.
ConcurrencyInCSharpCookbook/05ReactiveExtensions · high confidence
Add C\# async/await examples and documentation
Added a new C\# project, AsyncInCSharp, containing multiple example implementations and documentation on asynchronous programming patterns. The codebase includes a custom awaitable type (ExampleAwaitable), demonstrations of the Task-based Asynchronous Pattern (TAP), exception handling in async methods, and performance comparisons between synchronous and asynchronous code. Documentation covers compiler transformations, ASP.NET integration, and UI thread considerations.
AsyncInCSharp · high confidence
Add C\# cookbook examples for Rx and TPL Dataflow interoperation
The 07Interoperate directory now includes a complete set of C\# source files demonstrating how to interoperate between Reactive Extensions (Rx) and Task Parallel Library (TPL) Dataflow. New files show how to encapsulate async patterns with Rx Observables, convert Tasks to Observables, and integrate BufferBlock/ActionBlock with observable streams. The entry also adds VS Code launch and build task configurations to support debugging and building the project.
ConcurrencyInCSharpCookbook/07Interoperate · high confidence
Add C\# cookbook examples for TPL Dataflow usage
Added a new C\# example demonstrating the use of the System.Threading.Tasks.Dataflow library. The code illustrates how to create and link TransformBlock instances, handle exceptions via the Completion task, and propagate completion status using DataflowLinkOptions. It also includes examples for dynamic linking, parallel processing with MaxDegreeOfParallelism, and encapsulating custom blocks.
ConcurrencyInCSharpCookbook/04DataFlow · high confidence
Add C\# generics guide with inheritance and composition patterns
Added new C\# guide files demonstrating how to handle non-generic calls to generic classes. The changes introduce a \NoneGenericCallGeneric\ class that shows how to resolve specific generic validators via \IServiceProvider\ using \MakeGenericType\, alongside implementations of \IPolicyValidator\<T\>\ for \LifePolicy\, \HomePolicy\, and \AutoPolicy\. It also includes \GenericInheritance.cs\ and \GenericComposition.cs\ which provide two distinct architectural approaches—inheriting from a generic base class versus using composition with a bridge class—to solve the problem of validating non-generic policy interfaces.
CSharpGuide/generics · high confidence
Add C++ class implementation exercises and examples
Added a new set of C++ source files in the CPPPrimer/src/07-class directory, including header and implementation files for a Sales\_data class (exercises 7-1 through 7-6), a Screen class with inline and mutable members (7-3, 7-23, 7-24), a Person class (7-15, 7-22, 7-23), and a Debug class (7-53). The changes introduce class definitions, constructors, member and non-member functions, friend declarations, and usage examples in main.cpp.
CPPPrimer/src/07-class · high confidence
Add ETL demo application with event logging and console output
Added a new ETL demo application in the WHPerformanceDotNet/src/EtlDemo directory. The application introduces an EventSource (Events.cs) that logs processing start/finish and prime number findings. A BaseListener (BaseListener.cs) and its concrete implementation ConsoleListener (ConsoleListener.cs) are added to capture and display these events on the console. The Program.cs entry point initializes the event source and triggers sample events.
WHPerformanceDotNet/src/EtlDemo · high confidence
Add FileReadingPooledValueTaskSource implementation
A new C\# class, FileReadingPooledValueTaskSource, has been added to demonstrate a custom implementation of the IValueTaskSource interface. This file provides a concrete example of how to manage asynchronous state, handle continuations, and manage the lifecycle of a ValueTask-based operation, serving as a reference for advanced async patterns.
CSharpGuide/valuetask · high confidence
Add Java concurrency examples covering threads, executors, and exception handling
Added a suite of Java concurrency examples in the \ThinkingInJava/src/concurrency\ directory. The new files demonstrate fundamental threading concepts, including basic thread creation and execution (\BasicThreads\, \MoreBasicThreads\), thread joining (\Joining\), and thread variations using inner classes (\ThreadVariations\). The update also introduces the \ExecutorService\ framework with examples for cached thread pools (\CachedThreadPool\), callable tasks with results (\CallableDemo\), and thread priorities (\SimplePriorities\). Additionally, it covers exception handling in concurrent contexts, showing naive approaches (\NaiveExceptionHandling\, \ExceptionThread\) and proper uncaught exception handling via custom \Thread.UncaughtExceptionHandler\ (\ExceptionUnCaughtException\).
ThinkingInJava/src/concurrency · high confidence
Add SIMD vectorization demo with hardware-accelerated and scalar fallbacks
The CSharpGuide/simd-vector-demo area now includes a complete demonstration of SIMD (Single Instruction, Multiple Data) vectorization in C\#. The new Extensions.cs provides a Sum method that automatically utilizes hardware-accelerated vector operations (Vector128, Vector256, and Vector512) when available, falling back to scalar operations for remaining elements. The VectorOperator.cs class demonstrates various vector operations including ASCII validation, widening/narrowing, and element search with multi-vector-size support. The Program.cs file showcases vector comparisons, conditional selection, shuffle operations, and type conversions. This addition provides a practical example of optimizing numerical computations using hardware intrinsics in .NET.
CSharpGuide/simd-vector-demo · high confidence
Add Sales\_data and Sales\_item library headers
New header files for the C++ Primer examples are introduced: Sales\_data.h and Sales\_item.h. These headers define the Sales\_data and Sales\_item classes, each providing member functions (such as isbn, combine/operator+=, avg\_price) and non-member operators (addition, comparison, stream I/O) to support the book data model used in the primer.
CPPPrimer/src/libs · high confidence
Add TypeScript source files and type declarations for advanced language features
The repository now includes a comprehensive set of TypeScript source files and declaration files in the \ts/src\ and \ts/types\ directories. These files demonstrate and implement advanced TypeScript capabilities, including type assertions, generics, enums, tuples, and union types. The addition covers class inheritance, interface implementations, and global type extensions, alongside declaration files that define types for external libraries like jQuery and custom modules (foo, boo, aoo, poo).
ts/src · high confidence
Add beginner C++ exercises and examples
Added a collection of introductory C++ source files in the \CPPPrimer/src/01\ directory. These include basic program structures (\main.cpp\, \comment.cpp\), input/output operations (\iomain.cpp\), control flow examples using \for\ and \while\ loops (\1-4-2-for.cpp\, \1-4-while.cpp\, \1-10.cpp\, \1-11.cpp\, \1-12.cpp\, \1-9.cpp\), an \if\ statement example (\1-4-4-if.cpp\), and various exam-style exercises (\1-3.cpp\ through \1-19.cpp\) demonstrating syntax, operators, and common pitfalls.
CPPPrimer/src/01 · high confidence
Add cancellation and timeout examples for async, parallel, and reactive code
The cookbook now includes new C\# source files demonstrating how to implement cancellation and timeout controls across different concurrency patterns. This includes polling-based cancellation for loops, passing CancellationToken to async methods and Parallel/PLINQ operations, handling timeouts via CancellationTokenSource, and managing cancellation in Reactive Extensions (Rx) streams and callbacks. The addition also includes VS Code launch and task configuration files to support running these examples.
ConcurrencyInCSharpCookbook/09Cancellation · high confidence
Add chapter 6 source code for data structures and algorithms
New source files are added to the chapter 6 directory, introducing a functional \Deque\ implementation and classes for generating combinations and permutations. The \Combinations\ class provides algorithms for generating combinations (including lexicographic and recursive approaches) and extension methods for selecting items. The \Permutations\ class implements several permutation generation algorithms, including lexicographic, Fisher-Yates-based, changes-based, and Johnson-Trotter approaches. Helper extensions for string formatting and factorial calculation are also included.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 6 · high confidence
Add concurrency and synchronization primitives
The cookbook introduces new examples for managing concurrency in C\#. This includes an asynchronous lock (AsyncLock) and an asynchronous semaphore (AsyncSemaphore) using the Nito.AsyncEx library, alongside synchronous blocking locks (BlockLock) and signals (BlockSemaphore) using standard .NET synchronization primitives like ManualResetEventSlim and AutoResetEvent. Additionally, a new Throttling class demonstrates rate-limiting techniques using Dataflow, PLINQ, and SemaphoreSlim to control parallelism and memory usage.
ConcurrencyInCSharpCookbook/11Sync · high confidence
Add concurrency collection examples including async queue, blocking collections, and immutable types
The cookbook now includes new examples for concurrent data structures. This adds an AsyncQueue using BufferBlock for asynchronous producer/consumer patterns, BlockingCollections demonstrating thread-safe queues, stacks, and bags, and immutable collections (lists, sets, stacks, and queues) that provide thread-safe, read-only alternatives to standard collections.
ConcurrencyInCSharpCookbook/08Collections · high confidence
Add concurrency utility classes for async data binding, lazy initialization, and shared resources
Added new classes in the ConcurrencyInCSharpCookbook/13PracticalSkills directory to demonstrate practical concurrency patterns. This includes AsyncDataBind for binding asynchronous tasks to UI elements, AsyncLazy for thread-safe asynchronous lazy initialization with retry and execution context options, InitializeShareResources showing how to manage shared resources using both synchronous and asynchronous lazy patterns, ParameterStatusInConcurrent providing a CallContext-like implementation using AsyncLocal for passing state across threads, and RxLazyGetValue demonstrating deferred execution with Rx's Observable.Defer.
ConcurrencyInCSharpCookbook/13PracticalSkills · high confidence
Add example for handling exceptions in async void methods
Introduces a new example in the concurrency cookbook that demonstrates how to handle exceptions thrown by async void methods. The change adds C\# code using Nito.AsyncEx's AsyncContext to catch and handle exceptions that would otherwise be lost in an async void context, alongside an ICommand interface and implementation to illustrate the pattern.
ConcurrencyInCSharpCookbook/ThreadBasic · medium confidence
Add memory-mapped file handling and type conversion utilities
Introduces a new C\# example demonstrating memory-mapped file operations, including creating memory-mapped files, accessing views, and overlaying structs in memory. The change also provides utility functions for handling endianness (big/little) and a generic type conversion helper that safely converts between primitive types using System.Runtime.CompilerServices.Unsafe and System.IO.MemoryMappedFiles.
CSharpGuide/memory-mapped-files · high confidence
Add metric demonstration examples for .NET diagnostics
The CSharpGuide/diagnostics/MetricDemo location now includes five new C\# source files (Program.cs through Program5.cs) that serve as runnable examples for using the System.Diagnostics.Metrics API. These demos illustrate how to create and record various metric types—including counters, histograms, and observable gauges—using the .NET Meter class, providing users with concrete code templates for implementing application performance and operational metrics.
CSharpGuide/diagnostics/MetricDemo · high confidence
Add performance optimization examples for arrays, serialization, and string handling
The CSharpGuide/performance area now includes new C\# source files demonstrating high-performance coding patterns. ArrayChunkOfStruct.cs shows how to use ref returns and MemoryMarshal.GetArrayDataReference to avoid array bounds checks and data copying. SerializationPerformance.cs provides a model for System.Text.Json serialization. Strings.cs and Program.cs demonstrate optimized string manipulation using QueryStringEnumerable and Span-based parsing to reduce memory allocations, while ZeroingMemoryAllocatedByStackalloc.cs illustrates safe stackalloc usage. These files serve as practical examples for improving .NET application performance.
CSharpGuide/performance · high confidence
Add shell script examples and Bash usage documentation
Added a series of shell script examples covering basic usage, input/output, parameter handling, conditional logic, loops, and file permission checks, alongside documentation on Bash usage and debugging techniques.
ShellScript · high confidence
Add task scheduling examples for parallel execution and dataflow synchronization
The cookbook adds new C\# examples demonstrating how to control task execution using custom schedulers. This includes limiting the total parallel degree for parallel loops using ConcurrentExclusiveSchedulerPair, implementing dataflow synchronization via ExecutionDataflowBlockOptions, and showcasing the use of synchronization context schedulers and exclusive/concurrent scheduler pairs for controlling concurrency and flow control.
ConcurrencyInCSharpCookbook/12Schedule · high confidence
Added .NET 6 Web demo with custom middleware and startup filter
A new .NET 6 Web demo project has been added, featuring a custom \IStartupFilter\ and a corresponding \DemoMiddleware\ that manipulates the request pipeline and service provider features. The demo includes a \MyHostingHostBuilderExtensions\ helper for configuration and a \Program.cs\ entry point that demonstrates the startup process. Configuration files for development and default settings, along with launch settings, are also included.
CSharpGuide/Net6WebDemo · medium confidence
Added .NET 8 feature examples and fixes
Added new example files demonstrating .NET 8 features, including collection expressions (with fixes for interface support), SHA-3 encryption, metrics with tags, frozen types, search value types, XxHash, TimeProvider, and JSON serialization improvements. Also added a solution file and supporting enum.
CSharpGuide/net8-guide · medium confidence
Added .NET samples for parallel and asynchronous programming
New example projects were added to demonstrate high-performance .NET coding patterns. The AsyncProgram project showcases asynchronous task management, including task partitioning, cancellation via CancellationToken, and concurrent task tracking. The Parallel project demonstrates parallel execution using Parallel.For and Parallel.ForEach, including the use of Partitioner for optimized loop distribution and loop state control (Break/Stop) for early termination.
WHPerformanceDotNet/src/AsyncProgram · high confidence
Added C source and assembly files for CSAPP exam chapter 3
New files were added to the CSAPP/exam/chapter3 directory, including main.c, mstore.c, and mstore.s. These files provide C source code and corresponding assembly code for a 'multstore' function, supporting the study of assembly code as referenced in the commit message.
CSAPP/exam · medium confidence
Added C source files for APUE chapter examples
Added demonstration C source files for the APUE (Advanced Programming in the Unix Environment) book examples, covering chapters 1, 10, 11, 12, 14, 15, 16, and 17. These files implement various Unix system programming concepts including file I/O, process control, signals, threads, synchronization primitives, memory mapping, and network sockets.
APUE/src · high confidence
Added C\# 7.0 language feature examples
Added new C\# 7.0 language feature examples including discards, value tuples, and ValueTask usage, along with a custom ITuple interface implementation to demonstrate tuple-related functionality.
CSharpGuide/LanguageVersions/7.0, CSharpGuide/LanguageVersions/8.0 · high confidence
Added C\# 8 concise syntax and C\# 7 deconstruction/pattern matching examples
The CSharpInDepth project was restructured to include new chapters demonstrating modern C\# features. This includes Chapter 14, which showcases C\# 8 concise syntax such as numeric literal underscores and binary literals, as well as Chapter 12, which covers C\# 7 deconstruction and pattern matching. The solution file was updated to reference these new project structures.
CSharpInDepth · high confidence
Added C\# 9.0 language feature examples and OpenAPI demo
Added new C\# 9.0 language feature examples, including pattern matching and record types for value-based equality and immutability. Additionally, an OpenAPI demo was added to the project, featuring a minimal API endpoint for weather forecasts with OpenAPI metadata configuration.
CSharpGuide/LanguageVersions/9.0 · high confidence
Added C\# concurrency cookbook solution with 11 project modules
The ConcurrencyInCSharpCookbook solution file was added, establishing a Visual Studio solution that organizes 11 distinct C\# projects. These projects cover a range of concurrency and asynchronous programming topics, including basic threading, parallel processing (Parallel.Invoke/Aggregate, Task.WhenAll/WhenAny), data flow, reactive extensions (Rx), unit testing, interoperation, immutable collections, cancellation handling, synchronization, scheduling, and practical skills. This structure supports learning and demonstrating various concurrent and asynchronous patterns in C\#.
ConcurrencyInCSharpCookbook · high confidence
Added C\# diagnostics demos for metrics and event counters
The CollectionMetricDemo area now includes new files demonstrating how to implement and consume metrics in C\#. This includes EventCounter sources for tracking request rates, processing times, and lock contention, as well as an EventListener for reading event counter data. Additionally, the demo showcases the modern System.Diagnostics.Metrics API via a MeterListener and an OpenTelemetry-based Prometheus exporter for HTTP metrics scraping.
CSharpGuide/diagnostics/CollectionMetricDemo · high confidence
Added C\# distributed tracing demos
Added two new sample applications for demonstrating distributed tracing with OpenTelemetry. The console app (DistributedTraceDemo) configures a tracer provider with a console exporter and creates activity spans with tags and events. The web app (DistributedTraceWebDemo) is an ASP.NET Core Razor Pages application that integrates OpenTelemetry tracing for ASP.NET Core and exports traces to the console, along with standard error and home pages.
CSharpGuide/diagnostics/DistributedTraceDemo, CSharpGuide/diagnostics/DistributedTraceWebDemo, CSharpGuide/diagnostics/DistributedTraceWebDemo/wwwroot · high confidence
Added C\# exception handling example demonstrating catch-when execution order
Added a new C\# example in the CSharpGuide/exceptionhandle directory that demonstrates a common trap in exception handling: the execution order of catch blocks with when clauses. The example shows how a catch block with a when condition is evaluated before the try block's finally block, illustrating a potential pitfall when dealing with high-trust code that impersonates an admin. The entry includes the solution file and the Program.cs file containing the demonstration code.
CSharpGuide/exceptionhandle · high confidence
Added C\# language feature examples and project configuration
Added a new CSharpGuide project structure including a solution file and build properties that enable C\# 10.0 language features and nullable reference types. Added demonstration code for the 'when' keyword in exception handling and switch statements, the 'is' pattern matching operator, and various utility classes for null handling and random number generation.
CSharpGuide · high confidence
Added C\# serialization examples using System.Text.Json
Added new C\# files demonstrating JSON serialization and deserialization using the System.Text.Json namespace. The changes introduce an IProxyRequest interface and an IndexRequest class for writing JSON via Utf8JsonWriter, alongside a JsonDocumentOps class that provides concrete examples of parsing JSON strings, handling comments, and iterating through JSON elements to calculate statistics.
CSharpGuide/serializes · high confidence
Added C\# thread channel demo for producer-consumer patterns
A new C\# example file, ThreadChannelDemo.cs, has been added to the CSharpGuide/threads directory. It demonstrates the System.Threading.Channels API to implement producer-consumer patterns, including single/multiple producer and single consumer scenarios.
CSharpGuide/threads · high confidence
Added C\#7 deconstruction and pattern matching examples
Added new C\#7 feature demonstrations in the Chapter12\_Deconstruction\_PatnerMatching project. The changes include DeconstructionExtensions.cs, which provides extension methods for DateTime deconstruction, and PatnerMatching.cs, which implements constant, type, and var pattern matching scenarios, including switch expressions with guards. The Program.cs file demonstrates tuple deconstruction, custom class deconstruction via Deconstruct methods, and various pattern matching use cases such as type checking and conditional pattern matching.
_CSharpInDepth/Chapter12\_Deconstruction\PatnerMatching · high confidence
Added C++ OOP examples for inheritance, polymorphism, and text querying
Added a set of C++ header and source files in the 15-oop directory to demonstrate object-oriented programming concepts. This includes a base/derived class hierarchy (Base\_Derived.h), a discount quote system with polymorphism (Quote.h, Disc\_quote.h, Bulk\_quote.h), a text query system (Query.h, Query\_Derived.h), and a demonstration of copy/move semantics in derived classes (exams/15-26.h).
CPPPrimer/src/15-oop · high confidence
Added C++ Primer Chapter 3 exercises and examples for string and vector operations
The \CPPPrimer/src/03\ directory now includes a comprehensive set of C++ source files demonstrating string and vector usage. These files cover reading input, iterating over characters, modifying strings, comparing string values, and initializing or populating vectors. Specific examples include converting characters to uppercase, removing punctuation, comparing C-style and std::string values, and counting grade scores into a vector. The changes add new educational code samples rather than modifying existing product logic.
CPPPrimer/src/03 · high confidence
Added C++ collection and string manipulation examples
Added new C++ example files in the 09-collection directory, including 9-5-string.cpp for string construction and conversion, 9-13.cpp for list-to-vector conversion, 9-3.cpp for vector iteration, 9-41.cpp for string capacity and character conversion, 9-43.cpp and 9-44.cpp for string replacement, 9-47.cpp for string search operations, 9-50.cpp for string-to-number conversion, and 9-51.cpp for date parsing.
CPPPrimer/src/09-collection · high confidence
Added C++ examples for function objects, function pointers, and type conversion
Added new C++ source files in the 14-operators-converter directory to demonstrate callable objects, function pointers, and type conversion. The changes include a callable struct (absInt) that overloads the function-call operator, a demonstration of std::function and std::bind with standard library function objects, and examples of type conversion via operator overloading and implicit conversion. These files provide practical examples of how to use function objects, function pointers, and type conversion in C++.
CPPPrimer/src/14-operators-converter · high confidence
Added C++ examples for operator overloading and memory management
Added a series of C++ source files in the CPPPrimer/13-operator-override directory to demonstrate key C++ concepts. These include implementations of the copy assignment operator (copy\_assign.cpp), move constructors and assignment operators (has\_ptr\_move\_constructor.cpp), and reference counting (has\_ptr\_custom\_refcount.cpp). The changes also introduce a Message/Folder class hierarchy with deep copy and move semantics (folder\_message.h), a StrVec container with custom memory management (strVec.h), and various exam files (13-8.cpp through 13-16.cpp) illustrating object lifecycles, value categories, and copy/move semantics.
CPPPrimer/src/13-operator-override · high confidence
Added C++ examples for type conversion and memory representation
Three new C++ source files have been added to the CSAPP/cpps directory. hellowrold.cpp provides a basic 'Hello World' example using C++ streams and vectors. showbytes.cpp demonstrates how to inspect the byte-level representation of integers, floats, and pointers. typeconvert.cpp illustrates signed to unsigned short type conversion.
CSAPP/cpps · high confidence
Added C++ exercises for basic types, scope, and pointers
Added a series of new C++ exercise files in the \CPPPrimer/src/02/exams\ directory. These files demonstrate fundamental C++ concepts including basic built-in types, variable declarations, scope rules (including nested and global scope), pointer and reference usage, const correctness, and type handling. The examples cover integer and floating-point arithmetic, string and character literals, pointer assignment and dereferencing, and the use of \decltype\ and \auto\ for type deduction.
CPPPrimer/src/02/exams · medium confidence
Added C++ function examples and templates
Added a new set of C++ source files in the 06-function directory that demonstrate various function concepts, including local static variables, function declarations, separate compilation, function pointers, inline and constexpr functions, function overloading, recursion, and array references. The addition also includes a header file with a template function and its corresponding implementation and main files to illustrate separate compilation.
CPPPrimer/src/06-function · high confidence
Added C++ generic template examples for type inference and function pointers
Added new C++ source files in the 16-generic-template directory that demonstrate generic programming concepts. These include examples of template type inference, higher-order functions, and function pointers. Specific additions cover forwarding references with std::forward, variadic templates for recursive printing, template specializations, and explicit template instantiation controls.
CPPPrimer/src/16-generic-template · medium confidence
Added C++ generic template exercises and header
Added a set of C++ template exercises in the exams directory, including a generic find function in exam\_template.h, and various template implementations such as the Blob and BlobPtr classes, a generic Screen class, a custom unique\_ptr, debug\_rep functions, and template specializations for hash functions and string counting.
CPPPrimer/src/16-generic-template/exams · high confidence
Added C++ map and set usage examples and exercises
New C++ source files and test cases were added to demonstrate the use of associative containers. This includes a main example for map and set operations, a word transformation demo, and several exercise files covering map usage, word counting, and vector mapping.
CPPPrimer/src/11-associate-container · high confidence
Added C++ type system examples covering conversions, references, pointers, and type deduction
Added new C++ source files in the 02 directory that demonstrate fundamental type handling: type conversions and signed/unsigned interactions (2-1-convert.cpp); variable initialization, scope, and naming rules (2-2.cpp); references, pointers, and void pointers (2-3.cpp); const correctness and expressions (2-4.cpp); type aliases, auto, and decltype (2-5.cpp); and a Sales\_data usage example (2-6.cpp). These changes provide concrete code examples for learning C++ basic built-in types, variable declarations, scope, type conversions, pointers, references, and type deduction.
CPPPrimer/src/02 · high confidence
Added CSAPP educational examples for opcodes, linking, and algorithms
Added new C and C++ source files and project configurations for the CSAPP course materials. This includes \03opcode\ for basic instruction examples, \05opcode\ for vector optimization techniques, \07link\ for linker and symbol table examples, \09opcode\ for memory mapping, and \algor\ for algorithmic examples. Additionally, a \mathlib\ project was added with a commented-out export function, and an \.editorconfig\ file was introduced for code style consistency.
CSAPP/cpps/csapp · high confidence
Added DynamicLoadExecutor to enable runtime code generation and dynamic method invocation
A new DynamicLoadExecutor project has been introduced, providing a mechanism to dynamically load assemblies and generate IL-based delegates for object creation and method invocation. This allows for runtime code generation and optimized method calls via DynamicMethod and IL generation, specifically targeting the DynamicLoadExtension.dll for dynamic loading and execution.
WHPerformanceDotNet/src/DynamicLoadExecutor · high confidence
Added DynamicLoadExtension library with template-based extension support
A new DynamicLoadExtension library has been added, providing a template-based approach for dynamic loading. This includes an Extension class for core logic, a Templates class that facilitates IL Generation and method invocation, and a Program entry point, enabling users to utilize this new dynamic loading capability.
WHPerformanceDotNet/src/DynamicLoadExtension · medium confidence
Added EventSource demo project with multiple tracing implementations
The CSharpGuide/diagnostics/EventSourceDemo directory now contains a complete demo project for .NET diagnostics. It includes several custom EventSource implementations (ActivityIdEventSource, AdvancedCustomizedEventSource, CustomEventSource, MyLoggingEventSource, ParallelActivityIdEventSource, and OptimizedEventSource) that demonstrate different tracing patterns, including activity IDs and parallel execution tracking. The project also provides a DiagnosticSource quick-start example, a console-based EventListener for output, and supporting constant classes for tasks and keywords.
CSharpGuide/diagnostics/EventSourceDemo · high confidence
Added Full GC Notification Demo Application
A new console application was added to demonstrate the use of .NET's garbage collection notification APIs. The program registers for full GC notifications and runs a background thread to monitor for GC approaching and completion events, allowing the application to detect when a full garbage collection is about to occur and to handle the completion of the GC cycle.
WHPerformanceDotNet/src/FullGCNotification · high confidence
Added GCPool object pooling implementation
Added a new GCPool library that provides an object pooling mechanism to reduce garbage collection pressure. The change introduces an IPoolableObject interface for pooled items, a PoolManager class that manages object lifecycles and reuse via a stack-based cache, and a sample MyPoolObject implementation. Users can now borrow and return objects to the pool to improve memory efficiency.
WHPerformanceDotNet/src/GCPool · high confidence
Added Go implementations for multiple design patterns
The DesignPattern/DesignPatternGo directory now includes new Go source files implementing the Abstract Factory, Adapter, Command, Decorator, Function Option, Mediator, Memento, Observer, Prototype, Proxy, Singleton, State, Strategy, and Visitor patterns. These additions provide concrete examples of each pattern, such as the \abstractFactorys\ package for creating families of related objects, the \adaptors\ package for interface conversion, and the \strategys\ package for interchangeable algorithms.
DesignPattern/DesignPatternGo · high confidence
Added IO exercise examples for C++ Primer
Added new C++ source files demonstrating input/output operations: 8-1.cpp shows reading from standard input with state checking, and 8-7.cpp demonstrates file-based processing of sales data using ifstream and ofstream. These examples illustrate standard stream usage and file handling in C++.
CPPPrimer/src/08-io · high confidence
Added Java Hello World example and project README
A new Java project 'ThinkingInJava' was added, containing a basic 'Hello World' example class and a README file that identifies the project as 'Java 编程思想' (Thinking in Java) for use in VSCode.
ThinkingInJava · high confidence
Added Java enum examples and utility classes
Added a suite of Java source files in the \enumerated\ package to demonstrate various enum features, including basic enums, enums with methods, switch statements, and \EnumSet\/\EnumMap\ usage. The update also includes utility classes (\Enums\, \Generator\, \CollectionData\, \Print\) to support these examples.
ThinkingInJava/src/enumerated · high confidence
Added Java source files for design patterns and concurrency examples
Added new Java source files in the \EffectiveJava\ project to demonstrate design patterns and concurrency concepts from 'Effective Java'. This includes \BuilderPattern.java\ for the builder pattern, \StaticFactorier.java\ for static factory methods, and \MyObservableSet.java\ with \SetObserver.java\ to illustrate thread-safe observer patterns. Additionally, \ForwardingSet.java\ provides a reusable composition-based set implementation, while \Period.java\ demonstrates immutability and defensive copying. The \Program.java\ file contains a concurrency example using \ExecutorService\ to handle set modifications safely. Configuration files for VS Code and a README were also added to support the Java development environment.
EffectiveJava · high confidence
Added Kubernetes workload and configuration examples
Added example YAML and shell scripts for Kubernetes batch processing and stateful applications. This includes parallel and standard Job configurations (batch-calculate-parallel.yaml, batch-calculate.yaml, batch-job-template.yaml, batch-create-job.sh) demonstrating task execution and parallelism settings. Additionally, files for a MySQL StatefulSet cluster (mysql-cluster-configmap.yaml, mysql-cluster-service.yaml) and an Nginx StatefulSet (nginx-statefulset.yaml) were added, alongside a Deployment example (nginx-deployment.yaml).
Kubernetes · high confidence
Added NuGet configuration and solution file for the high-performance .NET code samples
The repository now includes a NuGet.Config file that configures package sources for the main NuGet.org feed as well as the Roslyn and Roslyn-Analyzer feeds from MyGet. A new solution file, writehighperformancedotnetcode.sln, has been added, defining the build structure for the project. This solution groups the various high-performance .NET code samples—including AsyncProgram, FullGCNotification, GCPool, HighPerformanceIOProgram, LockFreeWithInterlocked, MomeryAllocation, Parallel, GenericOptimization, TPLDataflow, DynamicLoadExtension, DynamicLoadExecutor, EtlDemo, and the SampleCodeAnalyzer suite—into a single buildable solution.
WHPerformanceDotNet/src · high confidence
Added TCP/IP example implementations for I/O models, timers, and synchronization
Added new example files in the TCPIP/example directory demonstrating various networking and concurrency patterns. This includes a basic epoll-based server (10-1.c), a server with timer management using a sorted linked list (11-3.cpp, lst\_timer.h), a high-performance time wheel (11-5.cpp), and a min-heap based timer (11-6.cpp). Additionally, the diff introduces examples for zero-copy I/O using splice (6-6.c, 9-6.c, 9-7.c), non-blocking connect with select (9-5.c), one-shot epoll events (9-4.c), shared memory chat server (13-4.cpp), and synchronization primitives like semaphores and mutexes (14-1.cpp, 14-2.cpp).
TCPIP/example · high confidence
Added TypeScript type assertion, declaration, and utility modules
Added new TypeScript modules in the \ts/lib\ directory to demonstrate and support various language features. This includes \TypeAssertion\ for handling type assertions on union types, \anyType\ for \any\ type usage, \declarefile\ for global declarations (including jQuery and enums), \extensionGlobalVarious\ for interface extension, \fiveType\ for basic JavaScript types, \function\ for function signatures and default/remaining parameters, \hello\ for simple string handling, \interface\ for object shape definitions, and \uniontypes\ for union type support. These files provide the underlying logic and type definitions for these capabilities.
ts/lib · high confidence
Added annotation-based use case tracking and database constraint definitions
Users can now annotate methods with @UseCase to track requirements and validate them via a reflection-based tracker, while also gaining new @DBTable, @SQLString, and @Constraints annotations to define database schema constraints on classes and fields.
ThinkingInJava/src/annotations · high confidence
Added async/await implementation examples
Added two new C\# files in the CSharpGuide/async directory to demonstrate asynchronous programming patterns. AsyncLocalViaThreadLocal.cs compares AsyncLocal and ThreadLocal behavior in async methods, while StockPrices.cs provides a manual state-machine implementation of an async method to illustrate how the compiler transforms async code.
CSharpGuide/async · high confidence
Added binary term unification implementation
Introduced a new C\# LINQ script (chapter10.linq) that implements a binary term unification algorithm. The file defines core data structures including BinTerm, Constant, Hole, and Symbol classes, along with a Substitution dictionary to manage variable bindings. It includes the Unify method implementing Robinson's algorithm to find a substitution that makes two binary terms equal, supporting pattern matching and type inference scenarios.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 10 · high confidence
Added comprehensive documentation for Rx.NET covering operators, scheduling, and theoretical foundations
Added a new documentation suite for Rx.NET, including a README with a table of contents, guides on usage, disposables, and algebraic underpinnings (monads, category theory), as well as detailed explanations of key types, filtering, transformation, aggregation, partitioning, combination, scheduling, timing, error handling, and publishing operators. The documentation also includes visual aids (SVG marbles) and an appendix contrasting classic IO streams with Rx's approach.
RxNet · high confidence
Added concurrency exercise examples
New Java source files have been added to the concurrency exercise directory, providing examples of basic thread usage, the Runnable interface, ExecutorService usage, daemon threads, and Fibonacci calculation. These files demonstrate fundamental concurrency concepts in Java.
ThinkingInJava/src/excs · high confidence
Added debugging and build configuration for C\# chapters
Added .vscode/launch.json and .vscode/tasks.json files to CSharpInDepth/Chapter06, CSharpInDepth/Chapter10\_Extension, and CSharpInDepth/Chapter\_3\_Generic. These files configure the Visual Studio Code debugger (launch and attach configurations) and the build task for each respective chapter, enabling users to run and debug the C\# code directly from the IDE.
_CSharpInDepth/Chapter06, CSharpInDepth/Chapter10\_Extension, CSharpInDepth/Chapter\_3\Generic · high confidence
Added deque implementation and supporting code for Chapter 3
A new \Deque\<T\>\ implementation is introduced in Chapter 3, providing a double-ended queue data structure with \PushLeft\, \PushRight\, \PopLeft\, and \PopRight\ operations. The change includes the core \Deque.cs\ file containing the deque logic and internal node records, an \IDeque\<T\>\ interface, extension methods for bulk operations, and a \Program.cs\ demo. This adds a new capability to work with double-ended queues in the codebase.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 3 · high confidence
Added documentation preparation hook
A new Python script, hooks/prepare\_docs.py, has been added to automate the preparation of MkDocs documentation. This hook handles copying source markdown files to a generated directory, resolving placeholder links, and extracting titles from markdown headers to support the .NET Garbage Collector series documentation.
hooks · high confidence
Added dynamic code generation benchmarks for method invocation and object creation
New source files have been added to the DynamicGenerateCode and DynamicGenerateExecutor projects. The DynamicGenerateCode project now includes an Extension class and Templates for generating code, while the DynamicGenerateExecutor project introduces a benchmarking program that compares the performance of direct method calls, reflection-based invocation, and dynamically generated delegates using System.Reflection.Emit. This allows users to observe the performance differences between standard reflection and dynamic code generation.
WHPerformanceDotNet/src/DynamicGenerateCode, WHPerformanceDotNet/src/DynamicGenerateExecutor · high confidence
Added dynamic memory allocation and smart pointer examples
Added a new set of C++ source files in the dynamic memory allocation directory, demonstrating modern C++ memory management. The changes include examples of raw pointer usage with \new\/\delete\, \std::unique\_ptr\ for automatic array cleanup, and \std::shared\_ptr\ with custom deleters for connection management. The update also introduces a \StrBlob\ class that uses \std::shared\_ptr\ for shared ownership of a string vector, along with a \WeakStrBlob\ iterator implementation. Additionally, a \TextQuery\ class is added to demonstrate dynamic memory allocation for storing file content and tracking word occurrences.
CPPPrimer/src/12-dynamic-allocate-momery · high confidence
Added generic optimization benchmarks and fast activation implementations
Added a new benchmark suite (GenericConstraintBenchmark) and supporting classes (FastActivator, DynamicModuleLambdaCompiler, NodeFactory) to compare the performance of different object creation strategies in .NET. This includes measuring the overhead of standard generic constraints, Activator.CreateInstance, delegates, expression trees, and dynamic IL emission, providing data to optimize generic type instantiation.
WHPerformanceDotNet/src/GenericOptimization · high confidence
Added high-performance I/O and threading examples
A new program file was added to demonstrate asynchronous file reading using Task-based I/O and illustrates thread-safety patterns for concurrent list updates, including both locked and unlocked approaches to shared object modification.
WHPerformanceDotNet/src/HighPerformanceIOProgram · high confidence
Added implementations for Bridge, Chain of Responsibility, Decorator, Proxy, and Visitor design patterns
The project now includes new source files implementing several classic design patterns. The Bridge pattern is represented by handset brand and software classes; the Chain of Responsibility pattern by manager hierarchy classes; the Decorator pattern by clothing and person classes; the Proxy pattern by gift-giving classes; and the Visitor pattern by person and action classes. These additions provide new structural examples within the application.
DesignPattern, DesignPattern/DesignPattern · high confidence
Added lexer and parser components for expression analysis
Added new Java classes in the \dragonbook/src\ directory to support lexical and syntactic analysis of expressions. This includes a \Lexer\ and associated token classes (\Num\, \Rel\, \Token\, \Word\, \Tag\) in the \lexer\ package, a \Parser\ class for expression parsing, and symbol environment classes (\Env\, \Symbol\) in the \symbols\ package. These additions provide the foundational components for converting infix expressions to postfix notation.
dragonbook/src · high confidence
Added lock-free and async concurrency primitives
The LockFreeWithInterlocked area now includes new implementations for thread-safe data structures and synchronization. A lock-free stack using Interlocked operations is provided, alongside an async lock wrapper using SemaphoreSlim. Additionally, a pattern for high-performance thread-safe updates via volatile dictionary swapping is included, and the main program demonstrates thread-local random number generation for parallel operations.
WHPerformanceDotNet/src/LockFreeWithInterlocked · high confidence
Added memory allocation and performance optimization examples
Added a new 'MomeryAllocation' module containing various C\# code examples demonstrating memory management and performance optimization techniques. This includes a 'HybirdCache' using WeakReference for object caching, a 'PoolManager' for object pooling, and classes demonstrating the use of 'Span\<T\>' to avoid memory allocation, 'ref' returns to avoid value copying, and 'ref' returns to avoid boxing. The module also includes classes for avoiding finalizers, handling delegate overhead, and examples for WinDbg analysis.
WHPerformanceDotNet/src/MomeryAllocation · high confidence
Added new design pattern implementations and documentation
Added implementations for the Bridge, Builder, Chain of Responsibility, Decorator, Facade, Factory, Memento, Observer, Proxy, and Specification patterns within the DesignPatternCore module. This includes new C\# classes and interfaces for each pattern, along with corresponding README documentation files explaining the concepts and usage examples.
DesignPattern/DesignPatternCore · high confidence
Added parallel programming examples for .NET
Introduced new C\# code and documentation for the 'ConcurrencyInCSharpCookbook' section, demonstrating parallel processing techniques. The changes include examples for \Parallel.Invoke\ with cancellation support, \Parallel.ForEach\ and \Parallel.Aggregate\ for data aggregation, and \Task\ management using \Task.WaitAll\ and \TaskCreationOptions.AttachedToParent\. The accompanying README explains the usage of these APIs, including PLINQ for parallel LINQ operations and task synchronization.
ConcurrencyInCSharpCookbook/03ParallerBasic · high confidence
Added placeholder text files to TPLDataflow
Added new text files (0001.txt, 0001\_1.txt, 0002.txt, 00022.txt) to the TPLDataflow directory. These files contain placeholder or test data, likely for performance testing or internal reference, as indicated by the commit message 'feat: tpl dataflow deep understanding' and the repetitive, non-functional content of the files.
WHPerformanceDotNet/src/TPLDataflow · low confidence
Added source code for chapters 11 and 12
New source files have been added for chapters 11 and 12. Chapter 11 introduces a data structures implementation featuring binary terms, substitution, unification, and anti-unification algorithms. Chapter 12 provides functional programming utilities, including a Map function for Lazy types and Bind functions for Nullable, Lazy, Task, and IEnumerable types.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 11, Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 12 · high confidence
Added source code for graph coloring and backtracking search
Added the C\# LINQ script for Chapter 8, implementing graph coloring and backtracking search algorithms. The code includes immutable graph and multi-map structures, a graph coloring reducer, and a backtracking solver applied to a Sudoku puzzle.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 8 · high confidence
Added source generator demos and generated code scaffolds
Added a new C\# project demonstrating source generator capabilities, including an \AutoNotify\ attribute for property change notification, enum extension generation, and a \HelloSourceGenerator\ that prints messages. The diff shows the addition of the main \Program.cs\ entry point, the \UserClass\ with auto-generated property change notifications, and the corresponding generated \.cs\ files for both .NET 7 and .NET 8 targets, alongside an \.editorconfig\ enabling logging for the generator.
CSharpGuide/SourceGeneratorDemo/SourceGeneratorGuide · high confidence
Added system design interview guides for distributed systems, caching, and more
Added new system design interview guides covering: a unique ID generator for distributed systems, consistent hashing, key-value stores, news feed systems, notification systems, rate limiters, search autocomplete systems, URL shorteners, and web crawlers. These guides provide detailed explanations of high-level designs, deep dives into specific components, and trade-off analyses for each system.
SystemDesignInterview · high confidence
Added unit test project with Rx timeout example
A new unit test project was added to the cookbook, introducing an Rx-based example that demonstrates applying a timeout to an HTTP service call. The change includes an \IHttpService\ interface, a \MyTimeoutClass\ that wraps the service with a 1-second timeout using \System.Reactive.Linq\, and a basic \UnitTest1\ test class to exercise the new concurrency pattern.
ConcurrencyInCSharpCookbook/06UnitTest · high confidence
Added unsafe class usage example
A new C\# project has been added to demonstrate the use of the \unsafe\ keyword and \Unsafe\ class for low-level memory operations. The example implements a \MagicalBox\ struct that uses \fixed\ storage and \Unsafe.WriteUnaligned\/\ReadUnaligned\ to perform unaligned memory writes and reads of primitive types.
CSharpGuide/unsafeclass-useage · high confidence
Adds functional programming primitives for C\# including Option, Either, and Exceptional types
The MarsonShine.Functional library introduces a suite of functional programming constructs for C\#. This includes an \Option\<T\>\ type to handle absent values, an \Either\<L, R\>\ type for representing success or error states, and an \Exceptional\<T\>\ type to capture exceptions as values. The update also provides extension methods for \IEnumerable\ and \Task\ to support functional composition, mapping, and binding operations, alongside utility classes for parsing strings and integers into these functional types.
FunctionalCSharp/src/MarsonShine.Functional · high confidence
Adds immutable data structures and functional list implementations
Introduces a suite of immutable data structures in chapter 2, including an immutable stack (IImStack) and an immutable queue (IImQueue) that support functional operations like push, pop, enqueue, and dequeue without mutating state. The update also adds a Hughes list implementation (HList) for efficient list concatenation, extension methods for stack and queue formatting, and a generic UndoRedo mechanism that leverages the immutable stack to track state history. A covariance example demonstrates type compatibility with the immutable stack, and a mutable queue wrapper with undo/redo capabilities is also included.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 2 · high confidence
Functional C\# demo: new functional programming examples and exercises
The FunctionalCSharp/src/Demo area now contains a comprehensive set of functional programming examples and exercises in C\#. This includes new demonstration files for function composition, Either types, middleware, and immutable data structures, as well as exercise solutions for sorting, mapping, and function composition. The changes introduce functional patterns such as the Either monad for error handling, middleware pipelines, and immutable state management, providing practical examples of functional programming concepts in C\#.
FunctionalCSharp/src/Demo · high confidence
Introduce Roslyn-based code analyzer and code fix for C\# and VB.NET
Adds a new Roslyn diagnostic analyzer that flags type names containing lowercase letters and provides a code fix to rename them to uppercase. The change includes the core analyzer implementation, a code fix provider, and associated resource files for localized messages. It also adds test verifiers and unit tests to validate the analyzer and code fix behavior for both C\# and VB.NET, along with PowerShell install/uninstall scripts and a VSIX manifest to support the extension.
WHPerformanceDotNet/src/SampleCodeAnalyzer · high confidence
Introduce cryptographic random number generation and statistical distribution utilities
Added new files in the CSharpGuide/random namespace to provide improved random number generation and statistical distribution support. BetterRandom.cs introduces a thread-safe, cryptographically secure random number generator (CRNG) for generating integers and doubles. Pseudorandom.cs provides a wrapper around the standard Random class with thread-local storage. Normal.cs implements the Box-Muller transform to generate normally distributed variables from uniform ones. StandardContinuousUniform.cs and IDiscreteDistribution.cs/IDistribution.cs define interfaces and implementations for continuous and discrete uniform distributions. Extensions.cs and Distribution.cs add helper methods for generating histograms and sampling from distributions.
CSharpGuide/random · high confidence
Introduce multiple source generators and supporting utilities for C\# code generation
The MySourceGenerator project now includes a suite of source generators: an augmenting generator that adds methods to existing classes, a custom generator for basic code emission, and two incremental generators (EnumToGenerator and EnumToGenerator in Enums2) that produce extension classes for enums marked with a custom attribute. Additionally, the update adds helper classes like EquatableArray and SourceGenerationHelper, a HashCode struct, and configuration via MyGenerator.props to expose MSBuild properties and metadata to the generators. A test suite in SourceGeneratorTests verifies the generation behavior.
CSharpGuide/SourceGeneratorDemo/MySourceGenerator · high confidence
Introduces async initialization, completion, and disposal patterns for C\# objects
This update adds new C\# classes that demonstrate asynchronous object lifecycle patterns. It introduces an async constructor pattern (AsyncConstructorClass) that uses a private constructor with an async factory method. It provides an async initialization pattern (AsyncInitializeClassPattern) with an IAsyncInitialize interface for managing asynchronous setup. It adds an async completion pattern (IAsyncCompletion) via DisposedAsyncAndGetCompletionResult, allowing objects to signal when they are fully initialized or disposed. It also includes an async disposal pattern (DisposedAsync) that supports cancellation tokens for safe resource cleanup. Additionally, an AsyncHelper class offers a 'using'-like pattern for managing resources that implement IAsyncCompletion. The Program.cs file is updated to showcase these new patterns.
ConcurrencyInCSharpCookbook/10OOP · high confidence
Migrate site from Jekyll to MkDocs
The documentation site has been migrated from Jekyll to MkDocs, using the Material theme with dark/light mode support. The new configuration (mkdocs.yml) defines a structured navigation of topics including C\# async programming, architecture patterns, and various technical guides. A Python hook (hooks/prepare\_docs.py) is now used to generate the documentation structure, and the README provides instructions for local preview and deployment via GitHub Actions.
(repo-wide) · high confidence
New C++ exercises on type sizes, casting, and overflow
Added four new C++ example files in the 04 directory: 4-28.cpp demonstrates the sizeof operator to show the memory footprint of various C++ types (void, bool, char, integer, floating-point, and fixed-width integers); 4-36.cpp illustrates C++ style type casting (static\_cast) and implicit conversion; 4-6.cpp provides a simple program to check if a number is even or odd; and 4-7.cpp demonstrates integer overflow scenarios. These additions support learning about C++ expressions and type handling.
CPPPrimer/src/04 · high confidence
New Roslyn syntax and semantic analysis demos
Added three new C\# console applications in the roslySdkDemo project to demonstrate Roslyn API usage: HelloSyntaxTree shows how to parse and traverse a C\# syntax tree; SemanticQuickStart demonstrates using the semantic model to resolve symbols and type information; SyntaxWalker provides a custom CSharpSyntaxWalker to collect using directives. These additions provide practical examples for developers working with code analysis and transformation.
CSharpGuide/roslySdkDemo · high confidence
New diagnostics demo solution with multiple example projects
A new \diagnostics-demo.sln\ solution file has been added to the \CSharpGuide/diagnostics\ directory. It groups five distinct C\# projects—EventSourceDemo, MetricDemo, CollectionMetricDemo, DistributedTraceDemo, and DistributedTraceWebDemo—each serving as a practical example for specific diagnostic capabilities such as event sourcing, metrics collection, and distributed tracing.
CSharpGuide/diagnostics · high confidence
Behavioural changes
1 commit (0 fixes) modifying CPPPrimer/src
A change to existing behaviour in CPPPrimer/src — 1 commit, 2 files.
CPPPrimer/src · medium confidence · unverified
Added C\# 8+ reference and performance patterns to Chapter 13
Added new C\# code examples in Chapter 13 demonstrating high-performance patterns, including the use of the \in\ modifier for pass-by-reference parameters to avoid value copying, \ref\ local variables and \ref\ returns to create aliases and enable direct modification of underlying data, \ref readonly\ for zero-copy read-only access, and \Span\<T\>\ with \stackalloc\ for efficient memory access.
_CSharpInDepth/Chapter13\HighPerformancePassByReference · medium confidence
Added ref foreach and span-based iteration benchmarks
A new benchmarking project named RefForeach was added to the C\# 7.3 language guide, providing performance comparisons between traditional foreach and for loops, LINQ Sum, and the newer ref foreach and Span-based iteration patterns.
CSharpGuide/LanguageVersions/7.3 · high confidence
C\# 10 language feature examples
Added demonstration code for C\# 10 features, including global using directives, lambda expression improvements, string interpolation handlers, and extended property patterns for pattern matching.
CSharpGuide/LanguageVersions/10.0 · medium confidence
Demonstrates AsyncLocal memory leak and safe usage patterns
Added a C\# solution and code samples that illustrate how using AsyncLocal with mutable objects can cause memory leaks due to execution context capture, and demonstrates a safer pattern using StrongBox to avoid retaining large objects in the execution context.
CSharpGuide/asynclocal · high confidence
Introduce C\# 14 language features: extension methods and operators
The C\# 14.0 example project now demonstrates C\# 14 capabilities, including instance and static extension methods on types like List\<T\> and string, as well as a custom addition operator for lists. The sample code shows how to use these new extension members and operators, alongside a User class that utilizes enhanced property setters with validation logic.
CSharpGuide/LanguageVersions/14.0 · high confidence
Fixes
Add dynamic vs reflection performance comparison example
A new C\# example file was added to demonstrate a performance comparison between using dynamic dispatch and reflection. The code measures the execution time of each approach in a loop, allowing users to observe the relative performance characteristics of dynamic operations versus reflection-based invocation.
CSharpGuide/LanguageVersions/4.0 · medium confidence
Fix: Corrected pretty-printing logic in chapter 9
The chapter 9 source code has been updated to fix the implementation of the \Pretty\ method within the \Doc\ class. This change ensures that the iterative pretty-printing algorithm correctly handles indentation, line breaks, and width constraints, resolving issues with the greedy iterative approach previously in place.
Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 9 · medium confidence
Fixes and additions to generic algorithm examples
Added and corrected C++ source files in the generic-algorithm directory, covering copy and sort algorithms, lambda expressions (including mutable and reference capture), iterator usage (including reverse iterators), and partitioning. The changes fix incorrect implementations and add missing examples for standard algorithms like std::copy, std::sort, std::unique, and std::partition, as well as demonstrating lambda usage in sorting and finding elements.
CPPPrimer/src/10-generic-algorithm · high confidence
Dependencies
Added .csproj files for C\# and Go projects across multiple directories
This change introduces 112 new or updated project files (\.csproj\ and \go.mod\) across the repository, establishing the build configuration for various C\# and Go modules. The C\# projects target a wide range of .NET versions, including netcoreapp2.0, 2.1, 2.2, 3.1, 5.0, 6.0, 7.0, 8.0, and 10.0, alongside a .NET 4.7.2 project for Visual Studio extensions. Several projects include specific package references such as \System.Data.SqlClient\, \OpenTelemetry\, \BenchmarkDotNet\, and \Microsoft.CodeAnalysis\ packages, while others enable features like \ImplicitUsings\ and \Nullable\ contexts. This update ensures all code samples and demos are properly configured for their respective target frameworks and dependencies.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 48.
Lenses
- Code Health 62
- Architecture 96
- Maturity 65
- Readiness 32
- Security 50
- Accessibility 80
- Performance 92
Changes since last survey
- 300 commits — 270 feature/other, 30 fixes
By area
- NET-Memory-Management-For-BCPS/asserts — 32 commits
- (repo) — 24 commits
- RxNet/docs — 23 commits
- CSAPP/docs — 15 commits
- DotNet-Runtime-Book/docs — 12 commits
- AI-LLMs/asserts — 9 commits
- Fabulous-Adventures-In-Data-Structures/asserts — 9 commits
- Fabulous-Adventures-In-Data-Structures/sourcecode — 9 commits
- SystemPerformance-Enterprise-Cloud/README.md — 9 commits
- FunctionalDesign/asserts — 8 commits
- dragonbook/docs — 8 commits
- CurrentProgramming-for-Scalable-WebArchitectures/asserts — 7 commits
- TCPIP/example — 7 commits
- blogs/asserts — 7 commits
- Postgresql-In-Internal/The Internals of PostgreSQL for Database Administrators and System Developers.md — 6 commits
- SystemPerformance-Enterprise-Cloud/asserts — 6 commits
- blogs/2024 — 6 commits
- blogs/2025 — 6 commits
- (root) — 5 commits
- CSharpGuide/net8-guide — 5 commits
Notable commits
- fix: Change Jekyll theme to minima and disable Liquid rendering to fix page generation
- fix: Fix Jekyll Liquid syntax error by escaping double braces in code block
- fix: Merge pull request #23 from MarsonShine/copilot/fix-build-errors
- fix: Merge pull request #26 from MarsonShine/copilot/fix-build-errors
- fix: fix: StringSyntaxAttribute
- fix: fix: add extension and some tips
- fix: fix: add git hook. auto navigate
- fix: fix: add kinds of permutation algorithms
- fix: fix: add origin author link
- fix: fix: add symbol;
- fix: fix: chapter8, chapter9; greedy iterative pretty printing
- fix: fix: collection expression in interface
- fix: fix: hugheslist
- fix: fix: jekyii syntax error;
- fix: fix: jekyii syntax error;
- fix: fix: jekyii syntax error;
- fix: fix: jekyii syntax error;
- fix: fix: linux state machine
- fix: fix: locker
- fix: fix: mutex lock
- …and 280 more
API surface
- 2 HTTP endpoints (baseline)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
MarsonShine/Books was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 3 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 71f3a1cd0ac5cbff95b1f098f4cd7660fdf90755 — the exact code this score is about.
- Scored under rubric-2026.08.19 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer latest.