JFP 18 (4): 423–436, 2008. c � 2008 Cambridge University Press doi:10.1017/S0956796808006758 First published online 18 March 2008 Printed in the United Kingdom 423 FUNCTIONAL PEARL Data types à la carte WOUTER SWIERSTRA School of Computer Science, University of Nottingham, Jubilee Campus, Nottingham, NG8 1BB (e-mail: wss@cs.nott.ac.uk) Abstract This paper describes a technique for assembling both