A Model for Query Interpretation

Evaluating Query Expressions After writing the code to translate query expressions and remove transparent identifiers, one of my first desires was to write a tool that would generate query expressions to test the correctness of the code.  Of course, I already had a set of programmer tests in place to make sure that the code…

14

Reading and Writing Queries

Now that we have discussed some of the underpinnings of query expressions, we can turn our attention to how to use them. As has already discussed, most people who see query expressions immediately think of SQL and often even mistake query expressions for embedded SQL.  While it is true that there is a similarity in the…

3

Thus Quoth the Humble Programmer

I love Scheme!  It is such a beautiful language.  I was first introduced to it during college.  At that time, I thought it was an interesting language but I didn’t see the power of the language until later.  That moment came when I experienced reading The Structure and Interpretation of Computer Programs.  It was a…

6

Transparent Identifiers

My last post described in detail how query expressions in C# are translated, but I have a confession to make.  I did a little bit of hand waving through one part of the translation rules.  The astute reader (whomever that is, whenever I read such things I always wonder, “Am I that astute reader?”) may…

9

Comprehending Comprehensions

Not long ago, I was reading through some articles posted on programming.reddit.com when I came across an article claiming that C# is trying to be a dynamic language.  One user posted a comment that mentioned that C# 3.0 included among other things “embedded SQL”.  Unfortunately, it seems that there is still some confusion about what…

7

Types of confusion

  When I began programming in my early teens, I was very excited to learn about programming and also excited to become a “real” programmer.  I remember picking up a book from the library that purported to teach what real programmers were like.  I absorbed the material and enjoyed every page.  I can only remember a handful…

15

Saving the State of Enumerators

Cyrus and I were writing some code together the other day and we used an interesting data structure that I wanted to share with you.  This data structure I will call a chain which is essentially a immutable singlely linked list. interface IChain<T> : IEnumerable<T>{   IChain<T> Next { get; }   T Value { get; }} It is…

4