Draining the Swamp: Micro Virtual Machines as Solid Foundation for Language Development

Kunshan Wang, Yi Lin, S. Blackburn, Michael Norrish, Antony Lloyd Hosking
{"title":"Draining the Swamp: Micro Virtual Machines as Solid Foundation for Language Development","authors":"Kunshan Wang, Yi Lin, S. Blackburn, Michael Norrish, Antony Lloyd Hosking","doi":"10.4230/LIPIcs.SNAPL.2015.321","DOIUrl":null,"url":null,"abstract":"Many of today’s programming languages are broken. Poor performance, lack of features and hard-to-reason-about semantics can cost dearly in software maintenance and inecient execution. The problem is only getting worse with programming languages proliferating and hardware becoming more complicated. An important reason for this brokenness is that much of language design is implementation-driven. The diculties in implementation and insucient understanding of concepts bake bad designs into the language itself. Concurrency, architectural details and garbage collection are three fundamental concerns that contribute much to the complexities of implementing managed languages. We propose the micro virtual machine, a thin abstraction designed specifically to relieve implementers of managed languages of the most fundamental implementation challenges that currently impede good design. The micro virtual machine targets abstractions over memory (garbage collection), architecture (compiler backend), and concurrency. We motivate the micro virtual machine and give an account of the design and initial experience of a concrete instance, which we call Mu, built over a two year period. Our goal is to remove an important barrier to performant and semantically sound managed language design and implementation.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2015-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"14","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Summit on Advances in Programming Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.321","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 14

Abstract

Many of today’s programming languages are broken. Poor performance, lack of features and hard-to-reason-about semantics can cost dearly in software maintenance and inecient execution. The problem is only getting worse with programming languages proliferating and hardware becoming more complicated. An important reason for this brokenness is that much of language design is implementation-driven. The diculties in implementation and insucient understanding of concepts bake bad designs into the language itself. Concurrency, architectural details and garbage collection are three fundamental concerns that contribute much to the complexities of implementing managed languages. We propose the micro virtual machine, a thin abstraction designed specifically to relieve implementers of managed languages of the most fundamental implementation challenges that currently impede good design. The micro virtual machine targets abstractions over memory (garbage collection), architecture (compiler backend), and concurrency. We motivate the micro virtual machine and give an account of the design and initial experience of a concrete instance, which we call Mu, built over a two year period. Our goal is to remove an important barrier to performant and semantically sound managed language design and implementation.
排干沼泽:微虚拟机作为语言开发的坚实基础
今天的许多编程语言都是坏的。性能差、缺乏特性和难以理解的语义会在软件维护和执行效率方面付出高昂的代价。随着编程语言的激增和硬件变得越来越复杂,这个问题只会变得更糟。造成这种差异的一个重要原因是,大部分语言设计都是由实现驱动的。实现上的困难和对概念的无知理解将糟糕的设计带入了语言本身。并发性、架构细节和垃圾收集是导致托管语言实现复杂性的三个基本关注点。我们提出了微虚拟机,这是一种薄抽象,专门用于减轻托管语言实现者目前阻碍良好设计的最基本实现挑战。微虚拟机的目标是对内存(垃圾收集)、体系结构(编译器后端)和并发性的抽象。我们对微虚拟机进行了激励,并给出了一个具体实例的设计和初始体验,我们称之为Mu,历时两年建成。我们的目标是消除性能和语义良好的托管语言设计和实现的一个重要障碍。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信