Yet Another Language Geek

A Brief Introduction to the Reactive Extensions for .NET, Rx

Wow, it has been a long time since I have blogged.  Yesterday, we made the first official...

Author: wesdyer Date: 11/18/2009

The Marvels of Monads

If the word "continuation" causes eyes to glaze over, then the word "monad"...

Author: wesdyer Date: 01/10/2008

Continuation-Passing Style

There are some technical words that cause quite a stir even amongst geeks.  When someone says...

Author: wesdyer Date: 12/22/2007

Musings on Software Testing

It was spring 2003, I had just finished a weekend camping in the southern Arizona desert.  I...

Author: wesdyer Date: 12/07/2007

Volta and You

Yesterday, Volta was made publicly available for the first time.  It is an experimental project...

Author: wesdyer Date: 12/06/2007

Volta: Redefining Web Development

Anyone who writes web applications knows that web development is not easy.  Developers wrangle...

Author: wesdyer Date: 12/05/2007

More on Partial Methods

Thank you everyone for the feedback. If you have any more to say then please do express your opinion...

Author: wesdyer Date: 05/31/2007

In Case You Haven't Heard

It has been a while since I have posted. We have been working hard to get Orcas beta 1 and beta 2...

Author: wesdyer Date: 05/23/2007

All About Iterators

Design patterns have been all of the rage for a number of years now. We have design patterns for...

Author: wesdyer Date: 03/23/2007

Performance Engineering

Recently, many people have asked me about the performance of Linq. The questions have ranged from...

Author: wesdyer Date: 03/20/2007

Extending the World

When people think of C# 3.0 and Linq, they commonly think of queries and databases. The phenomenal...

Author: wesdyer Date: 03/09/2007

Immutability, Purity, and Referential Transparency

How often do you write code that just works? It seems to happen so rarely that I find myself...

Author: wesdyer Date: 03/01/2007

Linq to ASCII Art

Last night I was searching for an audio version of Painters and Hackers by Paul Graham. Pretty soon...

Author: wesdyer Date: 02/23/2007

The Virtues of Laziness

It seems that I riled some people up with my blog post yesterday. After some thought, I think the...

Author: wesdyer Date: 02/13/2007

Why all the love for lists?

One of the things that I have noticed when participating in interviews with potential candidates is...

Author: wesdyer Date: 02/12/2007

Baby Names, Nameless Keys, and Mumbling

Baby Names I recently finished reading Freakonomics. It is a fascinating book about a number of...

Author: wesdyer Date: 02/11/2007

Memoization and Anonymous Recursion

Keith Farmer brought it to my attention that there is at least a little confusion about how closures...

Author: wesdyer Date: 02/05/2007

Anonymous Recursion in C#

Recursion is beautiful and lambdas are the ultimate abstraction. But how can they be used together?...

Author: wesdyer Date: 02/02/2007

Currying and Partial Function Application

When I first heard the term Currying, I thought immediately of tasty Thai and Indian food. To my...

Author: wesdyer Date: 01/29/2007

Function Memoization

One of my favorite pastimes is playing games. No not XBox 360, PS3, or Wii games nor other computer...

Author: wesdyer Date: 01/25/2007

Video on Linq Queries and Delayed Evaluation

I recently recorded a video with Charlie Calvert about Linq queries and delayed evaluation. You can...

Author: wesdyer Date: 01/25/2007

Why Functional Programming is Important in a Mixed Environment

While my last post addressed how to go about learning to think functionally, it did not address why...

Author: wesdyer Date: 01/18/2007

Thinking Functionally

Every programmer has a story about how he got his start. My own journey began at age 14 when I was...

Author: wesdyer Date: 01/15/2007

About Queries

This concludes my series of posts about queries. I will still discuss them occassionally and if...

Author: wesdyer Date: 01/09/2007

Another Model for Query Interpretation

An imperative model for interpreting Linq to Objects queries has already been discussed, but are...

Author: wesdyer Date: 01/08/2007

Having Trouble with Queries

A Funny Joke and a Sad Joke There is a joke that goes something like this: Two men are hopelessly...

Author: wesdyer Date: 01/04/2007

How Linq to Objects Queries Work

If you have ever tried to step through a Linq to Objects query in the debugger, you may have been...

Author: wesdyer Date: 01/02/2007

A Model for Query Interpretation

Evaluating Query Expressions After writing the code to translate query expressions and remove...

Author: wesdyer Date: 12/26/2006

Reading and Writing Queries

Now that we have discussed some of the underpinnings of query expressions, we can turn our attention...

Author: wesdyer Date: 12/25/2006

Thus Quoth the Humble Programmer

I love Scheme! It is such a beautiful language. I was first introduced to it during college. At that...

Author: wesdyer Date: 12/22/2006

Transparent Identifiers

My last post described in detail how query expressions in C# are translated, but I have a confession...

Author: wesdyer Date: 12/22/2006

Comprehending Comprehensions

Not long ago, I was reading through some articles posted on programming.reddit.com when I came...

Author: wesdyer Date: 12/21/2006

Types of confusion

When I began programming in my early teens, I was very excited to learn about programming and also...

Author: wesdyer Date: 12/20/2006

Saving the State of Enumerators

Cyrus and I were writing some code together the other day and we used an interesting data structure...

Author: wesdyer Date: 01/13/2006

captivated foreach statements

I am sure that most people who use C# regularly use the foreach construct. Intimately understanding...

Author: wesdyer Date: 10/06/2005

the first step

I suppose that I should begin with an introduction. My name is Wes Dyer and I am a developer on the...

Author: wesdyer Date: 09/28/2005