Brown, N.C.C. and Sampson, Adam T. (2009) Alloy: Fast Generic Transformations for Haskell. In: Haskell '09: Proceedings of the 2009 ACM SIGPLAN Haskell Symposium.
|PDF - Accepted Version|
Data-type generic programming can be used to traverse and manipulate specific parts of large heterogeneously-typed tree structures, without the need for tedious boilerplate. Generic programming is often approached from a theoretical perspective, where the emphasis lies on the power of the representation rather than on efficiency. We describe use cases for a generic system derived from our work on a nanopass compiler, where efficiency is a real concern, and detail a new generics approach (Alloy) that we have developed in Haskell to allow our compiler passes to traverse the abstract syntax tree quickly. We benchmark our approach against several other Haskell generics approaches and statistically analyse the results, finding that Alloy is fastest on heterogeneously-typed trees.
|Item Type:||Conference or workshop item (UNSPECIFIED)|
|Uncontrolled keywords:||determinacy analysis, Craig interpolants|
|Subjects:||Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,|
|Divisions:||Faculties > Science Technology and Medical Studies > School of Computing > Programming Languages and Systems Group|
|Depositing User:||Neil Brown|
|Date Deposited:||21 Sep 2012 09:49|
|Last Modified:||09 May 2013 15:26|
|Resource URI:||http://kar.kent.ac.uk/id/eprint/30595 (The current URI for this page, for reference purposes)|
- Depositors only (login required):