Print Email Facebook Twitter PIL: A platform independent language for retargetable DSLs Title PIL: A platform independent language for retargetable DSLs Author Hemel, Z. Visser, E. Faculty Electrical Engineering, Mathematics and Computer Science Department Software Computer Technology Date 2009-12-31 Abstract This paper is a pre-print of: Zef Hemel, Eelco Visser. PIL: A Platform Independent Language for Retargetable DSLs. In Mark G. J. van den Brand, Jeff Gray, editors, Software Language Engineering, Second International Conference, SLE 2009, Denver, USA, October, 2009. Lecture Notes in Computer Science, Springer, 2009. Intermediate languages are used in compiler construction to simplify retargeting compilers to multiple machine architectures. In the implementation of domain-specific languages (DSLs), compilers typically generate high-level source code, rather than low-level machine instructions. DSL compilers target a software platform, i.e. a programming language with a set of libraries, deployable on one or more operating systems. DSLs enable targeting multiple software platforms if its abstractions are platform independent. While transformations from DSL to each targeted platform are often conceptually very similar, there is little reuse between transformations due to syntactic and API differences of the target platforms, making supporting multiple platforms expensive. In this paper, we discuss the design and implementation of PIL, a Platform Independent Language, an intermediate language providing a layer of abstraction between DSL and target platform code, abstracting from syntactic and API differences between platforms, thereby removing the need for platform-specific transformations. We discuss the use of PIL in an implemementation of WebDSL, a DSL for building web applications. To reference this document use: http://resolver.tudelft.nl/uuid:c5934978-e3d2-437d-8c67-ba7d7457d975 Publisher Delft University of Technology, Software Engineering Research Group ISSN 1872-5392 Source Technical Report Series TUD-SERG-2009-025 Other version https://doi.org/10.1007/978-3-642-12107-4_17 Part of collection Institutional Repository Document type lecture notes Rights (c) 2009 Software Engineering Research Group, Department of Software Technology, Faculty of Electrical Engineering, Mathematics and Computer Science, Delft University of Technology. All rights reserved. No part of this series may be reproduced in any form or by any means without prior written permission of the publisher. Files PDF TUD-SERG-2009-025.pdf 280.75 KB Close viewer /islandora/object/uuid:c5934978-e3d2-437d-8c67-ba7d7457d975/datastream/OBJ/view