Results 1 
1 of
1
Hope: An Experimental Applicative Language
, 1980
"... An applicative language called HOPE is described and discussed. The underlying goal of the design and implementation effort was to produce a very simple programming language which encourages the construction of clear and manipulable programs. HOPE does not include an assignment statement; this is fe ..."
Abstract

Cited by 39 (3 self)
 Add to MetaCart
An applicative language called HOPE is described and discussed. The underlying goal of the design and implementation effort was to produce a very simple programming language which encourages the construction of clear and manipulable programs. HOPE does not include an assignment statement; this is felt to be an important simplification. The user may freely define his own data types, without the need to devise a complicated encoding in terms of lowlevel types. The language is very strongly typed, and as implemented it incorporates a typechecker which handles polymorphic types and overloaded operators. Functions are defined by a set of recursion equations; the lefthand side of each equation includes a pattern used to determine which equation to use for a given argument. The availability of arbitrary higherorder types allows functions to be defined which 'package' recursion. Lazilyevaluated lists are provided, allowing the use of infinite lists which could be used to provide interactive input/output and concurrency.