Simple Metrics for Programming Languages.

Abstract

Several metrics for guiding the design and evaluation of programming languages are introduced. The objective is to formalize notions such as 'size', 'complexity', 'orthogonality', and 'simplicity'. Three different kinds of metrics are describes: syntactic, semantic, and transformational. Syntactic metrics are based on the size of a context-free grammar for a language or a part of a language. They can be used to judge the size of a language and the relative sizes of its parts. These techniques are demonstrated by their application to Pascal, Algol-60, and Ada. Syntactic metrics make no reference to the meaning of a language's constructs. For this purpose we have developed several semantic metrics that measure the interdependencies among the basic semantic ideas in a language. This technique has been applied to the control, data, and name structures of FORTRAN, BASIC, Lisp, Algol-60, and Pascal. Finally, we suggest that a useful measure of a programming language is the complexity of the relationship between its syntactic and semantic structures. For this purpose we introduce a transformational metric and demonstrate its use on subsystems of several languages.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 1982
Accession Number
ADA121282

Entities

People

  • Burce J. Maclennan

Organizations

  • Naval Postgraduate School

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Assembly Languages
  • Computer Programming
  • Computer Science
  • Computers
  • Context Free Grammars
  • Equations
  • Grammars
  • Information Theory
  • Language
  • Military Research
  • Production
  • Programming Languages
  • Semantics
  • Software Development
  • Software Metrics
  • Test And Evaluation
  • Vocabulary

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computational Linguistics
  • Computational Modeling and Simulation