Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cboudereau/category-theory-for-dotnet-programmers

This repo contains all c++ / haskell samples from Bartosz Milewski's book (Category Theory for Programmers) converted to csharp and fsharp
https://github.com/cboudereau/category-theory-for-dotnet-programmers

csharp fsharp fsharp-exercises fsharp-practice functional-programming

Last synced: 3 days ago
JSON representation

This repo contains all c++ / haskell samples from Bartosz Milewski's book (Category Theory for Programmers) converted to csharp and fsharp

Awesome Lists containing this project

README

        

# category-theory-for-dotnet-programmers
This repo contains c++ / haskell samples from Bartosz Milewski's book ([Category Theory for Programmers](https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/)) converted to csharp and fsharp

## Why
If you are curious about functional programming with dotnet background, you already may know [Domain modeling made functional](https://pragprog.com/book/swdddf/domain-modeling-made-functional) that could help you to build your first functional programming based app.
The [Category Theory for programmers](https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/), is quite interresting for programmers having a first experience in fsharp or csharp (in .net) who want to use Haskell or enhance their FSharp implementation.

Fsx and Csx are scripts files executed respectively into Fsharp interactive and Csharp interactive shipped with Visual Studio Community at least.

/!\ There is a problem with csx : to transform statement as expression (to display the value) you have to not ending your line with ';' causing compilation error on multiple line.
If you encounter compilation error on csx, try to execute it line by line. If the code does not compile send a PR or a message.

# How to use it ?

Read the [Category Theory for Programmers](https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/) and the annotations corresponding to the chapter into vs code or visual studio.

You can use it like a sandbox and try by yourself Challenges (challenges are not translated for more fun ;)). Only Haskell/C++ samples are translated.

I will try to add converted examples constantly but pull requests are accepted.
The format is pretty simple, one folder per each chapter and 2 scripts (fsharp and csharp) inside.