MoreLINQ
NetFabric.Hyperlinq
Our great sponsors
MoreLINQ | NetFabric.Hyperlinq | |
---|---|---|
21 | 4 | |
3,587 | 858 | |
0.9% | 0.1% | |
7.8 | 0.0 | |
18 days ago | 2 months ago | |
C# | C# | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
MoreLINQ
- What your hidden nuget gems ?
-
Do you know about the DistinctBy method?
You can grab MoreLinq off of Nuget for pre-.NET6 and it has a DistinctBy implementation that you might be able to use: https://github.com/morelinq/MoreLINQ
-
Three words.,, => C# Functional Programming is awesome!!! Do you seasoned developers have any war-stories or nightmare stories regarding Functional Programming?
Install "morelinq" 3.3.2 from Nuget: https://www.nuget.org/packages/morelinq You know you got the right one if it has about 37.2 million downloads.
-
Is there a reason why a WithIndex() extension method isn't apart of the standard library?
If you don't already know about it, I highly recommend checking out the MoreLINQ open source project which adds a bunch of these less common but still occasionally useful extensions to LINQ. They also include an Index method which does exactly what your WithIndex method does, yielding out KeyValuePair entries for each iteration.
- How to remove duplicates from a list, I've tried multiple approaches but with no luck. Can You help me out or point me in the right direction, please. My attempts are in the post
-
Just had a Senior Technical Interview that was so bad and such a waste of time that I burnt that bridge and burnt it hard. If this is how your company interviews people please stop.
yield return is a significant core piece of the framework. It's the basis of which most deferred execution and LINQ is built upon and any extension one would want to add to LINQ. (for example)
-
it feels as though the LINQ queries are inferior to simply using the Enumerable extensions, is there something i'm missing?
For a time, I'd say the Query Syntax was comparatively as popular as the Method Syntax. But over the years as LINQ became ubiquitous for working with non-database queries (LINQ-to-Objects) and more users extended them (for example, MoreLinq) the Method Syntax became more popular. I'd say nowadays the Query Syntax is relatively rare to see and perhaps mostly limited to direct database queries or these scenarios like "join" that are easier.
-
Full outer join in LINQ
I suggest morelinq https://github.com/morelinq/MoreLINQ
-
Things I don't like or confused me in C#
If you don't already know about it, take a gander at the MoreLINQ extensions. I don't think it solves this particular problem, but it's a great example of extending LINQ.
-
-🎄- 2021 Day 1 Solutions -🎄-
It's part of the MoreLinq library. The Window() function code is here.
NetFabric.Hyperlinq
-
Classes vs. Structs in .NET. How not to teach about performance
> AVX instructions, which is implemented for quite a few LINQ methods
Are you sure? Any examples of such methods? And does AVX actually helps?
I don’t think that’s possible because IMO AVX and other SIMD can only help for dense inputs. The C# type is ReadOnlySpan, however ReadOnlySpan doesn’t implement IEnumerable and therefore incompatible with LINQ.
There’s even an alternative LINQ to workaround https://github.com/NetFabric/NetFabric.Hyperlinq but that thing is a third-party library most people aren’t using.
- Like Regular LINQ, but Faster and Without Allocations: Is It Possible?
-
700,000 lines of code, 20 years, and one developer: How Dwarf Fortress is built
I know it C# it doesn't have to make heap allocations, here's a Linq-clone that mostly eliminates them: https://github.com/NetFabric/NetFabric.Hyperlinq
-
Array iteration performance in C# — Branching and Parallelization
I'm the developer of one of the libraries and you may find in the benchmarks that it performs better than most others.
What are some alternatives?
language-ext - C# functional language extensions - a base class library for functional programming
ksqlDB.RestApi.Client-DotNet - ksqlDb.RestApi.Client is a C# LINQ-enabled client API for issuing and consuming ksqlDB push and pull queries and executing statements.
Extensions-And-Utilities-For-Unity - A collection of Extension methods and Utility classes for the System, UnityEngine, and UnityEditor namespaces.
LinqBenchmarks - Benchmarking LINQ and alternative implementations
JFlepp.Maybe - A Maybe type for C#, aimed as an idiomatic port of the option type in F# to C#
StructLinq - Implementation in C# of LINQ concept with struct
Curryfy - Provides strongly typed extensions methods for C# delegates to take advantages of functional programming techniques, like currying and partial application.
MicroBenchmarksDotNet - C# Benchmarks for a better understanding of performance cost
LINQ to DB - Linq to database provider.
CIDLib - The CIDLib general purpose C++ development environment
Optional - A robust option type for C#
CQC - CQC (Charmed Quark Controller) a commercial grade, full featured, software based automation system. CQC is built on our CIDLib C++ development system, which is also available here on GitHub.