@article{hudak96, author = {Hudak, Paul}, title = {Building domain-specific embedded languages}, journal = {ACM Comput. Surv.}, issn = {0360-0300}, pages = {196}, doi = {http://doi.acm.org/10.1145/242224.242477}, publisher = {ACM}, address = {New York, NY, USA}, } @article{deursen00, author = {van Deursen, Arie and Klint, Paul and Visser, Joost}, title = {Domain-specific languages: an annotated bibliography}, journal = {SIGPLAN Not.}, volume = {35}, number = {6}, year = {2000}, issn = {0362-1340}, pages = {26--36}, doi = {http://doi.acm.org/10.1145/352029.352035}, publisher = {ACM}, address = {New York, NY, USA}, } @inproceedings{gill09, author = {Andy Gill}, title = {Type-Safe Observable Sharing in {H}askell}, booktitle = {Proceedings of the 2009 {ACM} {SIGPLAN} {H}askell Symposium}, year = {2009}, month = {Sep}, abstract = {Haskell is a great language for writing and supporting embedded Domain Specific Languages (DSLs). Some form of observable sharing is often a critical capability for allowing so-called deep DSLs to be compiled and processed. In this paper, we describe and explore uses of an IO function for reification which allows direct observation of sharing.} } @inproceedings{li89, author = {Li, W. and Switzer, H.}, title = {A unified data exchnage environment based on EDIF}, booktitle = {DAC '89: Proceedings of the 26th ACM/IEEE Design Automation Conference}, year = {1989}, isbn = {0-89791-310-8}, pages = {803--806}, location = {Las Vegas, Nevada, United States}, doi = {http://doi.acm.org/10.1145/74382.74534}, publisher = {ACM}, address = {New York, NY, USA}, } @inproceedings{jones96, author = {Simon L Peyton Jones}, booktitle = {Programming Languages and Systems — ESOP '96}, title = {Compiling Haskell by program transformation: A report from the trenches}, pages = {18--44}, year = {1996}, doi = {10.1007/3-540-61055-3_27}, url = {http://www.springerlink.com/content/yjnv70x758167327}, isbn = {978-3-540-61055-7}, publisher={Springer}, location={Berlin / Heidelberg}, } @article{hughes98, author = {John Hughes}, title = {Generalising Monads to Arrows}, journal = {Science of Computer Programming}, year = {1998}, volume = {37}, pages = {67--111}, } @inproceedings{paterson01, author = {Paterson, Ross}, title = {A new notation for arrows}, booktitle = {ICFP '01: Proceedings of the sixth ACM SIGPLAN international conference on Functional programming}, year = {2001}, isbn = {1-58113-415-0}, pages = {229--240}, location = {Florence, Italy}, doi = {http://doi.acm.org/10.1145/507635.507664}, publisher = {ACM}, address = {New York, NY, USA}, } @inproceedings{sulzmann07, author = {Sulzmann, Martin and Chakravarty, Manuel M. T. and Jones, Simon Peyton and Donnelly, Kevin}, title = {System F with type equality coercions}, booktitle = {TLDI '07: Proceedings of the 2007 ACM SIGPLAN international workshop on Types in languages design and implementation}, year = {2007}, isbn = {1-59593-393-X}, pages = {53--66}, location = {Nice, Nice, France}, doi = {http://doi.acm.org/10.1145/1190315.1190324}, publisher = {ACM}, address = {New York, NY, USA}, } @phdthesis{sheeran83, author = {Mary Sheeran}, title = {µFP, an algebraic VLSI design language}, year = {1983}, school = {Programming Research Group, Oxford University}, } @inproceedings{jones90, address = {Lyngby, Denmark}, author = {Jones, G. and Sheeran, M.}, booktitle = {Formal Methods for VLSI Design}, journal = {Circuit Design in Ruby}, publisher = {Elsevier Science Publishers}, title = {Circuit Design in Ruby}, year = {1990} } @phdthesis{claessen00, title = {An Embedded Language Approach to Hardware Description and Verification}, author = {Koen Claessen}, year = {2000}, school = {Dept. of Computer Science and Engineering, Chalmers University of Technology.}, } @inproceedings{sander04, author = {Sander, I. and Jantsch, A.}, title = {System Modeling and Design Refinement in ForSyDe}, journal = {IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems}, institution = {}, year = {2004}, volume = {23}, number = {1}, pages = {17--32}, issn = {0278-0070}, } @mastersthesis{baaij09, author = {Christiaan Baaij}, title = {CλasH: From Haskell to Hardware}, year = {2009}, school = {Twente University}, } @article{reynolds98, author = {Reynolds, John C.}, title = {Definitional Interpreters for Higher-Order Programming Languages}, journal = {Higher Order Symbol. Comput.}, volume = {11}, number = {4}, year = {1998}, issn = {1388-3690}, pages = {363--397}, doi = {http://dx.doi.org/10.1023/A:1010027404223}, publisher = {Kluwer Academic Publishers}, address = {Hingham, MA, USA}, } @inproceedings{mitchell09, author = {Mitchell, Neil and Runciman, Colin}, title = {Losing functions without gaining data: another look at defunctionalisation}, booktitle = {Haskell '09: Proceedings of the 2nd ACM SIGPLAN symposium on Haskell}, year = {2009}, isbn = {978-1-60558-508-6}, pages = {13--24}, location = {Edinburgh, Scotland}, doi = {http://doi.acm.org/10.1145/1596638.1596641}, publisher = {ACM}, address = {New York, NY, USA}, }