Hacker GitHub

← All repos

louthy/language-ext

View on GitHub ↗ ★ 7,083 C#

C# pure functional programming framework - come and get declarative!

109 mentions on Hacker News by 20 people: 5 stories, 104 comments · first 2014-11-19 · latest 2026-09-16

Mentions per year 109 mentions · busiest year 2016 (21)
20082026
  1. …blanket statements about performance are wheeled out I think it's important to add context. [1] https://github.com/louthy/language-ext
  2. …use F# and want to use a more functional style, then this will help [1]. disclaimer: I'm the author https://github.com/louthy/language-ext
  3. …Also, units of measure [4]: Length x = 10*inches; Area y = x * x; Time t = 10*sec; [1] NewType - https://github.com/louthy/language-ext/tree/master/LanguageE... [2] NumType - https://github.com/louthy/language-ext/tree/master/LanguageE...…
  4. …C# implementation here [2] [1] https://michael.steindorfer.name/publications/phd-thesis-eff... [2] https://github.com/louthy/language-ext/blob/master/LanguageE...
  5. …Reader and State) and produce output (like Writer) with the more simple monads like Option. [1] https://github.com/louthy/language-ext/blob/master/LanguageE...
  6. …Validation<Fail, Success>, Validation<MonoidFail, Fail, Success> + Monad transformer stack [1] https://github.com/louthy/language-ext/
  7. I've done a short write-up about this: https://github.com/louthy/language-ext/wiki/Performance
  8. Ah, the same old refrain [1] [1] https://github.com/louthy/language-ext/wiki/%22Why-don't-you...
  9. …then I have a library [1] that makes the inertia flow positively in the functional direction in C# https://github.com/louthy/language-ext/
  10. …and even complex ones, like this floating point number parser [3], are trivial to follow. [1] https://github.com/louthy/language-ext [2] https://github.com/louthy/language-ext/blob/master/LanguageE... [2]…
    comment by louthy · 2019-04-19 · in Learning Parser Combinators with Rust
  11. …code just get the work done without thinking about it. Makes for a really great workflow. See also https://github.com/louthy/language-ext
  12. …idiomatic (or pretty), but it's possible if needed. Higher-kinds is the killer missing feature. [1] https://github.com/louthy/language-ext#ad-hoc-polymorphism
    comment by louthy · 2019-02-18 · in Generics aren't ready for Go
  13. …possible to write code functionally - you just need to do some boilerplate every now and then. [1] https://github.com/louthy/language-ext [2] https://stackoverflow.com/questions/38575646/general-purpose...
    comment by louthy · 2018-10-02 · in A History of .NET Runtimes
  14. I would recommend this library https://github.com/louthy/language-ext for functional style programming in C#.
    comment by Melchizedek · 2018-06-19 · in Railway-Oriented Programming (2015)
  15. …ocs.microsoft.com/en-us/dotnet/fsharp/get-started/g... If you can't use F# at work I really like this https://github.com/louthy/language-ext for a more functional flavor of C#.
    comment by Melchizedek · 2018-06-08 · in CoreRT – A .NET Runtime for AOT
  16. …function. But if you want to do anything more complex, ignoring else can be a source of bugs. [1] https://github.com/louthy/language-ext/blob/master/LanguageE...
    comment by louthy · 2018-03-26 · in Avoid Else, Return Early (2013)
  17. You can :) (Especially with the pattern matching feature) https://github.com/louthy/language-ext
    comment by hurricaneSlider · 2018-03-12 · in Tuples goodness in .NET 4.7.1
  18. …to help quicker, because I just feel the person is being polite and respectful of the effort. [1] https://github.com/louthy/language-ext
  19. …always looking for areas to try and improve the lot of C# devs trying to write functionally. [1] https://github.com/louthy/language-ext/releases/tag/v2.1.0
    comment by louthy · 2017-08-16 · in The Problem with F# Evangelism
  20. …use that), but C# + language-ext actually gives me pretty much everything I need (bar ADTs). [1] https://github.com/louthy/language-ext
    comment by louthy · 2017-08-16 · in The Problem with F# Evangelism
  21. …library for C# parser combinators. This has been superseded by my language-ext project: https://github.com/louthy/language-ext/ It is a much more advanced and efficient port of the Haskell Parsec library. Would you mind linking to that…
    comment by louthy · 2017-06-21 · in What the heck is a parser-combinator?
  22. …them from my life (because it does physically enrage me whenever I see the need to use it). [1] https://github.com/louthy/language-ext/blob/master/LanguageE... [2] https://github.com/louthy/language-ext/blob/daa5a10028e9637b...
    comment by louthy · 2017-03-10 · in New Features in C# 7.0
  23. …monadic type, bind them, join them, map them, and return the concrete type that you pushed in." [1] https://github.com/louthy/language-ext/releases/tag/2.0.26-b...
    comment by louthy · 2017-03-10 · in New Features in C# 7.0
  24. …Some: x => x * 2, None: () => 0 ); Parse.Int("456").Iter(Console.WriteLine); https://github.com/louthy/language-ext/blob/e6ff382a1752c7de...
    comment by louthy · 2017-03-10 · in New Features in C# 7.0
  25. …the product. No hierarchy or in-fighting. It's a happy place to be. So I endorse this method :) [1] https://github.com/louthy/language-ext
    comment by louthy · 2017-03-08 · in Tech Interview Torture Chamber
  26. …be certain. I know that if I wipe the code in those files then the performance is restored. [1] https://github.com/louthy/language-ext/ [2] https://github.com/louthy/language-ext/blob/master/LanguageE... [3]…
    comment by louthy · 2017-03-07 · in Visual Studio 2017 Launch [video]
  27. …was unlikely to move seriously in the near term without some indication of real world need. [1] https://github.com/louthy/language-ext/blob/type-classes/Lan... [2] https://github.com/louthy/language-ext/blob/type-classes/Lan... [3]…
    comment by louthy · 2017-02-02 · in The .NET Language Strategy
  28. …Here's an example from version 2.0 of lang-ext (which is WIP and will be released soon) [1]: [1] https://github.com/louthy/language-ext/blob/type-classes/Lan...
  29. …ValueTuple<A,B,C> (there are extensions up to ValueTuple<A,B,C,D,E,F,G> and Tuple<A,B,C,D,E,F,G>) https://github.com/louthy/language-ext/blob/type-classes/Lan... It allows cool stuff like this: var abc = ('a', 'b').Add('c'); // ('a', 'b',…
  30. ▲ 99
    C# functional language extensions and Erlang-like concurrency system
    story by networked · 2017-01-29 · 48 comments
  31. …reason to believe that that is not possible due to some issue that makes it only available to Java. https://github.com/louthy/language-ext/tree/master/LanguageE...
  32. ▲ 1
    C# functional language extensions and 'Erlang like' concurrency system
    story by gokhan · 2016-12-13 · 0 comments
  33. …It would help bring ad-hoc polymorphic types to C#, but it would just be awesome in general. [1] https://github.com/louthy/language-ext [2] https://github.com/louthy/language-ext/blob/type-classes/Lan... [3]…
    comment by louthy · 2016-11-17 · in .NET Framework – What's New in C# 7.0
  34. …feels like an imbalanced expression. They're clearly more useful now, but they still feel odd. [1] https://github.com/louthy/language-ext/blob/master/LanguageE...
    comment by louthy · 2016-11-17 · in .NET Framework – What's New in C# 7.0
  35. …arguments can't be inferred by the type-system, so you then end up having to specify them all). [1] https://github.com/louthy/language-ext/blob/master/LanguageE... [2] https://github.com/louthy/language-ext/blob/master/LanguageE... [3]…
    comment by louthy · 2016-11-16 · in .NET Framework – What's New in C# 7.0
  36. This is great, installed, thanks! Now to brag: https://github.com/louthy/language-ext/
  37. ▲ 4
    C# functional language extensions and 'Erlang like' concurrency system
    story by hitr · 2016-09-22 · 0 comments
  38. …it doesn't make it a higher-kinded type, but you don't have to use IEnumerable to use LINQ. [1] https://github.com/louthy/language-ext/blob/type-classes/Lan... [2] https://github.com/louthy/language-ext/blob/type-classes/Lan...
  39. …a discussion on ad-hoc polymorphism in C#. There are lots of links to examples further down. [1] https://github.com/louthy/language-ext [2] https://github.com/louthy/language-ext/issues/120
  40. …class [1]. It's pretty lightweight, although could probably shave a few bytes here and there. [1] https://github.com/louthy/language-ext/blob/master/LanguageE...
    comment by louthy · 2016-06-29 · in Announcing .NET Core 1.0
  41. …that (with lots of functional niceness too). Disclaimer, I wrote it, so I'm obviously biased https://github.com/louthy/language-ext
    comment by louthy · 2016-06-29 · in Announcing .NET Core 1.0
  42. …in mind (because it's mine too). It also has some utility functions for F#/C# interop. [1] https://github.com/louthy/language-ext
    comment by louthy · 2016-06-15 · in The Story of Haskell at IMVU
  43. …an improvement over passing integers, strings, or other basic types around. [1] Implementation - https://github.com/louthy/language-ext/blob/master/LanguageE... [2] Unit tests / examples - https://github.com/louthy/language-ext/blob/master/…
    comment by louthy · 2016-06-14 · in Four months with Haskell
  44. …[1]). The toolset is pretty boring/standard though: VS2015 + TeamCity + in-house Nuget + Gitlab [1] https://github.com/louthy/language-ext/
    comment by louthy · 2016-06-10 · in F# Not just for finance
  45. …If I'm understanding this correctly, that process could be wrapped up in a single stream? [1] https://github.com/louthy/language-ext/tree/master/LanguageE... [2] https://github.com/louthy/language-ext
  46. …too bogged down on implementation attempts and doesn't think about the problem conceptually. [1] https://github.com/louthy/language-ext [2] https://github.com/louthy/csharp-monad
    comment by louthy · 2016-03-31 · in Immutability is not enough
  47. Monad transformers in C# [1] (but yes, only works with the monads in the library) [1] https://github.com/louthy/language-ext/blob/master/LanguageE...
  48. …the majority of the use-cases, but may be of interest in the context of this discussion. [1] https://github.com/louthy/language-ext [2] https://github.com/louthy/language-ext/blob/master/LanguageE... [3]…
  49. …layer on top of that. It's called LanguageExt.Process and is part of my LanguageExt project: https://github.com/louthy/language-ext
    comment by louthy · 2016-01-30 · in RabbitMQ Internals
  50. …drop me an email with your CV to plouth AT gmail :) [1] https://github.com/louthy/csharp-monad [2] https://github.com/louthy/language-ext [3] https://github.com/louthy/language-ext/blob/master/LanguageE...
    comment by louthy · 2016-01-14 · in Project Rider – A C# IDE