Emerson: accessible scripting for applications in an extensible virtual world

Behram F. T. Mistree, B. Chandra, Ewen Cheslack-Postava, P. Levis, David E. Gay
{"title":"Emerson: accessible scripting for applications in an extensible virtual world","authors":"Behram F. T. Mistree, B. Chandra, Ewen Cheslack-Postava, P. Levis, David E. Gay","doi":"10.1145/2048237.2048247","DOIUrl":null,"url":null,"abstract":"This paper presents Emerson, a new programming system for scripting objects in user-extensible virtual worlds such as Second Life, Active Worlds, and Open Wonderland. Emerson's primary goal is to make it easy for novice programmers to write and deploy interesting applications. Scripting applications for these worlds is difficult due to two characteristics: the worlds must scale to millions of users and are therefore distributed, and there is no central authority or design so interaction is mostly between mutually untrusting applications.\n To simplify scripting for novices, Emerson employs two abstractions: multi-presencing and execution sandboxes. Multi-presencing allows a single program to centrally control what seem to be many distributed geometric objects. Execution sandboxes allow safely running application code provided by another object, borrowing the execution and deployment model of modern web applications.\n Emerson itself is implemented as a scripting plugin for the Sirikata open source virtual world platform. We evaluate the benefits of its design by describing several application examples. Through these examples, we explore the interactions between sandboxing and multi-presencing as well as their implications and discuss potential future authentication mechanisms that would make secure in-world application development more accessible.","PeriodicalId":168332,"journal":{"name":"SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software","volume":"138 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2048237.2048247","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7

Abstract

This paper presents Emerson, a new programming system for scripting objects in user-extensible virtual worlds such as Second Life, Active Worlds, and Open Wonderland. Emerson's primary goal is to make it easy for novice programmers to write and deploy interesting applications. Scripting applications for these worlds is difficult due to two characteristics: the worlds must scale to millions of users and are therefore distributed, and there is no central authority or design so interaction is mostly between mutually untrusting applications. To simplify scripting for novices, Emerson employs two abstractions: multi-presencing and execution sandboxes. Multi-presencing allows a single program to centrally control what seem to be many distributed geometric objects. Execution sandboxes allow safely running application code provided by another object, borrowing the execution and deployment model of modern web applications. Emerson itself is implemented as a scripting plugin for the Sirikata open source virtual world platform. We evaluate the benefits of its design by describing several application examples. Through these examples, we explore the interactions between sandboxing and multi-presencing as well as their implications and discuss potential future authentication mechanisms that would make secure in-world application development more accessible.
Emerson:可扩展虚拟世界中应用程序的可访问脚本
本文介绍了一种新的编程系统Emerson,用于在用户可扩展的虚拟世界(如Second Life、Active worlds和Open Wonderland)中编写对象脚本。Emerson的主要目标是让新手程序员更容易编写和部署有趣的应用程序。由于两个特征,为这些世界编写应用程序脚本是困难的:世界必须扩展到数百万用户,因此是分布式的,并且没有中心权威或设计,因此交互主要是在相互不信任的应用程序之间进行的。为了简化新手的脚本编写,Emerson采用了两个抽象:多呈现和执行沙箱。多呈现允许单个程序集中控制似乎是许多分布式几何对象。执行沙箱借鉴了现代web应用程序的执行和部署模型,允许安全运行由另一个对象提供的应用程序代码。Emerson本身是作为Sirikata开源虚拟世界平台的脚本插件实现的。我们通过描述几个应用实例来评估其设计的好处。通过这些示例,我们探索了沙箱和多呈现之间的交互以及它们的含义,并讨论了未来可能的身份验证机制,这些机制将使安全的内部应用程序开发更容易访问。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信