in

B# .NET Technical Community Homepage

Bart De Smet's online technical community
All Tags » C# 3.0 (RSS)

Browse by Tags

  • Memoization for dummies

    Introduction We’ve been talking about functional programming quite a bit already. One of the things used frequently in functional programming is recursion, instead of imperative loop constructs. Both have their advantages, but often recursive techniques can cause significant degradations in performance...
    Posted to B# .NET Blog (Weblog) by bart on 10-21-2008
  • “The C# Programming Language Third Edition” and thoughts on language evolution

    With a hypothetical next release of the C# language around the corner (more about that after Anders, our language Caesar, has delivered his “Future of C#” talk on the PDC 08), I’ve had the honor to receive an early print of The C# Programming Language Third Edition . As you can guess, this book is the...
    Posted to B# .NET Blog (Weblog) by bart on 10-19-2008
  • 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://mathworld.wolfram.com/Predicate.html as An operator in logic...
    Posted to B# .NET Blog (Weblog) by bart on 09-14-2008
  • 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.15.2. A few remarks that deserve more attention when reading...
    Posted to B# .NET Blog (Weblog) by bart on 08-30-2008
  • To Bind or Not To Bind – Dynamic Expression Trees – Intermezzo: SOS in Visual Studio

    Last time we talked about dealing with dynamic code generation using Reflection.Emit to generate calls to our dynamic binder. I’ve shown how to see the IL that gets generated by means of the Dynamic IL Visualizer add-in in Visual Studio. In this post I want to point out that you can actually live without...
    Posted to B# .NET Blog (Weblog) by bart on 08-29-2008
  • To Bind or Not To Bind – Dynamic Expression Trees – Part 3

    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 like: var o = DynamicExpression .Parameter...
    Posted to B# .NET Blog (Weblog) by bart on 08-28-2008
  • To Bind or Not To Bind – Dynamic Expression Trees – Part 2

    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 invoked on such dynamic objects at runtime...
    Posted to B# .NET Blog (Weblog) by bart on 08-27-2008
  • To Bind or Not To Bind – Dynamic Expression Trees – Part 1

    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(a, b); produces (deep breadth) ParameterExpression...
    Posted to B# .NET Blog (Weblog) by bart on 08-26-2008
  • Appropriate use of Local Variable Type Inference

    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 for expressions, also referred to as rvals...
    Posted to B# .NET Blog (Weblog) by bart on 08-23-2008
  • How C# Array Initializers Work

    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 uses a couple of C# 3.0 specific features, namely...
    Posted to B# .NET Blog (Weblog) by bart on 08-21-2008
Page 2 of 9 (82 items) < Previous 1 2 3 4 5 Next > ... Last »
Powered by Community Server (Non-Commercial Edition), by Telligent Systems