On a quest for the silver bullet..

Interviewing Clemens Vasters

In december Lars Wilhelmsen and I made an interview with Clemens Vasters. We talk about different topics around the new Azure and Cloud technologies from Microsoft. Clemens Vasters works as a Program Manager in the .NET Online Services team and is responsible for the ‘Service Bus’ feature area of Microsoft’s upcoming Cloud Platform.
Børge Hansen from [...]

March 4th, 2009 at 14:09 (631) | Comments & Trackbacks (0) | Permalink


Refactoring

To make it clear: “Refactoring” (as the term made famous by Martin Fowler in his great book with the same name), means to change the code without changing its behavior. Too many people talk about refactoring when changing some of the behavior of a system. This interpretation is just plain wrong.
This distinction is not just [...]

January 19th, 2009 at 20:54 (913) | Comments & Trackbacks (0) | Permalink


Creating a dynamic xml reader with C# 4.0

“The static type dynamic” was the catchphrase at PDC’08 when talking about what’s new in C# 4.0. The dynamic type seems to be introduced mainly to simplify the code you write when doing Com interop. But many also see this as a step towards the dynamic languages for C#. I like C#. I also like [...]

January 5th, 2009 at 23:28 (020) | Comments & Trackbacks (3) | Permalink


The Boo extensibility tutorials

Boo’s compiler extensibility is an extremely nice feature which sometimes make me talk about the next generation of programming languages. For me it’s about being able to create frameworks in a more powerful way, not being restricted by language syntax.
One problem with Boo is that lack of tutorials and help to everyone that wants to [...]

December 27th, 2008 at 9:32 (439) | Comments & Trackbacks (0) | Permalink


Boo AstMacros explained

In this post I am going to explain how you write your own macros in Boo. Writing macros is a powerful way to use the compiler extensibility built into Boo. Macros in Boo actually let you create your own keywords which are resolved at compile time.
Before you read on, these posts might be useful to [...]

December 22nd, 2008 at 23:15 (010) | Comments & Trackbacks (7) | Permalink


Boo AstAttributes explained

Writing extensions for Boo is a very powerful thing. In this post I’m going to explain how to write AstAttributes in Boo. These attributes are much more than normal .net attributes. They are one of the ways you can extend the Boo language.
Before you read on, these posts might be useful to read:

Boo Getting Started
Boo [...]

December 18th, 2008 at 0:31 (063) | Comments & Trackbacks (6) | Permalink


Boo extensions explained

Boo’s compiler extensibility means that you can write extensions that run in the compiler when your Boo code compiles. This powerful feature enables you to actually extend the Boo language itself. In this post I will try to explain what this basically means.
Say you want to make a new keyword in Boo, called “WriteHelloWorld” (yes, [...]

December 6th, 2008 at 19:41 (862) | Comments & Trackbacks (2) | Permalink


Why Microsoft should introduce compiler extensibility

At PDC08 I attended a presentation about “Contracts” (and Pex). “Contracts” is the result of the Spec# work. It is an attempt to enable Design by Contract (DbC) in .Net. Design by Contract is a concept popularized by Bertrand Meyer, and it is fully implemented and integrated in the language Eiffel.
Microsoft decided that DbC [...]

October 31st, 2008 at 23:54 (037) | Comments & Trackbacks (1) | Permalink


What makes Boo great?

About five years ago Rodrigo Barreto de Oliveira created the programming language Boo. It is a statically typed .Net language that incorporates some very interesting features not seen in any of the mainstream .net languages today.
What makes Boo cool?
The cool thing about Boo is its no nonsense approach. I really enjoy its focus on [...]

September 28th, 2008 at 10:03 (461) | Comments & Trackbacks (4) | Permalink


Boo: Getting started

Want to look into Boo? Let me give you a quick guide to getting the tools you need.
Development environment
For the time being I recommend you do your coding in Sharpdevelop. Download and install the latest here. You should also download the latest Boo-distro (the binaries), and move (and overwrite) the Boo-files into The sharpdevelop [...]

September 9th, 2008 at 8:52 (411) | Comments & Trackbacks (3) | Permalink