Author:
Hutton Graham,Meijer Erik
Abstract
AbstractA 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.
Publisher
Cambridge University Press (CUP)
Reference8 articles.
1. Hutton G. (1992) Between Functions and Relations in Calculating Programs. PhD thesis, University of Glasgow. (Available as Research Report FP-93-5.)
2. Relative specification and transformational re-use of functional programs
Cited by
7 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Symbolic Disintegration with a Variety of Base Measures;ACM Transactions on Programming Languages and Systems;2020-05-27
2. Programming from metaphorisms;Journal of Logical and Algebraic Methods in Programming;2018-01
3. Metaphorisms in Programming;Relational and Algebraic Methods in Computer Science;2015
4. Reasoning about Codata;Central European Functional Programming School;2010
5. Metamorphisms: Streaming representation-changers;Science of Computer Programming;2007-03