Samuel Ng's Blog
-
Named arguments, optional arguments, and default values
C# 4.0 introduces the concept of optional parameter values into the language. Now, this has been a controversial subject in the past, and we have had many requests for the feature, but have traditionally stayed away from it. So, why now?
-
Dynamic in C# VII: Phantom Method Semantics
By now, my hope is that you all have a well-rounded view of dynamic. We started this series by introducing dynamic and talking about the basics of the feature, and have just finished talking about some of the feature's limitations with the intent that giving both the good and the bad will help us gain a firm understanding of the topic.
-
Dynamic in C# VI: What dynamic does NOT do
As I mentioned last time, there are a few gotchas that we'll need to look at in order to get a full understanding of the dynamic feature and its capabilities. Today we'll take a look at some of those limitations. As we go along, I'll try to shed some insights as to how the decision making process came about, and why we feel these calls are the right ones.
-
Dynamic in C# V: Indexers, Operators, and More!
Now that we're all experts in how dynamic invocations work for regular method calls, lets extrapolate from our previous discussion about phantom methods a bit and take a look at how those basic concepts apply to other dynamic operations.
-
Dynamic in C# IV: The Phantom Method
Yes, this does sound like a Star Wars movie, but no, I'm not a Star Wars geek that just likes to pull lines from my favorite movies (though I rather enjoyed Star Wars). This post will deal with what we've coined "the phantom method". It's the method that the static compiler will bind to during the initial binding phase when it recognizes that the invocation its trying to bind needs to be bound dynamically and cannot be resolved statically. It uses the rules that we talked about last time to determine what types to use at runtime.
-
Dynamic in C# III: A slight twist
Last time we dealt with the basics of dynamic binding. This time, we'll add a small twist.
-
Channel 9!
A few weeks ago, a few of us on the compiler team did a Channel9 interview, discussing some of the new features that we're working on and how they fit into the whole Visual Studio 2010 story.
-
Dynamic in C# II: Basics
Last time, we began to dive into dynamic binding in C# and what happens through the pipeline. This time, we'll take a simple scenario and pick apart the details of what happens under the covers, both during compile time and runtime.
-
Dynamic in C#
The other day I was playing around with some office code, and I found myself writing a lot of code much like the following sample that Anders used at his PDC talk:
-
Microsoft Visual Studio 2010
The cat's out of the bag! Hours ago at PDC '08, I got to watch Anders unveiled the new C# 4.0 language features that we've been working on. This unveiling was accompanied by some fantastic demos of our work in action. Even though I've been working on this stuff for the past year, I was still completely blown away by his demos.