From QueryLanguageComparison:
Background: somebody proposed removing SmeQl from the sample languages listed in QueryLanguageComparison on the account there is no computer-runnable implementation currently available.
Apparently, there's at least one working implementation of SMEQL. Where can I download it?
- My head is an implementation, unless you are going to be a pro-silicone bigot. -top
- I assume you mean pro-silicon, because "pro-silicone" is... Something else. Now then: Where can I download your head?
- Er, download-able wasn't in the stated requirements.
- True, but "at least one working implementation" suggests at least one working implementation that works, and hence can be, er, worked by various & sundry masses, which implies it can be (at least) downloaded.
- I don't want to get into a semantics debate. What exactly do you want done about it? Deletion? That's too abrupt. How about a separate parallel topic for "experimental" query languages. I can live with that compromise. -t
- That compromise is highly acceptable. Suggest: 'QueryLanguageExperiments?'.
- I meant in relation to these samples/questions.
- I suspect you're objecting to that title. Then how about: 'ImaginaryQueryLanguageComparison?' for languages that are only implemented in people's heads.
- Most math is not "implemented", but we don't call it "imaginary". How about ExperimentalQueryLanguageComparison.
- Math isn't a programming language, so I'd consider it a FalseAnalogy. However, can't say I care much. Your title is fine.
- I gotta pull an EverythingIsRelative on that too. The distinction is blurry. In the least, there can be a large overlap. Related: IsProgrammingMath. But anyhow, thanks for your assistance in deriving a mutually-agreeable title.
Moved from EmbraceSql
- Was math useless until it was implemented on machines? That is your implication.
- Math runs on human brains. The RelProject runs on computers. TopsQueryLanguage runs on nothing. If it was anything more than a conventional procedural language, somewhat similar to ExBase, then it might be a worthy illustration of an alternative database language. As it stands, it offers nothing conceptually or notationally to warrant consideration. As a tool for thought, TopsQueryLanguage can simply be replaced with the phrase "mostly BASIC-like, but with built-in database tables" or simply "ExBase rebooted".
- Re: "Math runs on human brains. The RelProject runs on computers. TopsQueryLanguage runs on nothing." - Please explain how math is more runnable in brains than SmeQl?
- Math is an inexorable series of logical equivalences that facilitate provable reasoning. TopsQueryLanguage is a programming language that you can't use to write programs.
- Math is used for many purposes, not just for theorem proving. I'm sure before the first space probes went up using FORTRAN code, the formulas were written down as math equations. Math encodes a model, and so does programming code. That model may be used for theorem proving or implementing or testing the model or documenting model suggestions. In short, you are wrong, or at least giving an incomplete picture.
- Models used for reasoning are distinct from models intended to execute. Math is used for reasoning. TopsQueryLanguage is a programming language intended to execute... ...that doesn't. Some programming languages do facilitate reasoning, because they use notations or semantics that make them ideally suited for reasoning. LISP is one; Prolog is another. TopsQueryLanguage isn't, because it's a highly conventional language, conceptually equivalent to innumerable others. It has nothing to offer that isn't equivalently achieved with "mostly BASIC-like with built-in database tables" or simply "ExBase rebooted."
- You are making up stuff. How is it "BASIC like"? You appear to be trying to boost Rel's reputation by attacking SmeQl. But that can't change the fact that Rel sucks. [[I removed some of the edgier wording since. -t]]
- Is your rudeness necessary? I'll be the first to admit, as Rel's author, that Rel sucks in innumerable ways. However, it's a usable language and a usable DBMS. That's infinitely better -- for pretty much any definition of "better" -- than a language that can't be used for anything.
- YOU started the rudeness, hypocrite! And there's no useful reason to keep pointing out that SmeQl lacks and implementation repeatedly multiple times in multiple places redundantly other than being an ass.
- In various places, you've allowed it to appear that SmeQl is a language that can be used. I've pointed out the fact that it cannot. How is that rude?
- If you can't see the rudeness above, I can't help you. Note that there's already a topic on it: ExperimentalQueryLanguageDiscussion so that we don't have to keep reinventing this argument. This should be moved there perhaps. Maybe you can then also flesh out your vague notions of what's a "modeling language" and what isn't.
- I re-read the above exchange and I see no rudeness on my part. I've been, at worst, direct and truthful. Factual technical truth is never rude. Calling someone an "ass", however, most certainly is.
- "Facts" my ass! There's like four lies or unproven claims in one sentence. Even if SmeQl was "conventional", there's no mathematical proof that "conventional" languages are worse at modeling ideas. You pulled that out of your ass to pump up Rel's reputation.
- I haven't claimed "conventional" languages are worse at modelling ideas. What I have claimed is that using SmeQl for modelling ideas is redundant. As for "four lies or unproven claims", could you identify them? As for Rel's reputation, I don't have to pump it up. It already has an excellent reputation in the RDBMS community.
- Why is it allegedly redundant to BASIC? You are contradicting yourself: it's redundant to BASIC, yet lacks an implementation?
- As a conceptual or "thought" tool, BASIC already covers the same territory and it's executable so you can try out your thoughts.
- That's patently false! BASIC does diddly squat to address items found in HowOtherQueryLanguagesAddressSqlFlaws.
- Indeed. That is why I wrote "mostly BASIC-like, but with built-in database tables" above, rather than "entirely BASIC-like".
- Superficially, Rel resembles Ada. That doesn't necessarily mean it's almost the same as Ada. Your complaint is non-specific. It could be reworked into a Lisp-like syntax, but that wouldn't necessarily change its key nature.
- Superficially, Rel does resemble Ada and PL/I too. However, the resemblance is only syntactic and therefore superficial. SmeQl, however, is BASIC with tables tacked on, which is nothing more than ExBase. How does it differ, semantically, from ExBase?
- That's utter bullshit! For one, there's no explicit loops and no explicit IF statements. Second, "tacking on tables" is a non-trivial endeavor if you want to do it right. The only real resemblance to ExBase is that the granularity of table-oriented statements is smaller than in SQL. It's closer to RelationalAlgebra, but pre-fix instead of in-fix. "Prefix RelationalAlgebra" is a far more accurate description than "ExBase-like".
- Relational algebra isn't any-fix. There are various notations for relational algebra, some of which are prefix, some postfix, and some in-fix. What does your SmeQl notation offer, in terms of a tool for reasoning, that the others do not?
- See LearningWithoutImplementation. And I meant relational algebra as "commonly represented". (I've never seen it represented with prefix notation. If you see such, I'd be interested to examine it.)
See also: LearningWithoutImplementation, HowOtherQueryLanguagesAddressSqlFlawsDiscussion (yes, we keep having the same argument)
CategoryHumor {I didn't quite intend humor. "Illustrative sarcasm" was more my goal. -t}