Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ncar!ames!pacbell!rtech!billc@rtech.UUCP
From: billc@rtech.UUCP (Bill Coffin)
Newsgroups: comp.databases
Subject: Re: Parsing Query Languages in the Client or Server
Message-ID: <3699@rtech.rtech.com>
Date: 26 Sep 89 00:14:13 GMT
References: <17466@pasteur.Berkeley.EDU>
Sender: news@rtech.rtech.com
Lines: 40

From article <17466@pasteur.Berkeley.EDU>, by mao@eden (Mike Olson):
>> From: forrest@sybase.com (Jon Forrest)
> 

Hi Jon, Hi Mike.  For those of you that just joined us, I also worked at
Britton-Lee (er, ah, "Sharebase").  I now work at RTI.

Jon, I don't think you can avoid a front-end parse if you support
host-language embeddings.  You still have to poke around for host-language
variables and other information at compile time.  

Personally, I think RTI (oh yes, and Sybase too) have the right idea in
sending text:

  * Interoperability is simpler, and will get simpler yet as vendors
    continue to converge on a standard SQL.  
    
  * If you have a parse-tree interface, you don't know who might have
    written the parser -- you might get some strange stuff.  There were lot's
    of eccentric parser that talked to BLI machines, and BLI was not very
    robust in the face of parse-tree berserkness.
    
  * When BLI started up they expected VARs to write these parsers.  VARs
    decided this was too hard, and thunderously ignored BLI.  BLI had to
    write a parser and port it everywhere.  If you want VARs and others to
    get involved, it behooves you to support a non-befuddling interface.

  * Mike argues that taking away the parse-tree interface makes it impossible
    to implement new languages.  I don't believe this -- BLI's parse-trees
    are semantically QUEL (IDL) oriented, so it was just about impossible to 
    do a different language.  I implemented Britton-Lee's first version of 
    SQL, translating SQL into these parse trees.  It was a dreadful hack that
    couldn't adequately model SQL.  (And when BLI went into nosedive mode,
    yours-truly's head was amongst those that rolled.)  I don't think it's
    possible to do an interface that is independent of the query-language
    and also non-procedural.


billc@rtech.uucp ( or, if you must, {sun,pyramid,mtxinu,amdahl}!rtech!billc )
<> <> <>