Browse by Tags

All Tags » C# 3.0 (RSS)
Last time in this series we were able to compile a stunningly complex “dynamic lambda” x => x – also known as I in the world of combinators – into IL code at runtime. As that’s not particularly useful, we want to move on to slightly more complex expressions...
Posted by bart | 1 comment(s)
Welcome back to the dynamic expression tree fun. Last time we designed our simplified expression tree class library we’ll be using to enable dynamic treatment of objects. Today, we’ll take this one step further by emitting IL code that resolves the operations...
Posted by bart | 2 comment(s)
In the previous post, I outlined the use of the expression trees from the System.Linq.Expressions namespace. Let’s recap to set the scene: Expression < Func < string , int , int , string >> data = ( string s, int a, int b) => s.Substring...
Posted by bart | 3 comment(s)
By now, most – if not all – readers of my blog will be familiar with this C# 3.0 and VB 9.0 feature called Local Variable Type Inference or Implicitly Typed Local Variables. The idea is simple: since the compiler knows (and hence can infer) type information...
Posted by bart | 8 comment(s)
Filed under: ,
Everyone knows array initializers; they’ve been part of the language since the very beginning. But do you know how this innocent looking construct really works? var ints = new [] { 1, 2, 3 }; Before we continue, I should point out that the above sample...
Posted by bart | 4 comment(s)
Filed under: ,
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 specification...
Posted by bart | with no comments
Filed under: , ,
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 managed to...
Posted by bart | 6 comment(s)
Filed under: ,
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 point...
Collecting a few of my posts for easy quick reference: C# 3.0 Feature Focus - Part 1 - Local Type Inference C# 3.0 Feature Focus - Part 2 - Object Initializers C# 3.0 Feature Focus - Part 3 - Collection Initializers C# 3.0 Feature Focus - Part 4 - Extension...
Posted by bart | 3 comment(s)
Filed under:
External or internal? C# introduced the concept of iterators in C# 2.0 but it's a less-known fact that there are two sorts of iterators. The ones provided in C# are so-called external iterators . The distinction lies in the party that controls the...
Posted by bart | 7 comment(s)
More Posts Next page »