The Fundamental Concept of Programming language X

Bill Smith wsmith at mdbs.UUCP
Sat Dec 30 06:40:36 AEST 1989



I have an idea regarding programming language design that I would 
like to toss out in order to see how accurately it describes the
high level thinking that goes into a new programming language.

The idea is "fundamental concept."  The fundamental concept of
a language is the data structure, control structure or style issue
that distinguishes the language and must be understood in detail before 
proficient use of the programming language can begin.

I think one of the weaknesses of this idea is that many language have
more than one fundmamental concept and thus argument can begin what
the true fundamental concept is.  (In other words, the idea is ill defined
for some langauges.)

Here is a table of my list of fundamental concepts (The whole point of 
this exercise is to abstract away the syntax of the language and get to 
what conceptual background is necessary to understand the language.   
Once this is done, the language may be summarized in one or two sentences.  
Once this is done, one could write original summaries for a language 
and the work backwards till a possibly useful programming language is 
created.) Feel free to add or subtract from this list.   The idea is to 
generate discussion.

Language	Fundamental Concept

Lisp		Lists + dynamic scope
Scheme		Closures + static scope
Fortran 	Arrays + fixed allocation
C		pointers + dynamic allocation
Ada		Generics (?)
FORTH		Threaded code + postfix notation
Cobol		Formatting of data
BASIC		the statement as a unit of program
SNOBOL		Strings

Bill Smith
pur-ee!mdbs!wsmith

(Please let me know if this made it out.  I haven't seen anything in 
comp.lang.misc for almost a month and can't tell if is because it has
been inactive or because our feed to the group has been cut off
by the nearby institution.)
(My opinions only)



More information about the Comp.lang.c mailing list