{"title":"Evolution of a Stream Transformation DSL","authors":"R. Gad","doi":"10.1145/3039895.3039897","DOIUrl":"https://doi.org/10.1145/3039895.3039897","url":null,"abstract":"In this paper, we present our experiences during the evolution of a stream transformation Domain Specific Language (DSL). We initially implemented and evolved the DSL in the scope of our work on stream-based computer network monitoring. However, the application domain is not limited to computer network monitoring. While our initial DSL focused on transforming raw byte-array stream data into Java data structures such as maps, we added support for more input and output formats over time. The initial motivation for the DSL was to improve maintainability, extendibility, and performance. During the development, we were confronted with changing and evolving use-cases and requirements, which impacted the evolution of the DSL. We, e.g., added dynamic capabilities, which can be used, e. g., for self-adaptive mechanisms. In our opinion, the separation of concerns introduced by a DSL-based approach helped to improve our development efficiency. We implemented our DSL using the Clojure programming language, which, in our opinion, offers excellent features for implementing a dynamic DSL. We published our implementations as Open Source Software.","PeriodicalId":147995,"journal":{"name":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-02-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129488348","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"DEFIne: A Fluent Interface DSL for Deep Learning Applications","authors":"Nina Dethlefs, K. Hawick","doi":"10.1145/3039895.3039898","DOIUrl":"https://doi.org/10.1145/3039895.3039898","url":null,"abstract":"Recent years have seen a surge of interest in deep learning models that outperform other machine learning algorithms on benchmarks across many disciplines. Most existing deep learning libraries facilitate the development of neural nets by providing a mathematical framework that helps users implement their models more efficiently. This still represents a substantial investment of time and effort, however, when the intention is to compare a range of competing models quickly for a specific task. We present DEFIne, a fluent interface DSL for the specification, optimisation and evaluation of deep learning models. The fluent interface is implemented through method chaining. DEFIne is embedded in Python and is build on top of its most popular deep learning libraries, Keras and Theano. It extends these with common operations for data pre-processing and representation as well as visualisation of datasets and results. We test our framework on three benchmark tasks from different domains: heart disease diagnosis, hand-written digit recognition and weather forecast generation. Results in terms of accuracy, runtime and lines of code show that our DSL achieves equivalent accuracy and runtime to state-of-the-art models, while requiring only about 10 lines of code per application.","PeriodicalId":147995,"journal":{"name":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","volume":"94 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-02-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125251081","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Hansl: a DSL for econometrics","authors":"A. Cottrell","doi":"10.1145/3039895.3039896","DOIUrl":"https://doi.org/10.1145/3039895.3039896","url":null,"abstract":"This paper describes hansl, a language specifically tailored to the domain of econometrics. We outline certain features of econometrics and explain how these features mandate, or at least make highly desirable, a form of language which incorporates some quite specific data structures and syntactical constructions.","PeriodicalId":147995,"journal":{"name":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-02-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114027590","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"AFrame: A Domain Specific Language for Virtual Reality: Extended Abstract","authors":"Andy Gill","doi":"10.1145/3039895.3039899","DOIUrl":"https://doi.org/10.1145/3039895.3039899","url":null,"abstract":"Do Domain Specific Languages (DSLs) have anything to contribute towards the building and animating of three-dimensional scenes for Virtual Reality (VR)? Yes! AFrame is a DSL, and a widely-supported HTML5 extension for building virtual reality experiences. AFrame is open-source, actively developed by Mozilla, and works inside most modern browsers, including mobile browsers. Customizable web-based delivery of VR experiences is possible, because AFrame is a DSL.","PeriodicalId":147995,"journal":{"name":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","volume":"279 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-02-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114622986","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","authors":"","doi":"10.1145/3039895","DOIUrl":"https://doi.org/10.1145/3039895","url":null,"abstract":"","PeriodicalId":147995,"journal":{"name":"Proceedings of the 2nd International Workshop on Real World Domain Specific Languages","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130604648","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}