Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site zinfandel.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!godot!harvard!seismo!hao!hplabs!pesnta!amd!dual!zehntel!zinfandel!ed
From: ed@zinfandel.UUCP (Ed Hirgelt)
Newsgroups: net.lang
Subject: Language Level
Message-ID: <289@zinfandel.UUCP>
Date: Fri, 4-Jan-85 16:40:08 EST
Article-I.D.: zinfande.289
Posted: Fri Jan  4 16:40:08 1985
Date-Received: Mon, 7-Jan-85 03:18:23 EST
Reply-To: ed@zinfandel.UUCP (Ed Hirgelt)
Organization: Zehntel Inc., Walnut Creek CA
Lines: 59

Since I haven't seen a mention of this yet in the `great high-level'
debate I will bring it up:

Reference:

Elements of Software Science, Maurice Halstead, Elsevier Computer
Science Library, 1977

This is a short work discussing measurable features of programs and
programming languages. In particular, Chapter 9 discusses language
level. I don't want to get into the details of the work (though it is
fascinating), I will mention that he empirically determined the level
of 6 languages:
	
	Language	level
	--------	-----
	English		2.16
	PL/I		1.53
	Algol 58	1.21
	Fortran		1.14
	Pilot		0.92
	Assembly	0.88

These are the means computed from a sample of programs in each
language. He provides a frequency distribution that shows that you can
write `high-level' or `low-level' in all the languages (except
low-level English). The average level in PL/I is far higher than in
assembly language (Compass in his examples).

I remember seeing other work published in Software Engineering Notes
(ACM SIG on Software Engineering). There was some work done at General
Motors also.

Halstead provides several concrete measures that can be computed for
any program. He shows the relationship between these measures,
justifies them intuitively and shows that the relationships hold
empirically.

Overall, interesting reading. I don't know if much has been done lately
(Halstead died several years ago) or if the ideas have fallen out of
favor.

--------------------------------

Ed Hirgelt
Zehntel Automation Systems
Walnut Creek, Ca 94598

ihnp4!zehntel!ed
decvax!sytek!zehntel!ed
-- 
--------------------------------

Ed Hirgelt
Zehntel Automation Systems
Walnut Creek, Ca 94598

ihnp4!zehntel!ed
decvax!sytek!zehntel!ed