Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Algebraic Data Types for C#

NDC Conferences via YouTube

Overview

Explore how to incorporate algebraic data types (ADTs) into C# projects in this comprehensive conference talk. Learn about the benefits of immutable sum and product types for proper problem modeling and preventing illegal states. Dive into practical implementation techniques using domain-specific languages (DSLs) and code generation. Discover how to represent ADTs with native C# constructs, implement pattern matching, and achieve partial modification. Gain insights into parsing and code generation mechanics, explore an open-source library and tool, and understand how to seamlessly integrate functional programming patterns into daily C# work. Follow along as the speaker demonstrates implementing product and union types with classes, achieving value semantics, and using a code generator for boilerplate creation. See how to define ADTs using a DSL and connect it to the code generator, creating a smooth extension for Visual Studio. Finally, witness the extensibility of generated code by adding type-class support for Functor, Applicative, and Monad, and integrating with LINQ.

Syllabus

Algebraic Data Types for C# - John Azariah

Taught by

NDC Conferences

Reviews

Start your review of Algebraic Data Types for C#

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.