OOPSLA 2011
62 papers
- A simple abstraction for complex concurrent indexes
- A step towards transparent integration of input-consciousness into dynamic program optimizations
- A syntactic type system for recursive modules
- A theory of substructural types and control
- AC: composable asynchronous IO for native languages
- Accentuating the positive: atomicity inference and enforcement using correct executions
- Asynchronous assertions
- Automated construction of JavaScript benchmarks
- Automatic fine-grain locking using shape properties
- Backstage Java: making a difference in metaprogramming
- Benefits and barriers of user evaluation in software engineering research
- Catch me if you can: performance bug detection in the wild
- Cedalion: a language for language oriented programming
- Composable, nestable, pessimistic atomic statements
- Da capo con scala: design and analysis of a scala benchmark suite for the java virtual machine
- Data-driven synthesis for object-oriented frameworks
- Declaratively programming the mobile web with Mobl
- Delegated isolation
- Efficiently speeding up sequential computation through the n-way programming model
- Enhancing locality for recursive traversals of recursive structures
- Exploiting coarse-grain speculative parallelism
- F4F: taint analysis of framework-based web applications
- First-class state change in plaid
- Flexible object layouts: enabling lightweight language extensions by intercepting slot access
- Flow-sensitive type recovery in linear-log time
- Freedom before commitment: a lightweight type system for object initialisation
- Gradual typing for generics
- HAWKEYE: effective discovery of dataflow impediments to parallelization
- Hybrid partial evaluation
- Immutable specifications for more concise and precise verification
- Integrated language definition testing: enabling test-driven language development
- JET: exception checking in the Java native interface
- JIT compilation policy for modern machines
- Kind analysis for MATLAB
- Kismet: parallel speedup estimates for serial programs
- Null dereference verification via over-approximated weakest pre-conditions analysis
- Oracle scheduling: controlling granularity in implicitly parallel languages
- PREFAIL: a programmable tool for multiple-failure injection
- Product lines of theorems
- Reactive imperative programming with dataflow constraints
- Reducing trace selection footprint for large-scale Java applications without performance loss
- Ribbons: a partially shared memory programming model
- RoleCast: finding missing security checks when you do not know what checks are
- SHERIFF: precise detection and automatic mitigation of false sharing
- SOS: saving time in dynamic race detection with stationary analysis
- Safe and atomic run-time code evolution for Java and its application to dynamic AOP
- Safe parallel programming using dynamic dependence hints
- Scalable join patterns
- Self-adjusting stack machines
- Sprint: speculative prefetching of remote data
- SugarJ: library-based syntactic language extensibility
- Synthesis of first-order dynamic programming algorithms
- Synthesizing method sequences for high-coverage testing
- Testing atomicity of composed concurrent operations
- The sequential prison
- Tool-supported refactoring for JavaScript
- Trustworthy numerical computation in Scala
- Two for the price of one: a model for parallel and incremental computation
- Type checking modular multiple dispatch with parametric polymorphism and multiple inheritance
- Variability-aware parsing in the presence of lexical macros and conditional compilation
- Virtual values for language extension
- Why nothing matters: the impact of zeroing