@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.} }