Less Verbose Tutorial Dee

TutorialDee and such relational languages are nice - but their syntax can be reduced.

QompLanguage style b and e and other innovations to make the language concise, short, and easy to use will be helpful.

One idea of TutorialDee was to reduce verbosity of SQL such as getting rid of SELECT and such. If SQL was more precise, and didn't require so much dynamic string generation in our languages - it would be much easier to access and use. This is in fact one of the main benefits of a relational language designed such as TutorialDee - it is more precise and cutting than SQL. Why not take it further and make it even more cutting, clean, and precise than it already is? It can be reduced further.

As I have time, I will play with a cu t down, readable, precise version of TutorialDee.


Proscriptions, Prescriptions, Recommendations

Please allow longer words if one desires. In other words, if "v" is short for "var", then allow "var" also. Further, why use "b" and "e" when curly braces are well-established for such use? I'm not sure one-letter key-words are a good thing to use often.

Curly braces are already used elsewhere in TutorialDee, see below example. As for one letter key words not being a good thing to use often, this is obviously an opinion of yours.

Duplication (allowing more than one way of doing it) should be carefully considered, but also thought as evil at times, since doing things more than one way offers little benefit and places more bugs into the compiler, more room for error, more variations of code (instead of consistent code). This is one of my biggest gripes with Ruby - having too many ways to do the same thing.

One should use a teaching language (TutorialDee) - and then move to the sister non-learning language (more notative, less verbose, less like Pascal) after learning. Curly braces could be used too - using B and E keeps the sister language near identical and easy to migrate too though. This is the approach Qomp takes to delphi and fpc. If one knows TutorialDee, he should immediately know the sister language just by using syntax highlighting and seeing exact similarities.


Examples

 v myThings real rel {
  name char,
  x int,
  y int,
  z int
 } key {name}


Quotes and reasons why I prefer more precise, concise, brief languages:


Designing a "D" language along these lines sounds like a great idea. However, by definition, it will not be TutorialDee. TutorialDee has a well-defined syntax. If you change that syntax, you create a different language.

Remember that TutorialDee is primarily intended to be a teaching and illustration language. Its verbosity is intended to make the syntax intuitive even to those with minimal programming experience. "b", "e" and "int" may require explanation, depending on the audience. "BEGIN", "END" and "INTEGER"[1] should require less, if any, explanation. But, if you perceive a developer demand for a QompLanguage that is a TutorialDee-inspired "D", then please develop it.

--

[1] - In TutorialDee, keywords in caps is a coding convention; it is not a requirement of the TutorialDee specification or any implementation of which I'm aware.


EditText of this page (last edited May 23, 2008) or FindPage with title or text search