TY - GEN
T1 - A generic programming toolkit for PADS/ML
T2 - 10th International Symposium on Practical Aspects of Declarative Languages, PADL 2008
AU - Fernández, Mary
AU - Fisher, Kathleen
AU - Nathan Foster, J.
AU - Greenberg, Michael
AU - Mandelbaum, Yitzhak
PY - 2007
Y1 - 2007
N2 - Domain-specific languages facilitate solving problems in a targeted domain by providing features particular to the domain. Declarative domain-specific languages have the additional benefit that users specify what something means rather than how to do something. As a result, the language compiler is free to choose the best implementation strategies and to generate multiple artifacts from a single description. PADS/ML is a declarative data description language designed to facilitate ad hoc data management. From a single description, the compiler generates a myriad of artifacts, including data structures for the in-memory representation of the data and parsers and printers. In this paper, we describe a new generic programming infrastructure for PADS/ML that allows third-party developers to define additional useful artifacts without modifying the compiler. We report on two case studies that use this infrastructure. In the first, we build a version of PADX for PADS/ML, allowing any data source with a PADS/ML description to be queried as if it were XML. In the second, we extend Harmony with the ability to synchronize any data with a PADS/ML description.
AB - Domain-specific languages facilitate solving problems in a targeted domain by providing features particular to the domain. Declarative domain-specific languages have the additional benefit that users specify what something means rather than how to do something. As a result, the language compiler is free to choose the best implementation strategies and to generate multiple artifacts from a single description. PADS/ML is a declarative data description language designed to facilitate ad hoc data management. From a single description, the compiler generates a myriad of artifacts, including data structures for the in-memory representation of the data and parsers and printers. In this paper, we describe a new generic programming infrastructure for PADS/ML that allows third-party developers to define additional useful artifacts without modifying the compiler. We report on two case studies that use this infrastructure. In the first, we build a version of PADX for PADS/ML, allowing any data source with a PADS/ML description to be queried as if it were XML. In the second, we extend Harmony with the ability to synchronize any data with a PADS/ML description.
UR - http://www.scopus.com/inward/record.url?scp=38549110838&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=38549110838&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:38549110838
SN - 3540774416
SN - 9783540774419
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 133
EP - 149
BT - Practical Aspects of Declarative Languages - 10th International Symposium, PADL 2008, Proceedings
Y2 - 7 January 2008 through 8 January 2008
ER -