This document discusses representing queries in general purpose programming languages. It covers relational algebra and monads as theoretical foundations. It also discusses specific query implementations in Haskell, C#, and F#. Haskell uses monad comprehensions while C# uses LINQ and F# allows custom query operators. Key topics are expressing queries, compiling queries to SQL efficiently, and dealing with functions in SQL code.