Article View: comp.lang.misc
Article #784Re: The Fundamental Concept of Programming language X
From: Aaron Sloman
Date: Mon, 15 Jan 1990 09:31
Date: Mon, 15 Jan 1990 09:31
52 lines
2828 bytes
2828 bytes
wsmith@mdbs.UUCP (Bill Smith) writes:
> Date: 29 Dec 89 19:40:36 GMT
> Organization: MDBS Inc., Lafayette, IN
>
> 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.
>
POP-11
Block-structure with multi-bracket syntax, collection of
abnormal exit procedures (chain, exitfrom, exitto), use of
"open" stack (Like Forth), "dynamic local expressions",
lexical and dynamic binding, most kinds of numbers, records,
vectors, arrays, strings, "words" (in a dictionary)
procedures as data objects, stream processing via repeaters
and consumers, list processing including pattern matcher,
dynamic lists (limited lazy evaluation), lightweight
processes, properties, class-procedures, syntax extendable
by code-planting as well as macro expansion, autoloadable
libraries, OOP subsystem, incremental compiler, screen
editor as a sub-routine.
(AIM: an easy language for beginners that "grows" as you
learn, and remains useful for advanced R&D).
Actually - that list applies only to Poplog Pop-11. Alphapop (Byte
May 1988) and earlier dialects (POP2, POP-10, WPOP) contain a
subset.
All dialects of POP have at least the open stack, dynamic binding
of variables, garbage collector, incremental compilation, records,
arrays, vectors, strings, words, list processing, partial
application.
Also, I have mixed up language features with other features. But
from the point of view of a user there's no sharp boundary.
Aaron Sloman,
School of Cognitive and Computing Sciences,
Univ of Sussex, Brighton, BN1 9QH, England
EMAIL aarons@cogs.sussex.ac.uk
aarons%uk.ac.sussex.cogs@nsfnet-relay.ac.uk
aarons%uk.ac.sussex.cogs%nsfnet-relay.ac.uk@relay.cs.net
BITNET: aarons%uk.ac.sussex.cogs@uk.ac
UUCP: ...mcvax!ukc!cogs!aarons
or aarons@cogs.uucp
Technical Details
Message-ID:
<1993@syma.sussex.ac.uk>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!uunet!mcsun!ukc!icdoc!syma!aaronsReferences:
<1470@mdbs.UUCP>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!uunet!mcsun!ukc!icdoc!syma!aarons From: aarons@syma.sussex.ac.uk (Aaron Sloman) Newsgroups: comp.lang.misc,comp.lang.c Subject: Re: The Fundamental Concept of Programming language X Keywords: programming languages, abstractions Message-ID: <1993@syma.sussex.ac.uk> Date: 15 Jan 90 09:31:17 GMT References: <1470@mdbs.UUCP> Organization: School of Cognitive & Computing Sciences, Sussex Univ. UK Lines: 52