If you are trying to build a custom LINQ provider, you may notice that it's not easy.
Remotion re-linq is a great framework for reducing the friction of writing a full LINQ provider from scratch. If you're trying to build a very basic provider, though, even re-linq might be overkill.
You can think of it this way, where the evaluation is the complexity of your provider:
simple-linq < Relinq < LINQ from scratch
simple-linq provides an easy starting point for evaluating simple queries (no projections, no aggregations).