From: H. S. Lahman on
Responding to Priya1 wrote:

> What are the advantages os SQL over third generation Language?

Sounds like another homework problem.

SQL /is/ a 3GL. It is just highly specialized to support Data Modeling.
If you want to model data and access it in a very generic fashion,
then SQL is pretty much the only game in town.

OTOH, if you are solving problems where persistence access is of
secondary concern (i.e., applications beyond RAD CRUD/USER pipelines),
then SQL is not a very good language to use because it doesn't handle
dynamic issues well, doesn't support abstraction, it is not very
maintainable, and it is just plain ugly. So in that case one should
limit SQL usage to the implementation of a subsystem whose mission is to
actually talk to the persistence mechanisms.


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
hsl(a)pathfindermda.com
Pathfinder Solutions -- Put MDA to Work
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
(888)OOA-PATH



From: Mikito Harakiri on

topmind wrote:
> Mikito Harakiri wrote:
> > priya1 wrote:
> > > What are the advantages os SQL over third generation Language?
> >
> > Here are couple of paragraphs from preface of my advanced SQL
> > programming book (due in may):
> >
> > <quote>
> > SQL is a very successful language. This might be surprising to a
> > newcomer who generally find SQL a little bit old fashioned compared to
> > "modern" programming languages. It's almost as old as COBOL and it
> > looks like FORTRAN,
>
>
> SQL is about 15 years younger than COBOL, so "almost as old" is
> misleading.

Wikipedia: "COBOL was initially created in 1959"
Codd's seminal paper "A Relational Model of Data for Large Shared Data
Banks" is dated 1970.

> What I don't get is why other relational languages don't make a run at
> SQL? The only serious attempt is from the Date group (Tutorial D). (I
> have also drafted a relational language myself, tentatively called
> SMEQL.)

There was a discussion at /. Synopsis:
"What about newer relational languages? Why, for example, the latest
and greatest Tutorial D didn't take over the world? It has improved
notation, better NULL handling, and pure set semantics. This is not
enough however; a New and Improved query language had better be leaps
and bounds ahead, not just simpler to type."

From: Mikito Harakiri on

Mikito Harakiri wrote:
It's almost as old as COBOL and it
> > > looks like FORTRAN,
> >
> >
> > SQL is about 15 years younger than COBOL, so "almost as old" is
> > misleading.
>
> Wikipedia: "COBOL was initially created in 1959"
> Codd's seminal paper "A Relational Model of Data for Large Shared Data
> Banks" is dated 1970.

Well, the time precedence typo in your message aside, the 15 years gap
is just about right. Perhaps, the better phrasing is:

"It's almost as old as C (which spawned at least 3 newer generation
languages) and it looks like COBOL, why isn't it obsolete yet?"

Thank you for correction.

From: topmind on
Mikito Harakiri wrote:
> topmind wrote:
> > Mikito Harakiri wrote:
> > > priya1 wrote:
> > > > What are the advantages os SQL over third generation Language?
> > >
> > > Here are couple of paragraphs from preface of my advanced SQL
> > > programming book (due in may):
> > >
> > > <quote>
> > > SQL is a very successful language. This might be surprising to a
> > > newcomer who generally find SQL a little bit old fashioned compared to
> > > "modern" programming languages. It's almost as old as COBOL and it
> > > looks like FORTRAN,
> >
> >
> > SQL is about 15 years younger than COBOL, so "almost as old" is
> > misleading.
>
> Wikipedia: "COBOL was initially created in 1959"
> Codd's seminal paper "A Relational Model of Data for Large Shared Data
> Banks" is dated 1970.


Codd did *not* create SQL, contrary to popular belief. Early test
relational languages were more math-like. IBM later decided to COBOLify
them, allegedly thinking that made it more palattable to managers
(Dilbertian PHB view).


>
> > What I don't get is why other relational languages don't make a run at
> > SQL? The only serious attempt is from the Date group (Tutorial D). (I
> > have also drafted a relational language myself, tentatively called
> > SMEQL.)
>
> There was a discussion at /. Synopsis:
> "What about newer relational languages? Why, for example, the latest
> and greatest Tutorial D didn't take over the world? It has improved
> notation, better NULL handling, and pure set semantics. This is not
> enough however; a New and Improved query language had better be leaps
> and bounds ahead, not just simpler to type."


I generally agree, but for those who do queries all day a somewhat
better language would be worth it. I think there is room for a good
"mathy" standard for power query worriors, and the more verbose
English-like SQL for occasional users.

Actually if SQL standard(s) added named virtual views that would be a
huuuuge leap forword for more complicated queries. That way you can
name sub-queries instead of having to nest them. Big SQL is too damned
nesty, leading to run-on sentences.

But there are things that SQL is still crappy at even with that fix.
For example, often you want to say "get all columns except these few".
In SQL you have to name them all, minus the excluded ones. SMEQL allows
one to use the query language's built-in set tools to "calculate"
column lists so that you could specify all colums minus another list.
For stuff like this, the "ME" stands for "meta enabled".

-T-

From: topmind on
H. S. Lahman wrote:
> Responding to Priya1 wrote:
>
> > What are the advantages os SQL over third generation Language?
>
> Sounds like another homework problem.
>
> SQL /is/ a 3GL.


Depends on how you define GL's. What do you consider an example of a
4GL?


> It is just highly specialized to support Data Modeling.
> If you want to model data and access it in a very generic fashion,
> then SQL is pretty much the only game in town.
>
> OTOH, if you are solving problems where persistence access is of
> secondary concern (i.e., applications beyond RAD CRUD/USER pipelines),
> then SQL is not a very good language to use because it doesn't handle
> dynamic issues well, doesn't support abstraction, it is not very
> maintainable, and it is just plain ugly.


Are you talking about SQL specificly, or relational in general?
"Doesn't support abstraction" is a rather sweeping claim.

I am trying to see if there is likely to be yet another
OO-vs-Relational battle breaking out here.


> So in that case one should
> limit SQL usage to the implementation of a subsystem whose mission is to
> actually talk to the persistence mechanisms.
>
>
> *************
> There is nothing wrong with me that could
> not be cured by a capful of Drano.
>
> H. S. Lahman

-T-

First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9 10 11 12
Prev: Use Case Point Estimation
Next: delegation vs. inheritance