Practical Aspects of Declarative Languages
16th International Symposium, PADL 2014, San Diego, CA, USA, January 20-21, 2014. Proceedings
Article
Experimental design is a key ingredient of reproducible empirical research. Yet, given the increasing complexity of experimental designs, researchers often struggle to implement ones that allow them to measure...
Book and Conference Proceedings
16th International Symposium, PADL 2014, San Diego, CA, USA, January 20-21, 2014. Proceedings
Chapter and Conference Paper
Distributed Places bring new support for distributed, message-passing parallelism to Racket. This paper gives an overview of the programming model and how we had to modify our existing, runtime-system to suppo...
Article
We present a PLT Redex model of a substantial portion of the Racket virtual machine and bytecode verifier (formerly known as MzScheme), along with lessons learned in develo** the model. Inspired by the “wart...
Chapter and Conference Paper
In the past, the creators of numerical programs had to choose between simple expression of mathematical formulas and static type checking. While the Lisp family and its dynamically typed relatives support the ...
Chapter and Conference Paper
The successful assembly of large programs out of software components depends on modular reasoning. When the linking of component code is modular, components can be compiled and type checked separately, deployed i...
Chapter and Conference Paper
The Scheme language report advocates language design as the composition of a small set of orthogonal constructs, instead of a large accumulation of features. In this paper, we demonstrate how such a design sca...
Chapter and Conference Paper
In this paper, we show how to combine a component system and a macro system. A component system separates the definition of a program fragment from the statements that link it, enabling independent compilation...
Chapter and Conference Paper
Over the past decade, researchers have found context-sensitive term-rewriting semantics to be powerful and expressive tools for modeling programming languages, particularly in establishing type soundness proof...
Chapter and Conference Paper
Nominal subty** forces programmers to explicitly state all of the subty** relationships in the program. This limits component reuse, because programmers cannot anticipate all of the contexts in which a par...
Chapter and Conference Paper
Programmers rely on the correctness of the tools in their programming environments. In the past, semanticists have studied the correctness of compilers and compiler analyses, which are the most important tools...
Chapter
While class-based object-oriented programming languages provide a flexible mechanism for re-using and managing related pieces of code, they typically lack linguistic facilities for specifying a uniform extensi...
Chapter and Conference Paper
Teaching introductory computing courses with Scheme elevates the intellectual level of the course and thus makes the subject more appealing to students with scientific interests. Unfortunately, the poor qualit...
Article
PsyScope is an integrated environment for designing and running psychology experiments on Macintosh computers. The primary goal of PsyScope is to give both psychology students and trained researchers a tool th...