Eliminating impedance mismatch in C++

  • Authors:
  • Joseph (Yossi) Gil;Keren Lenz

  • Affiliations:
  • Technion---Israel Institute of Technology, Technion City, Haifa, Israel;Technion---Israel Institute of Technology, Technion City, Haifa, Israel

  • Venue:
  • VLDB '07 Proceedings of the 33rd international conference on Very large data bases
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recently, the C# and the VISUAL BASIC communities were tantalized by the advent of LINQ [18]---the Language INtegrated Query technology from Microsoft. LINQ represents a set of language extensions relying on advanced (some say hard to understand) techniques drawn from functional languages such as type inference, λ-expressions and most importantly, monads. The 3rd edition of C# just as the 9th of VISUAL BASIC allow programmer to directly access relational and XML-based databases from within the programming language. We show that very similar capabilities can be achieved in the C++ programming language without relying on any language extensions, compiler modifications, external processing tools, or any other vendor specific machinery: ARATAT is a C++ template library whose objective is type safe generation of SQL statements for access relational database systems. Learning curve is minimal since ARARAT resembles relational algebra, which is at the core of SQL.