Recent Posts
B# .NET De Smet
Return To Blog Listing
Blog about all you didn't want to know about .NET, C#, Visual Studio, CLR, ASP.NET, Windows PowerShell, programming language evolution and so much more.
Recent Posts Tagged With 'LINQ'
More LINQ with System.Interactive – Exploiting the code = data relationship
With the recent release of the Reactive Extensions for .NET (Rx) on DevLabs, you’ll hear quite a bit about reactive programming, based on the IObservable<T> and IObserver<T> interfaces. A great amount of resources is available on Channe...
More LINQ with System.Interactive – Sequences under construction
With the recent release of the Reactive Extensions for .NET (Rx) on DevLabs, you’ll hear quite a bit about reactive programming, based on the IObservable<T> and IObserver<T> interfaces. A great amount of resources is available on Channe...
More LINQ with System.Interactive – Exceptional Exception Handling
With the recent release of the Reactive Extensions for .NET (Rx) on DevLabs, you’ll hear quite a bit about reactive programming, based on the IObservable<T> and IObserver<T> interfaces. A great amount of resources is available on Channe...
More LINQ with System.Interactive – The Ultimate Imperative
With the recent release of the Reactive Extensions for .NET (Rx) on DevLabs, you’ll hear quite a bit about reactive programming, based on the IObservable<T> and IObserver<T> interfaces. A great amount of resources is available on Channe...
More LINQ with System.Interactive – Getting Started
With the recent release of the Reactive Extensions for .NET (Rx) on DevLabs, you’ll hear quite a bit about reactive programming, based on the IObservable<T> and IObserver<T> interfaces. A great amount of resources is available on Channe...
LINQ to Z3 – Theorem Solving on Steroids – Part 1
Introduction It’s way too long ago I wrote about this side-project of mine, as I got side-tracked by other stuff both inside and outside the realm of LINQ (more about that some other time around). Last time, I showed how to put “the query patter...
LINQ to Z3 – Theorem Solving on Steroids – Part 1
Introduction It’s way too long ago I wrote about this side-project of mine, as I got side-tracked by other stuff both inside and outside the realm of LINQ (more about that some other time around). Last time, I showed how to put “the query patter...
Taming Your Sequence’s Side-Effects Through IEnumerable.Let
Introduction Side-effects don’t fit together very well with functional-style delayed computation, as observed in LINQ. Having such constructs embedded in an otherwise eagerly evaluated imperative language like C# can cause quite some confusion fro...
Taming Your Sequence’s Side-Effects Through IEnumerable.Let
Introduction Side-effects don’t fit together very well with functional-style delayed computation, as observed in LINQ. Having such constructs embedded in an otherwise eagerly evaluated imperative language like C# can cause quite some confusion fro...
LINQ to Ducks – Bringing Back The Duck-Typed foreach Statement To LINQ
I promise, it will be a (relatively) short post this time. You all know the foreach statement in C#, don’t you? Think twice before you answer and tell me exactly how the following works: foreach (int x in src) { // Do something ...
LINQ to Ducks – Bringing Back The Duck-Typed foreach Statement To LINQ
I promise, it will be a (relatively) short post this time. You all know the foreach statement in C#, don’t you? Think twice before you answer and tell me exactly how the following works: foreach (int x in src) { // Do something ...
Statement Trees With Less Pain – Follow-Up on System.Linq.Expressions v4.0
Introduction In my last post, Expression Trees, Take Two – Introducing System.Linq.Expressions v4.0, I showed how to the extensions to the LINQ expression trees API opens up for full-blown statement trees including support for assignment, control ...
Statement Trees With Less Pain – Follow-Up on System.Linq.Expressions v4.0
Introduction In my last post, Expression Trees, Take Two – Introducing System.Linq.Expressions v4.0, I showed how to the extensions to the LINQ expression trees API opens up for full-blown statement trees including support for assignment, control ...
Expression Trees, Take Two – Introducing System.Linq.Expressions v4.0
Introduction Avid blog readers know I have a weak spot for expression trees in particular and the broader picture of meta-programming facilities. With the introducing of LINQ in the .NET Framework 3.5 timeframe, we ended up adding expression trees to...
LINQ to Objects - Debugging
Introduction Declarative language constructs like query comprehension syntax often worries imperatively trained developers. I hear this quite a bit, and the excuse of “It Just Works” is often not satisfactory for most of them :-). Combine this w...
LINQ to Z3 – Theorem Solving on Steroids – Part 0
Introduction Last time around in this blog category we looked at using Z3 for testing satisfiability of simple Boolean logic expressions. Obviously Z3 is capable of doing much more, so this time we’ll reach out to the domain of integer value arith...
Exploring the Z3 Theorem Prover (with a bit of LINQ)
Introduction Today I’m going to deviate from the typical path of mainstream technologies I normally cover and enter the domain of research instead. But very interesting and active research, with lots of practical implementations it turns out: theor...
ExceLINQ – Not Your Typical LINQ Provider
Introduction On my last trip I had the opportunity to talk on the subject of LINQ once more. Geeky as we are, this time’s session title was “LINQ in breadth”, an orthogonal view on LINQ compared to my last year’s LINQ in depth talk. But wha...
Help! Drowning in Expression Trees, What Now?
Introduction Once more I found myself in LINQ providers land recently for a project yet unannounced. Given the relative poverty of the query language we’re targeting in that particular provider, a very common question came up: what about complex e...
LINQ and The Matrix – Introducing MLinq
Today we’ll take a look at project “MLinq”, a very simple way to perform symbolic matrix calculations based on LINQ expression trees. Introduction But first, why would you even want to do this? Let me tell you I’m a big believer of ...
Dude, Where’s My LINQ DML?
Introduction On last week’s TechEd EMEA Developers 2008 conference in Spain I redelivered my talk on writing custom LINQ providers, showing off implementations of LINQ to AD and LINQ to SharePoint. One of the questions I received afterwards went a...
C# 4.0 Feature Focus - Part 3 - Intermezzo: LINQ's new Zip operator
After named parameters and optional parameters, we'll take a little breadth and deviate a bit from the language specifics to present a new LINQ operator: Zip. Just like a zipper zips two streams of materials together, LINQ's Zip operator can ...
LINQ to Anything – Channel 9 interview and a few more thoughts
Recently I had the opportunity to sync up with Erik Meijer and Charles Torre for a Channel 9 “Going Deep” and “Expert to Expert” interview: Erik Meijer and Bart De Smet: LINQ-to-Anything. In this episode we talk about LINQ’s extensibility m...
Who ever said LINQ predicates need to be Boolean-valued?
Note for purists: This post only speaks for “LINQ predicates”, not – although closely related to - the mathematic concept of a predicate as defined by Weisstein, Eric W. "Predicate." From MathWorld--A Wolfram Web Resource. http://...
C# 3.0 Query Expression Translation Cheat Sheet
As a reference for some planned and unplanned future posts, I wanted to share out my “cheat sheet” for the C# 3.0 translation carried out for query expressions. Obviously it’s based on the C# 3.0 Language Specification more specially section 7....
What Do VB 9.0 Error “BC36593: Expression of type ‘X’ is not queryable.” And C# 3.0 Error “CS1936: Could not find an implementation of the query pattern for source type ‘X’.” Really Mean?
While preparing for another one of my posts, soon to be published, I received the following: What can one do when observing such a message? Since watching a grown man cry is both a pathetic and embarrassing situation, downloading the language...
Probably The Most Powerful LINQ Operator: SelectMany
Introduction Hi there back again. Hope everyone is already exploiting the power of LINQ on a fairly regular basis. Okay, everyone knows by now how simple LINQ queries with a where and select (and orderby, and Take and Skip and Sum, etc) are translat...
The Most Funny Interface Of The Year … IQueryable
Recently I delivered a talk at TechEd South Africa on “Custom LINQ Providers”. This is a very broad topic to cover in barely 60 minutes especially if one has to explain pretty “abstract” pieces of art like IQueryable<T>. Apparently I ma...
Expression Tree Normalization – How Many Ways To Say “String == String”?
Recently I gave a talk at TechEd South Africa about Custom LINQ Providers. Unfortunately the session was only 60 minutes, so I had to cut down on the number of topics covered and focus on the bare essentials of query expression tree tra...
TechEd 2008 South Africa Demo Resources
Last week, I had the honor to speak at TechEd 2008 South Africa on a variety of topics. In this post I’ll outline all of the resources, including uploads of all my demos, referred to during my presentations. But before I do so, I sincerely want to ...
