~/conference

OOPSLA 2018

date:2018-11-07..2018-11-09
location:Boston, United States
series:OOPSLA · 7 editions

PACMPL (OOPSLA) seeks contributions on all aspects of programming languages and software engineering. Authors of papers published in PACMPL will present their work at OOPSLA in Boston. Papers may target any stage of software development, including requirements, modeling, prototyping, design, implementation, generation, analysis, verification, testing, evaluation, maintenance, and reuse of software systems. Contributions may include the development of new tools (such as language front-ends, program analyses, and runtime systems), new techniques (such as methodologies, design processes, and ...

titleauthorlength
What happens-after the first race? enhancing the predictive power of dynamic race detectionUmang Mathur21m
Proposes schedulable happens-before (SHB), a partial order that exactly characterizes which HB-unordered conflicting accesses are actually schedulable races…
Talk in English on
Virtual Machine Design for Parallel Dynamic Programming LanguagesRemigius Meier23m
Claims a concrete VM design: implements parallel worlds for isolation, on-demand page sharing and reconciliation using x86 virtual memory segmentation and…
Talk in English on
Verified Three-Way Program MergeMarcelo Sousa24m
Claims a verifiable definition of semantic conflict freedom and a Java prototype called SafeMerge that uses a four-way AST diff to produce a shared program…
Talk in English on
Towards Understanding the Costs of Avoiding Out-of-Thin-Air ResultsPeizhao Ou24m
Paper implements two concrete fixes in LLVM and measures cost on ARMv8 Cortex‑A72 hardware. One enforces load/store ordering for atomics by adding fences or…
Talk in English on
Thread-Safe Reactive ProgrammingJoscha Drechsler24m
Claims a runtime scheduler that provides abort-free strict serializability for reactive programs by combining conservative two-phase locking, multi-version…
Talk in English on
The Root Cause of Blame - Contracts for Intersection and Union TypesJack Williams21m
Extends the untyped lambda calculus with a uniform single reduction rule for monitoring higher-order intersection and union contracts and tags each contract…
Talk in English
Test Generation for Higher-Order Functions in Dynamic LanguagesMarija Selakovic21m
LambdaTester automatically infers which argument positions expect callbacks, synthesizes callbacks with four strategies (including CB-writes that mutates…
Talk in English on
Speeding up Symbolic Reasoning for Relational QueriesChenglong Wang15m
Presents a space refinement algorithm that soundly shrinks the set of candidate input tables by backward-propagating provenance from a symbolic output…
Talk in English on
Sound Deadlock PredictionChristian Gram Kalhauge19m
Claims a first sound deadlock predictor for Java that models prediction as a decidable SMT-backed decision problem and actually builds it: a recorder Wiretap…
Talk in English on
Software Multiplexing - Share Your Libraries and Statically Link Them TooWill Dietz25m
Software Multiplexing compiles programs and their shared libraries into a single static executable using bitcode and a multicall dispatch, implemented in the…
Talk in English on
ShareJIT - JIT Code Cache Sharing across Processes and its Practical ImplementationXiaoran Xu22m
Builds a global shared JIT cache inside Android Runtime (ART) using a file-backed shared memory region and a global share map keyed by a hash of…
Talk in English
Scopes as TypesHendrik van Antwerpen27m
Scope graphs model name binding and the paper’s main claim is that treating scopes as types lets one encode structural and generic type internals uniformly. A…
Talk in English
Safe Replication through Bounded Concurrency VerificationGowtham Kaki25m
Automatic bounded verification explores executions under an unrestricted consistency model but with a finite concurrency bound and discovers concrete…
Talk in English on
Robust Relational Layout Synthesis from Examples for AndroidPavol Bielik23m
An end-to-end system called InferUI synthesizes Android relational layouts by encoding 26 ConstraintLayout relations as SMT formulas, adding formal robustness…
Talk in English on
Relational Program SynthesisXinyu Wang23m
Defines relational program synthesis and builds Relish, a CEGIS-style tool that combines a compositional relational version space learner with SyGuS…
Talk in English
Refinement in object-sensitivity points-to analysis via slicingRaghavan Komondoor25m
Paper: https://dl.acm.org/citation.cfm?id=3276512 Object sensitivity analysis is a well-known form of context-sensitive points-to analysis. This analysis is…
Talk in English
Reconciling High-level Optimizations and Low-level Code in LLVMJuneyoung Lee22m
Defines a formal LLVM-IR memory model that uses full provenance and twin allocation to reconcile aggressive high-level memory optimizations with real low-level…
Talk in English on
Reasoning about Security of Amazon Web ServicesByron Cook01h 02m
Amazon Web Services adopts formal verification across design and operation, proving distributed key protocols and TLS code, and using Zelkova to check IAM…
Talk in English on
Reactive Caching for Composed ServicesSebastian Burckhardt25m
Reactive caching maintains summaries and caches with bi-directional links to track dependencies and incrementally repair distributed read-only operations…
Talk in English on
Randomized Testing of Distributed Systems with Probabilistic GuaranteesBurcu Kulahcioglu Ozkan23m
A randomized scheduler called PC-TCP constructs an online chain partition of the observed partial order and samples schedules so that for width w and n events…
Talk in English on
RacerD - Compositional Static Race DetectionSam Blackshear24m
RacerD is a compositional static race detector that builds compositional interprocedural summaries of syntactic accesses and uses ownership and thread domains…
Talk in English on
Precision-Guided Context Sensitivity for Pointer AnalysisTian Tan26m
Identifies where context sensitivity matters by spotting direct, rep and unwrap flows that cause objects from different callers to merge, encodes them in a…
Talk in English
Precise and Scalable Points-to Analysis via Data-Driven Context TunnelingMinseok Jeon17m
Presents a concrete method called context tunneling that selectively preserves “important” context elements instead of the most-recent k, implemented in the…
Talk in English
Persistence Semantics for Weak MemoryAzalea Raad23m
Introduces PTSO: an integration of epoch persistency with x86/SPARC TSO that gives both operational and declarative semantics and a machine-checked proof of…
Talk in English on
Parallelization of Dynamic Languages - Synchronizing Built-in CollectionsArie Tal23m
An implementation in TruffleRuby adds a local vs shared heap tag and applies gradual synchronization to Ruby Array and Hash instances, switching from no locks…
Talk in English on
One tool, many languages: language-parametric transformation with incremental parametric syntaxJames Koppel24m
A new representation called incremental parametric syntax lets one write a single source-to-source transformation and run it on many real languages with little…
Talk in English
Object-Oriented Recovery for Non-Volatile MemoryNachshon Cohen19m
NVMReconstruction implements a Clang/LLVM extension plus runtime library that reconstructs persistent C++ objects after restart by zeroing transient fields…
Talk in English
Distributed AbstractionsBarbara Liskov59m
Describes Mastry’s tree and the Silo database built on it: in-memory key/value storage using a compare-and-swap header with lock bit and version per node…
Talk in English on
Leto - Verifying Application-Specific Fault Tolerance through Parameterized Execution ModelsBrett Boston23m
Leto is an SMT-based verifier that lets developers encode hardware fault semantics and prove relational properties between a fault-free and a relaxed…
Talk in English
Julia Subtyping - a Rational ReconstructionFrancesco Zappa Nardelli20m
Provides a precise formal definition of Julia’s subtype relation plus a reference implementation that logs and replays actual runtime subtype queries…
Talk in English
Julia - Dynamism and Performance Reconciled by DesignBenjamin W Chung22m
Julia claims dynamic features plus C-like speed and shows it on benchmarks where most programs run within 2x of C while two outliers are explained by boxing…
Talk in English on
In Defense of "Little Code"Kathi Fisler01h 04m
Study of the classic rainfall sentinel study finds students taught a design-first, functional approach favor clean-first solutions and show much lower error…
Talk in English on
Incrementalizing Lattice-Based Program Analyses in DatalogTamás Szabó23m
Presents DRedL, an algorithm that incrementalizes recursive lattice-value aggregation in Datalog and integrates it into the IncA framework, enabling…
Talk in English
Identifying Refactoring Opportunities for Replacing Type Code with Subclass and StateJyothi Vedurada21m
Paper: https://dl.acm.org/citation.cfm?id=3276508 Refactoring is a program transformation that restructures existing code without altering its behaviour and…
Talk in English on
Horn-ICE Learning for Synthesizing Invariants and ContractsDaniel Neider22m
Algorithm extends ICE to Horn-ICE and claims it synthesizes inductive invariants and contracts for recursive and concurrent code by learning decision trees…
Talk in English
GraphIt - A High-Performance Graph DSLYunming Zhang23m
DSL that separates algorithm from schedule and a scheduling language that composes push/pull direction, partitioning for cache, parallelization, NUMA and…
Talk in English
Optimal Stateless Model Checking under the Release-Acquire SemanticsTuan Phong Ngo22m
Claims a provably optimal stateless model checking method for the Release-Acquire fragment of C/C++11 that explores each program order and read‑from relation…
Talk in English on
Finding Broken Promises in Asynchronous JavaScript ProgramsSaba Alimadadi24m
PromiseKeeper instruments Node.js programs to build extended promise graphs that model ES6 features (default reactions, exceptions, race/all) via dynamic…
Talk in English on
ExceLint - Automatically Finding Spreadsheet Formula ErrorsDaniel W. Barowy22m
ExceLint is a Microsoft Excel plugin that implements a static analysis for spreadsheet formula errors, partitioning sheets into rectangular regions and…
Talk in English on
Every Data Structure Deserves Lock-Free Memory ReclamationNachshon Cohen21m
Presents a fully lock-free memory-reclamation system that combines a lock-free mark-and-sweep base with a lightweight, generic root-gathering mechanism applied…
Talk in English on
Empowering Union and Intersection Types with Integrated SubtypingFabian Muehlboeck22m
Framework implements a decision procedure that combines a simple, textbook reductive subtyping kernel with user-specified extensions to recognize…
Talk in English
Effect Handlers for the MassesJonathan Immanuel Brachthäuser24m
First Java implementation of algebraic effect handlers: a library plus a bytecode toolchain that performs a type-selective CPS bytecode transform (preserves…
Talk in English on
Distributed System Development with ScalaLociPascal Weisenburger23m
ScalaLoci provides placement types and event streams that encode where values and streams live, generate remote-access code, and statically check…
Talk in English on
DeepBugs - A Learning Approach to Name-based Bug DetectionMichael Pradel25m
Uses simple code transformations to seed millions of training examples, learns identifier embeddings with word2vec and concatenates those vectors into a…
Talk in English on
Gradual Liquid Type InferenceNiki Vazou24m
Combines Liquid Haskell’s liquid refinement type inference with gradual refinement types to solve two problems: global, non-modular inference that needs…
Talk in Dutch on
goSLP - Globally Optimized Superword Level Parallelism FrameworkCharith Mendis21m
goSLP formulates SLP statement packing as an ILP solver optimization across whole functions, then solves vector permutation selection with dynamic programming…
Talk in English on
Format Abstraction for Sparse Tensor Algebra CompilersStephen Chou25m
Paper demonstrates an abstraction that expresses tensor formats as composable per-dimension level formats and a plugin-style code generator that emits concrete…
Talk in English on
FlashProfile - A Framework for Synthesizing Data ProfilesSaswat Padhi21m
A framework called FlashProfile uses the PROSE inductive-synthesis engine (PROSE) to cluster strings by a pattern-aware similarity (hierarchical clustering…
Talk in English on
Finding Code That Explodes Under Symbolic EvaluationJames Bornholt23m
A profiler called SymPro constructs a symbolic evaluation graph and a symbolic heap to locate where symbolic evaluation explodes, implemented for Rosette and…
Talk in English
Concurrency-aware object-oriented programming with rolesMichael Faes25m
A concurrency model makes every object carry a per-task role and enforces three concrete roles: readwrite role, readonly role, pure role. When sharing, objects…
Talk in English on
Compositional Programming and Testing of Dynamic Distributed SystemsAnkush Desai22m
Paper: https://dl.acm.org/citation.cfm?id=3276529 Real-world distributed systems are rarely built as a monolithic system. Instead, they are composed of…
Talk in English on
Collapsible Contracts: Fixing a Pathology of Gradual TypingDaniel Feltey22m
Introduces collapsible contracts as a tree-structured replacement for opaque contract wrappers that merges new and existing contracts with a merge function…
Talk in English
BioScript: Programming Safe Chemistry on Laboratories-on-a-ChipMohsen Lesani24m
A domain-specific language, BioScript targets digital microfluidic biochips and pairs a BioScript type system (models EPA’s 68 reactivity groups as union types…
Talk in English on
Bidirectional Evaluation with Direct ManipulationMikaël Mayer25m
Presents an algorithm that synthesizes program edits from direct output changes by retracing evaluation steps to rewrite a full ML-style functional program…
Talk in English
Beauty is the Promise of HappinessJenny Quillien01h 27m
Argues that beauty is a creative force that resolves paradox at the edge and that designers must aim for human wellbeing, not just surface aesthetics. Uses…
Talk in English on
Awards/SIGPLAN Town Hall MeetingJens Palsberg41m
SIGPLAN reports spending $200,000 a year on travel grants for about 40 students per conference, offers gold open access paid for authors when needed, and asks…
Talk in English
Automatic Diagnosis and Correction of Logical Errors for Functional Programming AssignmentsJunho Lee25m
FixML is a tool that combines statistical error-localization with type-directed program synthesis plus component reduction and symbolic-execution pruning to…
Talk in English
AnyDSL: A Partial Evaluation Framework for Programming High-Performance LibrariesRoland Lei├Ła23m
Claims an annotation-based, online partial evaluator over a CPS-style IR that drives code generation for vectorization/parallelization on CPUs and GPUs via…
Talk in English on
A new modularity for softwareDaniel Jackson01h 24m
Proposes a practical modularity where user-facing "concepts" are the unit of design: each has a purpose, structure, actions and an operational principle…
Talk in English on
An Empirical Study of the Effect of Source-level Loop Transformations on Compiler StabilityZhangxiaowen Gong25m
A systematic study extracts ~1,100 loop nests and generates 65,000 mutations via interchange, tiling, unrolling, rolling and distribution, then compiles with…
Talk in English on
Cross-Component Garbage CollectionMichael Lippautz24m
A generic algorithm called cross-component tracing extends V8’s tracer into Blink so the JavaScript heap can trace C++ DOM objects, requiring object and layout…
Talk in English on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.