1 |
Micro Virtual Machines: A Solid Foundation for Managed Language Implementation ...
|
|
|
|
BASE
|
|
Show details
|
|
2 |
Draining the Swamp: Micro Virtual Machines as Solid Foundation for Language Development
|
|
|
|
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 inefficient 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 difficulties in implementation and insufficient 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.
|
|
Keyword:
concurrency; Data processing Computer science; garbage collection; just-in-time compiling; virtual machines
|
|
URN:
urn:nbn:de:0030-drops-50341
|
|
URL: https://drops.dagstuhl.de/opus/volltexte/2015/5034/ https://doi.org/10.4230/LIPIcs.SNAPL.2015.321
|
|
BASE
|
|
Hide details
|
|
3 |
A survey of address translation technologies for flash memories
|
|
|
|
In: http://dbgroup.cs.tsinghua.edu.cn/ligl/papers/acm-csur-2014-flash.pdf (2014)
|
|
BASE
|
|
Show details
|
|
4 |
A superblock-based flash translation layer for nand flash memory
|
|
|
|
In: http://www.ssrc.ucsc.edu/PaperArchive/kang-emsoft06.pdf (2006)
|
|
BASE
|
|
Show details
|
|
5 |
MULTILISP: a language for concurrent symbolic computation
|
|
|
|
In: http://pages.cs.wisc.edu/~fischer/cs538.s07/multilisp.pdf (1985)
|
|
BASE
|
|
Show details
|
|
6 |
Down for the Count? Getting Reference Counting Back in the Ring ∗
|
|
|
|
In: http://users.cecs.anu.edu.au/%7Esteveb/downloads/pdf/rc-ismm-2012.pdf
|
|
BASE
|
|
Show details
|
|
7 |
Draining the Swamp: Micro Virtual Machines as Solid Foundation for Language Development
|
|
|
|
In: http://drops.dagstuhl.de/opus/volltexte/2015/5034/pdf/24.pdf
|
|
BASE
|
|
Show details
|
|
|
|