Tim Ng

F# for the masses

March, 2008

Blog - About

About Tim Ng

I'm from Toronto, Ontario - graduated from the University of Waterloo in 2003, and have been working at Microsoft since then. I interned twice on the Visual Studio for Devices team, and started my full time job there as well. I also worked on the VS Core team briefly, before joining on the VB team, where I am now.

On the Device team, I worked on the native debugger; specifically, I worked on the expression evaluation piece (if you interact with the debugger by inspecting values and changing values, you interact with the expression evaluator). I also worked on some of the high-level communication between the debugger and the device, as well as some other random tasks.

On the Visual Basic team now, I work on the compiler team. We are focused mainly on LINQ, but we are also working on other things such as improving performance and stability of the compiler.

  • Tim Ng

    VB expression trees - coalesce operator

    Hey there! In this post, I'll continue describing some of the things that are interesting about the VB compiler, especially related to expression trees and the consumption of expression trees in your LINQ provider. Again, this may not be too interesting...
  • Tim Ng

    Checking generic parameters for Nothing/null

    Consider the following code fragment: Module Module1 Sub Foo(Of T)( ByVal x As T) If x Is Nothing Then End If End Sub Sub Main() Foo(10) End Sub End Module The first thing you might ask is : "hey, how come the compiler allows me to check for Nothing...
Page 1 of 1 (2 items)