LanguageExt
Languages and libraries
functional programming library
SHOW HN2014
How HN took it
9 positive, 11 neutral or asking, 5 mixed, 11 critical, out of 36 comments about the project. Thread score -0.12.
Idea: 6 for, 5 againstDesign: 2 for, 3 againstExecution: 0 for, 2 againstPerformance: 0 for, 1 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Useful for bringing functional style to C# codebases
From 2 comments
Our organization (big C# codebase, newer apps in scala) has doubled down on extremely functional C# (using the NICTA XShapx library which has a lot of overlap with this one).…
runT1ME on HN> Why bent C# until it looks like something that already exists? Because in the industry at large, JVM == Java and .NET == VB.NET == C#. So bending Java, C# and C++ to have…
pjmlp on HN
Option design that forces handling of None
From 2 comments
Funny I come across this today. Only yesterday did I start turning some of my helper functions and extension methods into a little NuGet library. It's amazing how much overlap…
steego on HNThat's fair enough. I knew implementing it this way would ruffle a few feathers, and I totally understand why. I too would love to see ("a","b"), and proper pattern matching...…
louthy on HN
Objections
Option should preserve null or be algebraically consistent
From 2 comments
Coercing Some (null) to None seems like a bug. Null is a valid value in the type and should be allowed (F# allows it too). Otherwise, a function might accidentally return None…
MichaelGG on HNA comment on the option type: I think transforming Some(null) into None is wrong. - There is an x for which Some(x) is not a Some. This violates useful invariants. -…
Strilanc on HN
Unidiomatic C# and lowercase function names
From 2 comments
This is a really interesting experiment, although personally I'd find using: var ab = tuple("a","b"); awful. It's very hard to read what is going on here- someone else reading…
martijn_himself on HNThis is a really cool exploration project, but hopefully I will not see this in any production code. Way too un-idiomatic.
CmonDev on HN
Why not just use F# instead
From 2 comments
I hope this does not come across to negative, definitely a nice project, but is this really useful in practice? If you want F# or Haskell syntax, why not just use F# or Haskell?…
danbruc on HNI am not saying the functionality is useless, but it already exists in other languages. Why force C# to look and behave like F# instead of just using F#?
danbruc on HN
Requests
Support for native C# tuple syntax and pattern matching
From 2 comments
This is a really interesting experiment, although personally I'd find using: var ab = tuple("a","b"); awful. It's very hard to read what is going on here- someone else reading…
martijn_himself on HNThat's fair enough. I knew implementing it this way would ruffle a few feathers, and I totally understand why. I too would love to see ("a","b"), and proper pattern matching...…
louthy on HN
Questions
Does Option<T> parameter still allow null
From 1 comment
Cool stuff. Isn't there still a problem with Option, where when a method takes Option<T> as a parameter, invocations can pass null for that Option<T>? So there's still the…
bcbrown on HN
Alternatives named
F#
From 2 comments
I hope this does not come across to negative, definitely a nice project, but is this really useful in practice? If you want F# or Haskell syntax, why not just use F# or Haskell?…
danbruc on HNJust use F# from Xamarin. It's the real deal. C# is just a stop-gap measure to suck in the enterprise devs.
nbevans on HN
NICTA XShapx
From 1 comment
Our organization (big C# codebase, newer apps in scala) has doubled down on extremely functional C# (using the NICTA XShapx library which has a lot of overlap with this one).…
runT1ME on HN
lambit
From 1 comment
Feel free to pilfer some ideas from my own take on a similar lib for C#. https://github.com/danstone/lambit - includes some basic pattern matching support for example. This sort…
dstone16321 on HN