Sign in
Yet Another Language Geek
Translate This Page
Translate this page
Powered by
Microsoft® Translator
Options
Email Blog Author
RSS for posts
Atom
RSS for comments
OK
Search
Tags
Anonymous Types
C#
Compilers
Design Patterns
Functional Programming
Lambdas
Languages
Personal
Programming
Queries
Rx
Scheme
Theory
Types
Volta
Archive
Archives
November 2009
(1)
January 2008
(1)
December 2007
(4)
May 2007
(2)
March 2007
(4)
February 2007
(6)
January 2007
(9)
December 2006
(6)
January 2006
(1)
October 2005
(1)
September 2005
(1)
Posts
Subscribe via RSS
Sort by:
Most Recent
|
Most Views
|
Most Comments
Excerpt View
|
Full Post View
Yet Another Language Geek
A Brief Introduction to the Reactive Extensions for .NET, Rx
Posted
over 4 years ago
by
wesdyer
28
Comments
Wow, it has been a long time since I have blogged. Yesterday, we made the first official public release of Rx on devlabs . And that means that I can now talk about what has been on my mind for the past while: Rx. What is Rx? Rx...
Yet Another Language Geek
The Marvels of Monads
Posted
over 5 years ago
by
wesdyer
36
Comments
If the word "continuation" causes eyes to glaze over, then the word "monad" induces mental paralysis. Perhaps, this is why some have begun inventing more benign names for monads. These days, monads are the celebrities of programming...
Yet Another Language Geek
Continuation-Passing Style
Posted
over 6 years ago
by
wesdyer
9
Comments
There are some technical words that cause quite a stir even amongst geeks. When someone says the word "continuation" , people's eyes glaze over and they seek the first opportunity to change the subject. The stir is caused because...
Yet Another Language Geek
Musings on Software Testing
Posted
over 6 years ago
by
wesdyer
16
Comments
It was spring 2003, I had just finished a weekend camping in the southern Arizona desert. I was dusty and physically exhausted from hours of playing paintball. For those who have never been in those parts, imagine long straight roads with...
Yet Another Language Geek
Volta and You
Posted
over 6 years ago
by
wesdyer
19
Comments
Yesterday, Volta was made publicly available for the first time. It is an experimental project in the early stages of development. The team decided to release an early technology preview so that developers everywhere can help guide the project...
Yet Another Language Geek
Volta: Redefining Web Development
Posted
over 6 years ago
by
wesdyer
26
Comments
Anyone who writes web applications knows that web development is not easy. Developers wrangle with a soup of technologies distributed across multiple tiers. We live in a world where programmers accept the fact that they need to know four or...
Yet Another Language Geek
More on Partial Methods
Posted
over 6 years ago
by
wesdyer
16
Comments
Thank you everyone for the feedback. If you have any more to say then please do express your opinion (and yes it is valued ;). I think there has been a bit of misunderstanding about what partial methods really are. So let's set the matter straight. Here...
Yet Another Language Geek
In Case You Haven't Heard
Posted
over 6 years ago
by
wesdyer
93
Comments
It has been a while since I have posted. We have been working hard to get Orcas beta 1 and beta 2 done. So I apologize for the long interlude between posts but I hope that you are enjoying beta 1 and that you are looking forward to beta 2. Now that beta...
Yet Another Language Geek
All About Iterators
Posted
over 6 years ago
by
wesdyer
17
Comments
Design patterns have been all of the rage for a number of years now. We have design patterns for concurrency, user interfaces, data access, object creation, and so many other things. The seminal work on the topic is the Gang of Four 's book, Design Patterns...
Yet Another Language Geek
Performance Engineering
Posted
over 6 years ago
by
wesdyer
8
Comments
Recently, many people have asked me about the performance of Linq. The questions have ranged from the broad, "How can I analyze the performance of code using Linq?", to the very specific, "Why is the performance of this code sample not what I expected...
Yet Another Language Geek
Extending the World
Posted
over 6 years ago
by
wesdyer
26
Comments
When people think of C# 3.0 and Linq, they commonly think of queries and databases. The phenomenal work of the Linq to SQL guys provides ample reason to think of it this way; nevertheless, C# 3.0 and Linq are really much much more. I have discussed a...
Yet Another Language Geek
Immutability, Purity, and Referential Transparency
Posted
over 6 years ago
by
wesdyer
32
Comments
How often do you write code that just works? It seems to happen so rarely that I find myself suspicious if code does just work. When was the last time that you wrote a non-trivial program that had no compile errors on the first try and then ran fine as...
Yet Another Language Geek
Linq to ASCII Art
Posted
over 6 years ago
by
wesdyer
44
Comments
Last night I was searching for an audio version of Painters and Hackers by Paul Graham . Pretty soon I had completely forgotten about the book and found myself reading the Wikipedia article about Hackers . Isn't Internet search great? Of all of the things...
Yet Another Language Geek
The Virtues of Laziness
Posted
over 6 years ago
by
wesdyer
22
Comments
It seems that I riled some people up with my blog post yesterday. After some thought, I think the primary reason that there was some backlash is because some people feel that I violated one of the sacred principles of FP: lists are *the* data structure...
Yet Another Language Geek
Why all the love for lists?
Posted
over 6 years ago
by
wesdyer
15
Comments
One of the things that I have noticed when participating in interviews with potential candidates is that most candidates have a favorite data structure. Presumably this is the data structure that they feel the most comfortable with. The problem is that...
Yet Another Language Geek
Baby Names, Nameless Keys, and Mumbling
Posted
over 6 years ago
by
wesdyer
20
Comments
Baby Names I recently finished reading Freakonomics . It is a fascinating book about a number of strange phenomena. Its topics range from the economics of dealing crack to cheating in sumo wrestling. Among the sundry topics is a discussion concerning...
Yet Another Language Geek
Memoization and Anonymous Recursion
Posted
over 6 years ago
by
wesdyer
11
Comments
Keith Farmer brought it to my attention that there is at least a little confusion about how closures work. Hopefully, I can help shed a little light on the subject. The question is why doesn't the following code actually memoize fib in the call to Test...
Yet Another Language Geek
Anonymous Recursion in C#
Posted
over 6 years ago
by
wesdyer
34
Comments
Recursion is beautiful and lambdas are the ultimate abstraction. But how can they be used together? Lambdas are anonymous functions and recursion requires names. Let's try to define a lambda that computes the nth fibonacci number. Func<int, int>...
Yet Another Language Geek
Currying and Partial Function Application
Posted
over 6 years ago
by
wesdyer
7
Comments
When I first heard the term Currying , I thought immediately of tasty Thai and Indian food. To my dismay, I found that the conversation was not about wonderful spices but rather about transforming a function that takes n arguments into a function that...
Yet Another Language Geek
Function Memoization
Posted
over 6 years ago
by
wesdyer
20
Comments
One of my favorite pastimes is playing games. No not XBox 360, PS3, or Wii games nor other computer games, but board games, card games, and other such games. It's probably because I'm from a large family - I have 8 siblings - and we would often spend...
Yet Another Language Geek
Video on Linq Queries and Delayed Evaluation
Posted
over 6 years ago
by
wesdyer
11
Comments
I recently recorded a video with Charlie Calvert about Linq queries and delayed evaluation . You can find it here (streaming video). Download it here.
Yet Another Language Geek
Why Functional Programming is Important in a Mixed Environment
Posted
over 6 years ago
by
wesdyer
12
Comments
While my last post addressed how to go about learning to think functionally, it did not address why a programmer should embark on the journey in the first place. Why is learning to think functionally important, especially in a mixed environment like C#...
Yet Another Language Geek
Thinking Functionally
Posted
over 6 years ago
by
wesdyer
8
Comments
Every programmer has a story about how he got his start. My own journey began at age 14 when I was bored to death while completing a second-year algebra assignment. My father who was working on the couch with a brand new laptop showed me that I could...
Yet Another Language Geek
About Queries
Posted
over 6 years ago
by
wesdyer
5
Comments
This concludes my series of posts about queries. I will still discuss them occassionally and if anyone has any specific questions then I would be very glad to address them. Query Expression Posts 1. Comprehending Comprehensions What are queries? How are...
Yet Another Language Geek
Another Model for Query Interpretation
Posted
over 6 years ago
by
wesdyer
4
Comments
An imperative model for interpreting Linq to Objects queries has already been discussed , but are there any other models or method for interpreting queries? It turns out that there are other models. Linq to SQL queries operate in a completely different...
Page 1 of 2 (36 items)
1
2