State Street Gang
.NET, straight up

C# 4.0

July 14, 2008 14:57 by will

I've just finished watching the "C# 4.0 Meet the Design Team" video, and here's what I've learned:

According to Anders, the big "target areas" for 4.0 are:

  • More declarative programming (a la LINQ)
  • More dynamic features
  • Concurrency  management

Anders has brought in some dynamic language guys (IronPython and (to a much lesser extent) VB).  They all spoke about different things they're interested in adding to the language.  As dynamic languages are being introduced into the .NET platform, other .NET languages are looking at ways of better integrating with these languages and the libraries written in them.  However, C# will not loose its static typing. 

Another example of what they are talking about is scripting.  Its hard to use a statically typed language used as a scripting language within another application.  IronPython has been the current choice for this internally in Microsoft. 

Listening to Anders, the big push seems to be parallelism.  There is much talk about how to guarantee purity in functions and how parallelism can be implemented in different ways without placing this on the backs of the developer.  Anders doesn't want to hide concurrent execution, however.  Developers should know and understand that their code may run in parallel, but have a well-stocked toolbox to use in order to take advantage of this.

The parallelism stuff sounds promising, however I'm a bit skeptical about the ability of developers to take advantage of it.  One of the toughest things to do is think about how your code will work in a multithreaded environment and what possible issues you may have.  But it definitely is, as Anders says, the big problem that nobody is paying attention to.  Moore's law is going to be upheld by increasing cores in CPUs, not just by cramming more transistors into a single core. 

I am a bit disappointed that there wasn't any mention about adding more language features to bring testing forward.  There are a few areas where some compiler work could help make it much easier to do....


Tags:
Categories: CLR | C#
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

MoQs RoX

June 27, 2008 11:07 by Will

After the big refactor last iteration we're working on the unit tests.  One of the things I wanted to get done was to replace all our lousy stubs (none of which would compile now after the refactor) with a true mock framework.  When considering framework candidates, I had three requirements:  First, it had to be easy to learn and use.  Second, it had to be fully compatible with .NET 3.5 (i.e., using expression trees instead of strings to set expectations).  Third, it had to be free. 

The two candidates I chose are Rhino Mocks 3.5 and MoQ 2.5.  Because MoQ is fully documented (Rhino's 3.5 is a massive change, so all of the documentation out there for the previous versions is useless) I went with MoQ.  I still have Rhino as a reference just in case MoQ can't handle something.  I haven't found one yet.

More...

Tags:
Categories: MoQ | Testing
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

XAML Serialization FTW

June 23, 2008 07:19 by Will

Foreground

I wanted to record some of the things I learned recently about XAML serialization of generic dictionaries.  This subject is of interest to anybody who is interested in creating FrameworkElement objects that expose dictionary collections or those, like me, who are exploring the use of XAML serialization as an alternative for XML or other string-based serialization methods.

More...

Tags:
Categories: XAML
Actions: E-mail | Permalink | Comments (2) | Comment RSSRSS comment feed

Happy Father's Day!

June 15, 2008 14:46 by will

For those who don't know me personally, my parents both work and live in Poland, where my father works for a university, having retired from the University of Florida some years ago.  They spend the majority of the year there, splitting the rest between Ireland (where their only granddaughter is) and the States.

Since I haven't been able to reach them today, I'd just like to take the time here to wish my dad, Bill, a happy father's day.  If you read this before I reach you, just give me a call!  Love to you both!


Tags:
Categories:
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Gravatar Changes

June 9, 2008 09:49 by will

I received an email from Demitrious Kelly at Gravatar, who was nice enough to tell me that they are now supporting transparencies in their avatars again!  This is part of their recent changes which have also broke Blogengine.NET support for Gravatars.  Ah, well, nothing can be perfect.  The fix for this is out there, btw.

You'll need to visit the Gravatar site and reup your original, alpha blended PNG's again.

kick it on DotNetKicks.com


Tags:
Categories: Nuts
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed