3 ms·
> but I just want something closer to Scala, but for .Net That's what I have been working toward with my language-ext library [1]. Including a ZIO like effect
by louthy 3y ago
> but I just want something closer to Scala, but for .Net
That's what I have been working toward with my language-ext library [1]. Including a ZIO like effects system [2], Haskell-like Pipes [3], Clojure-like concurrency primitives [4], the fastest immutable data-structures in .NET [5], and lots of other common FP bits.
Obviously more support for expression based programming would be welcome (and higher kinds), but you can do a lot with LINQ and a good integrated library surface.
[1] https://github.com/louthy/language-ext https://github.com/louthy/language-ext
[2] https://louthy.github.io/language-ext/LanguageExt.Core/Effects/ https://louthy.github.io/language-ext/LanguageExt.Core/Effec...
[3] https://louthy.github.io/language-ext/LanguageExt.Core/Effects/Pipes/index.html https://louthy.github.io/language-ext/LanguageExt.Core/Effec...
[4] https://louthy.github.io/language-ext/LanguageExt.Core/Concurrency/ https://louthy.github.io/language-ext/LanguageExt.Core/Concu...
[5] https://louthy.github.io/language-ext/LanguageExt.Core/Immutable%20Collections/ https://louthy.github.io/language-ext/LanguageExt.Core/Immut...
- yawaramin 3y agoThat's cool, but question: why is the language-ext library documentation using Haskell's Haddock to render the pages? Wouldn't C#'s native documentation system be better?
- louthy 3y agoIt isn't Haddock, it's simply inspired by Haddock. It's a library I wrote called best-form [1]. The README gives context: "This is a C# doc-gen tool. It was primarily built to support my Language-Ext project. Which is non-idiomatic in its approach. I couldn't find documentation generators that did it justice. I also really liked the Hackage documentation style from Haskell, so have taken a styling approach from there (even if it looks a little dated now, it was always the documentation I felt most comfortable reading)." language-ext isn't idiomatic C# and so idiomatic C# doc-gens have quite a bad time with this library. One of the major benefits over other doc-gens is it grabs the README.md from each folder and prepends it to the relevant section - allowing me to write some contextual documentation outside of the auto-generated API documentation. This makes it a much more approachable reference. It also supports markdown in the XML documentation, avoiding a lot of the need for lots of ugly XML special characters [in code] and extending the layout options compared to the common C# doc-gens. [1] https://github.com/louthy/best-form https://github.com/louthy/best-form