Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
G: a functional language with generic abstract data types
Bailes P. Computer Languages12 (2):69-94,1987.Type:Article
Date Reviewed: Dec 1 1988

This paper describes G, a functional language designed to support data abstraction methodology. The language actually consists of a hierarchy of levels and therefore the description given in the paper is not complete, in the sense that further layers can be built on top of the data abstraction layer. G is a fairly standard functional language with lazy evaluation and higher-order functions. What is different about it is the view that a type is an assertion about a value and is a first-class object. Arbitrary predicates may be used to define a type. The consequence of this is that type-checking cannot be done at compile-time using a Milner-style algorithm, but must be done at run-time. This results in a loss of efficiency (although efficiency was not a consideration in the design of the language) and a reduction in the amount of information about errors that is supplied to the programmer by the compiler.

Apart from several typos, the paper is clear and easy to read. It provides an interesting generalization to the type systems found in most functional languages. This generalization is expensive, however, and the paper does not provide evidence that it is useful.

Reviewer:  E. Schneider Review #: CR112551
Bookmark and Share
 
G (D.3.2 ... )
 
 
Abstract Data Types (D.3.3 ... )
 
 
Applicative (Functional) Languages (D.3.2 ... )
 
 
Data Types And Structures (D.3.3 ... )
 
 
Functional Constructs (F.3.3 ... )
 
 
Type Structure (F.3.3 ... )
 
  more  
Would you recommend this review?
yes
no

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy