Re: Storing data and code in a Db with LISP-like interface

From: Marshall Spight <>
Date: 29 Apr 2006 08:58:45 -0700
Message-ID: <>

Alvin Ryder wrote:
> Bob Badour wrote:
> > >>>
> > >>>The RM is powerful enough to represent business data, it rocks the
> > >>>business world but it utlimately lacks computational power and
> > >>>conviction to go all the way in every realm.
> > >>
> > >>Horseshit.
> > >
> > > Bob, I understand how to use the RM to solve many common business
> > > processing type problems but are you saying it /can/ be used in /every/
> > > realm? Can you please explain how it is applicable to the games
> > > programming and ai realms.
> >
> > Do games programming or ai realms need to manage data?
> Bob, all I'm saying is I'm a fan of Oracle and the such like when it
> comes to business systems but when it comes to games and ai they just
> ain't on the map, a clear zero. If you can convince me otherwise I'll
> be pleased to listen but meantime I don't know what you're trying to
> say.

First you were talking about "the RM" but now you've switched it to "Oracle and the such like." They are not the same thing. Comparably different: arithmetic and Excel. Do games programs do arithmetic? Do they need embedded Excel? Not the same question.

The RM is the pinnacle of data management. Application programming environments have traditionally not done much with data management, preferring instead to focus on a limited kind of imperative programming and various ad hoc methods for code reuse, such as OOP. In fact, most application programming languages haven't even really learned much from the realm of programming languages. Not every game programmer thinks this is good: see Tim Sweeny's presentation on the value of advanced type system features for game programming.

One day the application programming world will wake up and realize that data management is a big part of what programs do, and that there are vastly better tools out there than coding up a first-order-only, unsafe, barely-statically-checked procedure using an antique type system (C) or a powerful but byzantine one (C++). Our programming languages themselves would benefit from directly incorporating even the simplest of facilities from the relational algebra. Libraries should begin to include data management engines. Doing this in a principled way would be much better than the kitchen sink approach that existing libraries take.

Bob asks, directly to the point, "Do games programming or ai realms need to manage data?" Clearly they do; all programs manage data to a greater or lesser degree. Anything that manages data could benefit from the relational model. I say this not a DBA trying to push my field into other markes but as someone who has spent his life as an application programmer, and who has seen the light.

Marshall Received on Sat Apr 29 2006 - 17:58:45 CEST

Original text of this message