An implementation of monads in csharp, in Lubuntu 18.04 LTS as operating system and with JetBrains Rider as IDE
Very simple monad Maybe library written in c-sharp.
Create Monad from:
Maybe<string>.Of("Hello")
Return value or another element
var result = Maybe<string>.Of("Hello")
.match(() => "bye", null);
Simple string tokenizer
var result = Maybe<string>.Of("Hello")
.Bind<List<string>> (y => y.Split(' ').ToList<string>())
.Match(x => x, _ => new List<string>());