Naming: BEGIN ~ END vs LIVE ~ EVIL block structured languages

525 views Asked by At

Curly Bracket languages are well known: (wikipedia)

Other programming languages can have BEGIN ~ END vs LIVE ~ EVIL block structuring. eg

A) BEGIN ~ END, DO ~ END, IF ~ END IF - examples: Ada, Modula, Pascal, PL/I, Ruby etc...

B) IF ~ FI, DO ~ OD, CASE ~ IN ~ OUT ~ ESAC - examples: Action!, ALGOL 68, Bourne shell, Cool, ELLA, Guarded Command Language, Lucid, Opal, Maple, Mary, Polyglot, Promela etc...

What are the official (or-else reasonable) names to differentiate the between the two different styles A) & B) of block structuring ?

4

There are 4 answers

0
NevilleDNZ On BEST ANSWER

As a pun on "reversed" I suggest: IF ~ FI, DO ~ OD, CASE ~ IN ~ OUT ~ ESAC as "reverent" block structuring.

The first case of "reverent" block structuring might be found in http://ALGOL Bulletin - ISSN: 0084-6198, however I cannot find the originators name or an exact posting.

Hence also: BEGIN ~ END, DO ~ END, IF ~ END IF as "irreverent" block structuring.

An example of a technical palindrome that appears much earlier (and outside of computing) would be Lord Kelvin's Mho (℧).

0
samuil On

I fear that answer may be dissatisfying. Only names I heard of were Curly bracket programming languages and Non-curly-bracket programming languages :)

0
user120242 On

http://en.wikipedia.org/wiki/Curly_bracket_programming_language

FTA:

Curly brace or bracket programming languages are those which use balanced brackets ({ and }), also known as "squiggly brackets", "brace brackets" or simply "braces") to make blocks in their syntax or formal grammar, mainly due to being C-influenced. The main alternate style is the use of paired keywords, although some languages (notably Python and Occam) instead use an off-side style, and Lisp uses parentheses.

I take from that as meaning:
{} = curly bracket programming languages
BEGIN END = paired keyword
indentation = off-side

Not to say that Wikipedia is definitive, but it seems as close to "official" names as you will get, and most people would probably immediately know what you are talking about if you refer to them as such.

0
hobbs On

Algol actually started with if - then - begin - end syntax before moving to if - then - fi syntax, so it's probably best to avoid calling anything "Algol-like". A lot of people would probably get your drift if you called the begin - end style "Pascal-like" bracketing, and the if - fi style "sh-like" bracketing.