Results 1 -
1 of
1
Back to Basics: Deriving Representation Changers Functionally
- Journal of Functional Programming
, 1993
"... A representation changer is a function that converts a concrete representation of an abstract value into a different concrete representation of that value. Many useful functions can be recognised as representation changers; examples include compilers, and arithmetic functions such as addition and mu ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
A representation changer is a function that converts a concrete representation of an abstract value into a different concrete representation of that value. Many useful functions can be recognised as representation changers; examples include compilers, and arithmetic functions such as addition and multiplication. Functions that can be specified as the right inverse of other functions are special cases of representation changers. In recent years, a number of authors have used a relational calculus to derive representation changers from their specifications. In this paper we show that the generality of relations is not essential, and representation changers can be derived within the more basic setting of functional programming. We illustrate our point by deriving a carry-save adder and a base-converter, two functions which have previously been derived relationally. 1 Introduction In the calculational approach to programming the aim is to derive programs from their specifications by a p...

