Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site gumby.UUCP
Path: utzoo!watmath!clyde!cbosgd!ihnp4!mhuxn!mhuxj!mhuxr!ulysses!allegra!mit-eddie!godot!harvard!seismo!uwvax!gumby!g-frank
From: g-frank@gumby.UUCP
Newsgroups: net.lang
Subject: Re: High-levelity
Message-ID: <237@gumby.UUCP>
Date: Tue, 1-Jan-85 14:39:28 EST
Article-I.D.: gumby.237
Posted: Tue Jan  1 14:39:28 1985
Date-Received: Thu, 3-Jan-85 03:46:31 EST
References: <235@gumby.UUCP> <96@mit-athena.ARPA>
Organization: U of Wisconsin CS Dept
Lines: 31

> But provability is only loosely related to high-levility.  Or is it?
> 
> 				John Chambers

This is the most interesting question I've heard all week.

Most of the definitions and discussions submitted so far on "high-levelity"
do deal, in one way or another, with the issue of "expressive ease."  Whether
speaking of ease of translation or natural expressivity, we all mean the same
thing.

Proof of correctness "works," in my limited experience, because constructs of
the pseudo-language in which such proofs are constructed correspond to actions
transformable into predicate calculus (does that make sense?).  A language 
allows programs to be proved correct when its constructs are so transformable,
and correct programs may be generated in such a language from well-defined
specifications.

Is there a connection between a "natural deduction system" and the "expressive
ease" mentioned above?  Yes and no.  Certainly such a system has expressive
rigour, and little or no ambiguity.  Whether such a system is indeed natural
has a lot to do with background and training.

Is the idea of expressive ease enough to define "high-level?"  BASIC programmers
will tell you that BASIC is high-level because it's "easy" to write in.  I think
that the more sophisticated the programmer's ideas and algorithms, the more he
or she demands of the language's expressiveness.  Does the programmatic calculus
approach represent the pinnacle of such expressiveness?  One argument for this
statement is that correct programs are generated directly from the specifica-
tions, and as a result the program "expresses" what it is to do, which is
"higher level" than a program that simply expresses how it is to be done.