{"title":"An Image Processing Language: External and Shallow/Deep Embeddings","authors":"Robert J. Stewart","doi":"10.1145/2889420.2892270","DOIUrl":null,"url":null,"abstract":"Programming language users demand high performance, easy to understand syntax, and tooling such as profilers, debuggers and integrated development environments. Historically they were standalone, each with its own lexer and parser to implement a syntax, and an interpreter or compiler to implement a semantics. This approach incurs substantial engineering costs, both for the initial construction and also for ongoing maintenance as a language and its standard library grows. Modern language technology enables a more cost effective approach, namely to embed new languages inside existing languages, inheriting a host language's tooling, and its community as potential users. This paper uses a small image processing language to compare shallow and deep language embeddings with the external language approach. It focuses on optimisation opportunities, performance, ease of use and engineering costs.","PeriodicalId":321825,"journal":{"name":"Proceedings of the 1st International Workshop on Real World Domain Specific Languages","volume":"65 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 1st International Workshop on Real World Domain Specific Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2889420.2892270","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
Programming language users demand high performance, easy to understand syntax, and tooling such as profilers, debuggers and integrated development environments. Historically they were standalone, each with its own lexer and parser to implement a syntax, and an interpreter or compiler to implement a semantics. This approach incurs substantial engineering costs, both for the initial construction and also for ongoing maintenance as a language and its standard library grows. Modern language technology enables a more cost effective approach, namely to embed new languages inside existing languages, inheriting a host language's tooling, and its community as potential users. This paper uses a small image processing language to compare shallow and deep language embeddings with the external language approach. It focuses on optimisation opportunities, performance, ease of use and engineering costs.