Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- proceedingOctober 2014
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languages
The 10th Dynamic Languages Symposium (DLS) at SPLASH 2014 is the premier forum for researchers and practitioners to share knowledge and research on dynamic languages, their implementation, and applications. The influence of dynamic languages -- from ...
- keynoteOctober 2014
Why do we know so little about programming languages, and what would have happened if we had known more?
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPage 1https://doi.org/10.1145/2661088.2661102Programming language research in the last decades was mainly driven by mathematical methods (such as formal semantics, correctness proofs, type soundness proofs, etc.) or run-time arguments based on benchmark tests. This happened despite the frequent ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Design and evaluation of gradual typing for python
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 45–56https://doi.org/10.1145/2661088.2661101Combining static and dynamic typing within the same language offers clear benefits to programmers. It provides dynamic typing in situations that require rapid prototyping, heterogeneous data structures, and reflection, while supporting static typing ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
SqueakJS: a modern and practical smalltalk that runs in any browser
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 57–66https://doi.org/10.1145/2661088.2661100We report our experience in implementing SqueakJS, a bit-compatible implementation of Squeak/Smalltalk written in pure JavaScript. SqueakJS runs entirely in the Web browser with a virtual filesystem that can be directed to a server or client-side ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Dynamic detection of object capability violations through model checking
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 103–112https://doi.org/10.1145/2661088.2661099In this paper we present a new tool called DOCaT (Dynamic Object Capability Tracer), a model checker for JavaScript that detects capability leaks in an object capability system. DOCaT includes an editor that highlights the sections of code that can be ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Sweeten your JavaScript: hygienic macros for ES5
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 35–44https://doi.org/10.1145/2661088.2661097Lisp and Scheme have demonstrated the power of macros to enable programmers to evolve and craft languages. In languages with more complex syntax, macros have had less success. In part, this has been due to the difficulty in building expressive hygienic ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Scriptable operating systems with Lua
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 2–10https://doi.org/10.1145/2661088.2661096Extensible operating system is a design based on the idea that operating systems can be adapted to meet user requirements by allowing user extensions. In a different scenario, that of application development, there is a paradigm that supports that ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Typed objects in JavaScript
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 125–134https://doi.org/10.1145/2661088.2661095JavaScript's typed arrays have proven to be a crucial API for many JS applications, particularly those working with large amounts of data or emulating other languages. Unfortunately, the current typed array API offers no means of abstraction. ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Dynamic page sharing optimization for the R language
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 79–90https://doi.org/10.1145/2661088.2661094Dynamic languages such as R are increasingly used to process .large data sets. Here, the R interpreter induces a large memory overhead due to wasteful memory allocation policies. If an application's working set exceeds the available physical memory, the ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Object versioning to support recovery needs: using proxies to preserve previous development states in lively
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 113–124https://doi.org/10.1145/2661088.2661093We present object versioning as a generic approach to preserve access to previous development and application states. Version-aware references can manage the modifications made to the target object and record versions as desired. Such references can be ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Contracts for domain-specific languages in Ruby
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 23–34https://doi.org/10.1145/2661088.2661092This paper concerns object-oriented embedded DSLs, which are popular in the Ruby community but have received little attention in the research literature. Ruby DSLs implement language keywords as implicit method calls to self; language structure is ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
On the use of type predicates in object-oriented software: the case of smalltalk
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 135–146https://doi.org/10.1145/2661088.2661091Object-orientation relies on polymorphism to express behavioral variants. As opposed to traditional procedural design, explicit type-based conditionals should be avoided. This message is conveyed in introductory material on object orientation, as well ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
Using JavaScript and WebCL for numerical computations: a comparative study of native and web technologies
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 91–102https://doi.org/10.1145/2661088.2661090From its modest beginnings as a tool to validate forms, JavaScript is now an industrial-strength language used to power online applications such as spreadsheets, IDEs, image editors and even 3D games. Since all modern web browsers support JavaScript, it ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2 - research-articleOctober 2014
ACDC-JS: explorative benchmarking of javascript memory management
DLS '14: Proceedings of the 10th ACM Symposium on Dynamic languagesPages 67–78https://doi.org/10.1145/2661088.2661089We present ACDC-JS, an open-source JavaScript memory management benchmarking tool. ACDC-JS incorporates a heap model based on real web applications and may be configured to expose virtually any relevant performance characteristics of JavaScript memory ...
Also Published in:
ACM SIGPLAN Notices: Volume 50 Issue 2