Table of contents for issues of ACM SIG{}PLAN Notices

Last update: Wed Sep 27 17:04:36 MDT 2023                Valid HTML 3.2!

Volume 45, Number 1, January, 2010
Volume 45, Number 2, February, 2010
Volume 45, Number 3, March, 2010
Volume 45, Number 4, April, 2010
Volume 45, Number 5, May, 2010
Volume 45, Number 6, June, 2010
Volume 45, Number 7, July, 2010
Volume 45, Number 8, August, 2010
Volume 45, Number 9, September, 2010
Volume 45, Number 10, October, 2010
Volume 45, Number 11, November, 2010
Volume 45, Number 12, December, 2010
Volume 46, Number 1, January, 2011
Volume 46, Number 2, February, 2011
Volume 46, Number 3, March, 2011
Volume 46, Number 4, April, 2011
Volume 46, Number 5, May, 2011
Volume 46, Number 6, June, 2011
Volume 46, Number 7, July, 2011
Volume 46, Number 8, August, 2011
Volume 46, Number 9, September, 2011
Volume 46, Number 10, October, 2011
Volume 46, Number 11, November, 2011
Volume 46, Number 12, December, 2011
Volume 47, Number 1, January, 2012
Volume 47, Number 2, February, 2012
Volume 47, Number 3, March, 2012
Volume 47, Number 4, April, 2012
Volume 47, Number 5, May, 2012
Volume 47, Number 6, June, 2012
Volume 47, Number 7, July, 2012
Volume 47, Number 8, August, 2012
Volume 47, Number 9, September, 2012
Volume 47, Number 10, October, 2012
Volume 47, Number 11, November, 2012
Volume 47, Number 12, December, 2012
Volume 48, Number 1, January, 2013
Volume 48, Number 2, February, 2013
Volume 48, Number 3, March, 2013
Volume 48, Number 4, April, 2013
Volume 48, Number 4S, April, 2013
Volume 48, Number 5, May, 2013
Volume 48, Number 6, June, 2013
Volume 48, Number 7, July, 2013
Volume 48, Number 8, August, 2013
Volume 48, Number 9, September, 2013
Volume 48, Number 10, October, 2013
Volume 48, Number 11, November, 2013
Volume 48, Number 12, December, 2013
Volume 49, Number 1, January, 2014
Volume 49, Number 2, February, 2014
Volume 49, Number 3, March, 2014
Volume 49, Number 4S, April, 2014
Volume 49, Number 5, May, 2014
Volume 49, Number 6, June, 2014
Volume 49, Number 7, July, 2014
Volume 49, Number 8, August, 2014
Volume 49, Number 9, September, 2014
Volume 49, Number 10, October, 2014
Volume 49, Number 11, November, 2014
Volume 49, Number 12, December, 2014
Volume 50, Number 1, January, 2015
Volume 50, Number 2, February, 2015
Volume 50, Number 3, March, 2015
Volume 50, Number 4, April, 2015
Volume 50, Number 5, May, 2015
Volume 50, Number 6, June, 2015
Volume 50, Number 7, July, 2015
Volume 50, Number 8, August, 2015
Volume 50, Number 9, September, 2015
Volume 50, Number 10, October, 2015
Volume 50, Number 11, November, 2015
Volume 50, Number 12, December, 2015
Volume 51, Number 1, January, 2016
Volume 51, Number 2, February, 2016
Volume 51, Number 3, March, 2016
Volume 51, Number 4, April, 2016
Volume 51, Number 5, May, 2016
Volume 51, Number 6, June, 2016
Volume 52, Number 4, April, 2017
Volume 52, Number 2, February, 2017
Volume 52, Number 3, March, 2017
Volume 51, Number 9, September, 2016
Volume 52, Number 4, May, 2017
Volume 51, Number 10, October, 2016
Volume 52, Number 6, June, 2017
Volume 52, Number 1, January, 2017
Volume 51, Number 8, August, 2016
Volume 51, Number 7, July, 2016
Volume 52, Number 7, July, 2017
Volume 52, Number 8, August, 2017
Volume 52, Number 9, September, 2017
Volume 52, Number 10, October, 2017
Volume 52, Number 11, November, 2017
Volume 52, Number 12, December, 2017
Volume 53, Number 1, January, 2018
Volume 53, Number 2, February, 2018
Volume 53, Number 3, March, 2018
Volume 53, Number 4, April, 2018
Volume 53, Number 5, May, 2018
Volume 53, Number 6, June, 2018
Volume 53, Number 7, July, 2018
Volume 53, Number 8, October, 2018
Volume 53, Number 9, November, 2018


ACM SIG{}PLAN Notices
Volume 45, Number 1, January, 2010

           Neil Gershenfeld and   
            David Dalrymple and   
              Kailiang Chen and   
                 Ara Knaian and   
              Forrest Green and   
            Erik D. Demaine and   
            Scott Greenwald and   
          Peter Schmidt-Nielsen   Reconfigurable asynchronous logic
                                  automata: (RALA) . . . . . . . . . . . . 1--6
        Mohamed Faouzi Atig and   
            Ahmed Bouajjani and   
       Sebastian Burckhardt and   
             Madanlal Musuvathi   On the verification problem for weak
                                  memory models  . . . . . . . . . . . . . 7--18
              Eric Koskinen and   
          Matthew Parkinson and   
                Maurice Herlihy   Coarse-grained transactions  . . . . . . 19--30
                  H. Attiya and   
              G. Ramalingam and   
                    N. Rinetzky   Sequential verification of
                                  serializability  . . . . . . . . . . . . 31--42
          Patrice Godefroid and   
             Aditya V. Nori and   
         Sriram K. Rajamani and   
                Sai Deep Tetali   Compositional may-must program analysis:
                                  unleashing the power of alternation  . . 43--56
           Swarat Chaudhuri and   
              Sumit Gulwani and   
            Roberto Lublinerman   Continuity analysis of programs  . . . . 57--70
          William R. Harris and   
    Sriram Sankaranarayanan and   
         Franjo Ivan\vci\'c and   
                    Aarti Gupta   Program analysis via satisfiability
                                  modulo path programs . . . . . . . . . . 71--82
      Jean-Baptiste Tristan and   
                   Xavier Leroy   A simple, verified validator for
                                  software pipelining  . . . . . . . . . . 83--92
                  Adam Chlipala   A verified compiler for an impure
                                  functional language  . . . . . . . . . . 93--106
               Magnus O. Myreen   Verified just-in-time compiler on x86    107--118
                Tachio Terauchi   Dependent types from counterexamples . . 119--130
       Patrick Maxim Rondon and   
             Ming Kawaguchi and   
                   Ranjit Jhala   Low-level liquid types . . . . . . . . . 131--144
           Max Schäfer and   
                   Oege de Moor   Type inference for datalog with complex
                                  type hierarchies . . . . . . . . . . . . 145--156
            Thomas A. Henzinger   From Boolean to quantitative notions of
                                  correctness  . . . . . . . . . . . . . . 157--158
                Andrew M. Pitts   Nominal system T . . . . . . . . . . . . 159--170
              Aquinas Hobor and   
             Robert Dockins and   
                Andrew W. Appel   A theory of indirection via
                                  approximation  . . . . . . . . . . . . . 171--184
               Derek Dreyer and   
                 Georg Neis and   
           Andreas Rossberg and   
                  Lars Birkedal   A relational modal logic for
                                  higher-order stateful ADTs . . . . . . . 185--198
             Philippe Suter and   
                Mirco Dotta and   
                  Viktor Kuncak   Decision procedures for algebraic data
                                  types with abstractions  . . . . . . . . 199--210
             Stephen Magill and   
            Ming-Hsien Tsai and   
                  Peter Lee and   
                  Yih-Kuen Tsay   Automatic numeric abstractions for
                                  heap-manipulating programs . . . . . . . 211--222
               Steffen Jost and   
              Kevin Hammond and   
        Hans-Wolfgang Loidl and   
                 Martin Hofmann   Static determination of quantitative
                                  resource usage for higher-order programs 223--236
            Gregory Malecha and   
             Greg Morrisett and   
            Avraham Shinnar and   
                  Ryan Wisnesky   Toward a verified relational database
                                  management system  . . . . . . . . . . . 237--248
           Andreas Podelski and   
                    Thomas Wies   Counterexample-guided focus  . . . . . . 249--260
        Aleksandar Nanevski and   
           Viktor Vafeiadis and   
                   Josh Berdine   Structuring the verification of
                                  heap-manipulating programs . . . . . . . 261--274
                  Limin Jia and   
              Jianzhou Zhao and   
       Vilhelm Sjöberg and   
              Stephanie Weirich   Dependent types and program equivalence  275--286
           DeLesley S. Hutchins   Pure subtype systems . . . . . . . . . . 287--298
               Simon J. Gay and   
       Vasco T. Vasconcelos and   
      António Ravara and   
               Nils Gesbert and   
          Alexandre Z. Caldeira   Modular session types for distributed
                                  object-oriented programming  . . . . . . 299--312
         Saurabh Srivastava and   
              Sumit Gulwani and   
              Jeffrey S. Foster   From program verification to program
                                  synthesis  . . . . . . . . . . . . . . . 313--326
              Martin Vechev and   
                 Eran Yahav and   
                    Greta Yorsh   Abstraction-guided synthesis of
                                  synchronization  . . . . . . . . . . . . 327--338
            Rastislav Bodik and   
             Satish Chandra and   
              Joel Galenson and   
              Doug Kimelman and   
              Nicholas Tung and   
               Shaon Barman and   
                 Casey Rodarmor   Programming with angelic nondeterminism  339--352
          Michael Greenberg and   
         Benjamin C. Pierce and   
              Stephanie Weirich   Contracts made manifest  . . . . . . . . 353--364
             Jeremy G. Siek and   
                  Philip Wadler   Threesomes, with and without blame . . . 365--376
            Tobias Wrigstad and   
   Francesco Zappa Nardelli and   
           Sylvain Lebresne and   
         Johan Östlund and   
                      Jan Vitek   Integrating typed and untyped code in a
                                  scripting language . . . . . . . . . . . 377--388
                  Ross Tate and   
              Michael Stepp and   
                   Sorin Lerner   Generating compiler optimizations from
                                  proofs . . . . . . . . . . . . . . . . . 389--402
           João Dias and   
                  Norman Ramsey   Automatically generating instruction
                                  selectors using declarative machine
                                  descriptions . . . . . . . . . . . . . . 403--416
                 Trevor Jim and   
         Yitzhak Mandelbaum and   
                   David Walker   Semantics and algorithms for
                                  data-dependent grammars  . . . . . . . . 417--430
             Niklas Broberg and   
                    David Sands   Paralocks: role-based information flow
                                  control and beyond . . . . . . . . . . . 431--444
      Karthikeyan Bhargavan and   
      Cédric Fournet and   
               Andrew D. Gordon   Modular verification of security
                                  protocol code by typing  . . . . . . . . 445--456
       Jean-Phillipe Martin and   
              Michael Hicks and   
               Manuel Costa and   
         Periklis Akritidis and   
                  Miguel Castro   Dynamically checking ownership policies
                                  in concurrent C/C++ programs . . . . . . 457--470
          Matthias Heizmann and   
            Jochen Hoenicke and   
               Andreas Podelski   Nested interpolants  . . . . . . . . . . 471--482
               Andrzej Filinski   Monads in action . . . . . . . . . . . . 483--494
            Naoki Kobayashi and   
             Naoshi Tabuchi and   
                   Hiroshi Unno   Higher-order multi-parameter tree
                                  transducers and recursion schemes for
                                  program verification . . . . . . . . . . 495--508

ACM SIG{}PLAN Notices
Volume 45, Number 2, February, 2010

             Rishiyur S. Nikhil   Using GPCE principles for hardware
                                  systems and accelerators: (bridging the
                                  gap to HW design)  . . . . . . . . . . . 1--2
                 James R. Cordy   Eating our own dog food: DSLs for
                                  generative and transformational
                                  engineering  . . . . . . . . . . . . . . 3--4
    Jeremiah James Willcock and   
           Andrew Lumsdaine and   
              Daniel J. Quinlan   Reusable, generic program analyses and
                                  transformations  . . . . . . . . . . . . 5--14
          Anya Helene Bagge and   
             Valentin David and   
                Magne Haveraaen   The axioms strike back: testing with
                                  concepts and axioms in C++ . . . . . . . 15--24
              Ronald Garcia and   
               Andrew Lumsdaine   Toward foundations for type-reflective
                                  metaprogramming  . . . . . . . . . . . . 25--34
    Hossein Sadat-Mohtasham and   
                H. James Hoover   Transactional pointcuts: designation
                                  reification and advice of interrelated
                                  join points  . . . . . . . . . . . . . . 35--44
               Shumpei Akai and   
                  Shigeru Chiba   Extending AspectJ for separating regions 45--54
             Yanhong A. Liu and   
        Michael Gorbovitski and   
               Scott D. Stoller   A language and framework for
                                  invariant-driven transformations . . . . 55--64
                Stefan Wehr and   
                 Peter Thiemann   JavaGI in the battlefield: practical
                                  experience with generalized interfaces   65--74
              Phil McGachey and   
          Antony L. Hosking and   
               J. Eliot B. Moss   Classifying Java class transformations
                                  for pervasive virtualized access . . . . 75--84
       Alex Villazón and   
              Walter Binder and   
            Danilo Ansaloni and   
                 Philippe Moret   Advanced runtime adaptation for Java . . 85--94
       Alex Villazón and   
              Walter Binder and   
            Danilo Ansaloni and   
                 Philippe Moret   HotWave: creating adaptive tools with
                                  dynamic aspect-oriented programming in
                                  Java . . . . . . . . . . . . . . . . . . 95--98
        Florian Heidenreich and   
           Jendrik Johannes and   
              Mirko Seifert and   
            Christian Wende and   
              Marcel Böhme   Generating safe template languages . . . 99--108
                Soonho Kong and   
                Wontae Choi and   
                   Kwangkeun Yi   Abstract parsing for two-staged
                                  languages with concatenation . . . . . . 109--116
          Srinivas Nedunuri and   
                William R. Cook   Synthesis of fast programs for maximum
                                  segment sum problems . . . . . . . . . . 117--126
         Ansgar Radermacher and   
             Arnaud Cuccuru and   
           Sebastien Gerard and   
        François Terrier   Generating execution infrastructures for
                                  component-oriented specifications with a
                                  model driven toolchain: a case study for
                                  MARTE's GCM and real-time annotations    127--136
              Damien Cassou and   
           Benjamin Bertran and   
            Nicolas Loriant and   
                 Charles Consel   A generative programming approach to
                                  developing pervasive computing systems   137--146
          Jaakko Järvi and   
                 Mat Marcus and   
                Sean Parent and   
               John Freeman and   
                    Jacob Smith   Algorithms for user interfaces . . . . . 147--156
     Christian Kästner and   
                  Sven Apel and   
               Martin Kuhlemann   A model of refactoring physically and
                                  virtually separated features . . . . . . 157--166
                Frans Sanen and   
                Eddy Truyen and   
                  Wouter Joosen   Mapping problem-space to solution-space
                                  features: a feature interaction approach 167--176
           Martin Kuhlemann and   
                 Don Batory and   
         Christian Kästner   Safe composition of non-monotonic
                                  features . . . . . . . . . . . . . . . . 177--186

ACM SIG{}PLAN Notices
Volume 45, Number 3, March, 2010

                 Eric A. Brewer   Technology for developing regions:
                                  Moore's law is not enough  . . . . . . . 1--2
                 Engin Ipek and   
              Jeremy Condit and   
      Edmund B. Nightingale and   
                Doug Burger and   
              Thomas Moscibroda   Dynamically replicated memory: building
                                  reliable systems from nanoscale
                                  resistive memories . . . . . . . . . . . 3--14
               Nevin Kirman and   
 José F. Martínez   A power-efficient all-optical on-chip
                                  interconnect using wavelength-based
                                  oblivious routing  . . . . . . . . . . . 15--28
         Naveen Neelakantam and   
            David R. Ditzel and   
                   Craig Zilles   A real system evaluation of hardware
                                  atomicity for software speculation . . . 29--38
                 Tim Harris and   
               Sa\vsa Tomic and   
      Adrián Cristal and   
                    Osman Unsal   Dynamic filtering: multi-purpose
                                  architecture support for language
                                  runtime systems  . . . . . . . . . . . . 39--52
                 Tom Bergan and   
              Owen Anderson and   
            Joseph Devietti and   
                  Luis Ceze and   
                   Dan Grossman   CoreDet: a compiler and runtime system
                                  for deterministic multithreaded
                                  execution  . . . . . . . . . . . . . . . 53--64
                 Arun Raman and   
                 Hanjun Kim and   
            Thomas R. Mason and   
           Thomas B. Jablin and   
                David I. August   Speculative parallelization using
                                  software multi-threaded transactions . . 65--76
               Dongyoon Lee and   
            Benjamin Wester and   
      Kaushik Veeraraghavan and   
        Satish Narayanasamy and   
              Peter M. Chen and   
                    Jason Flinn   Respec: efficient online multiprocessor
                                  replay via speculation and external
                                  determinism  . . . . . . . . . . . . . . 77--90
              Stijn Eyerman and   
                Lieven Eeckhout   Probabilistic job symbiosis modeling for
                                  SMT processor scheduling . . . . . . . . 91--102
                       Kai Shen   Request behavior variations  . . . . . . 103--116
            F. Ryan Johnson and   
                Radu Stoica and   
         Anastasia Ailamaki and   
                  Todd C. Mowry   Decoupling contention management from
                                  scheduling . . . . . . . . . . . . . . . 117--128
           Sergey Zhuravlev and   
          Sergey Blagodurov and   
             Alexandra Fedorova   Addressing shared resource contention in
                                  multicore processors via scheduling  . . 129--142
                  Ding Yuan and   
                 Haohui Mai and   
               Weiwei Xiong and   
                    Lin Tan and   
              Yuanyuan Zhou and   
              Shankar Pasupathy   SherLog: error diagnosis by connecting
                                  clues from run-time logs . . . . . . . . 143--154
        Dasarath Weeratunge and   
              Xiangyu Zhang and   
             Suresh Jagannathan   Analyzing multicore dumps to facilitate
                                  concurrency bug reproduction . . . . . . 155--166
       Sebastian Burckhardt and   
            Pravesh Kothari and   
         Madanlal Musuvathi and   
            Santosh Nagarakatte   A randomized scheduler with
                                  probabilistic guarantees of finding bugs 167--178
                  Wei Zhang and   
                  Chong Sun and   
                        Shan Lu   ConMem: detecting severe concurrency
                                  bugs through an effect-oriented approach 179--192
Francisco Javier Mesa-Martinez and   
         Ehsan K. Ardestani and   
                     Jose Renau   Characterizing processor thermal
                                  behavior . . . . . . . . . . . . . . . . 193--204
           Ganesh Venkatesh and   
               Jack Sampson and   
            Nathan Goulding and   
           Saturnino Garcia and   
          Vladyslav Bryksin and   
         Jose Lugo-Martinez and   
             Steven Swanson and   
         Michael Bedford Taylor   Conservation cores: reducing the energy
                                  of mature computations . . . . . . . . . 205--218
              Kshitij Sudan and   
       Niladrish Chatterjee and   
              David Nellans and   
               Manu Awasthi and   
     Rajeev Balasubramonian and   
                       Al Davis   Micro-pages: increasing DRAM efficiency
                                  with locality-aware data placement . . . 219--230
              Steven Pelley and   
              David Meisner and   
          Pooya Zandevakili and   
          Thomas F. Wenisch and   
                 Jack Underwood   Power routing: dynamic power
                                  provisioning in the data center  . . . . 231--242
                Faraz Ahmad and   
               T. N. Vijaykumar   Joint optimization of idle and cooling
                                  power in data centers while maintaining
                                  response time  . . . . . . . . . . . . . 243--256
      Michelle L. Goodstein and   
          Evangelos Vlachos and   
                Shimin Chen and   
         Phillip B. Gibbons and   
          Michael A. Kozuch and   
                  Todd C. Mowry   Butterfly analysis: adapting dataflow
                                  analysis to dynamic parallel monitoring  257--270
          Evangelos Vlachos and   
      Michelle L. Goodstein and   
          Michael A. Kozuch and   
                Shimin Chen and   
              Babak Falsafi and   
         Phillip B. Gibbons and   
                  Todd C. Mowry   ParaLog: enabling and accelerating
                                  online parallel monitoring of
                                  multithreaded applications . . . . . . . 271--284
            Amir H. Hormati and   
               Yoonseo Choi and   
                   Mark Woh and   
           Manjunath Kudlur and   
              Rodric Rabbah and   
               Trevor Mudge and   
                   Scott Mahlke   MacroSS: macro-SIMDization of streaming
                                  applications . . . . . . . . . . . . . . 285--296
              Dong Hyuk Woo and   
              Hsien-Hsin S. Lee   COMPASS: a programmable data prefetcher
                                  using idle GPU shaders . . . . . . . . . 297--310
             Daniel Sanchez and   
             Richard M. Yoo and   
             Christos Kozyrakis   Flexible architectural support for
                                  fine-grain scheduling  . . . . . . . . . 311--322
        Bogdan F. Romanescu and   
            Alvin R. Lebeck and   
                Daniel J. Sorin   Specifying and dynamically verifying
                                  address translation-aware memory
                                  consistency  . . . . . . . . . . . . . . 323--334
             Eiman Ebrahimi and   
              Chang Joo Lee and   
                 Onur Mutlu and   
                   Yale N. Patt   Fairness via source throttling: a
                                  configurable and high-performance
                                  fairness substrate for multi-core memory
                                  systems  . . . . . . . . . . . . . . . . 335--346
               Isaac Gelado and   
             Javier Cabezas and   
              Nacho Navarro and   
              John E. Stone and   
               Sanjay Patel and   
                 Wen-mei W. Hwu   An asymmetric distributed shared memory
                                  model for heterogeneous parallel systems 347--358
     Abhishek Bhattacharjee and   
             Margaret Martonosi   Inter-core cooperative TLB for chip
                                  multiprocessors  . . . . . . . . . . . . 359--370
               Ruirui Huang and   
             Daniel Y. Deng and   
                  G. Edward Suh   Orthrus: efficient software integrity
                                  protection on multi-cores  . . . . . . . 371--384
              Shuguang Feng and   
             Shantanu Gupta and   
                Amin Ansari and   
                   Scott Mahlke   Shoestring: probabilistic soft error
                                  reliability on the cheap . . . . . . . . 385--396
              Doe Hyun Yoon and   
                    Mattan Erez   Virtualized and flexible ECC for main
                                  memory . . . . . . . . . . . . . . . . . 397--408

ACM SIG{}PLAN Notices
Volume 45, Number 4, April, 2010

                 Minming Li and   
             Chun Jason Xue and   
               Tiantian Liu and   
                  Yingchao Zhao   Analysis and approximation for bank
                                  selection instruction minimization on
                                  partitioned memory architecture  . . . . 1--8
                Robert Pyka and   
               Felipe Klein and   
             Peter Marwedel and   
           Stylianos Mamagkakis   Versatile system-level memory-aware
                                  platform description approach for
                                  embedded MPSoCs  . . . . . . . . . . . . 9--16
                Yongjoo Kim and   
                Jongeun Lee and   
         Aviral Shrivastava and   
                  Yunheung Paek   Operation and data mapping for CGRAs
                                  with multi-bank memory . . . . . . . . . 17--26
  Mohammad H. Foroozannejad and   
              Matin Hashemi and   
           Trevor L. Hodges and   
                  Soheil Ghiasi   Look into details: the benefits of
                                  fine-grain streaming buffer analysis . . 27--36
           Simon Perathoner and   
                Tobias Rein and   
              Lothar Thiele and   
                 Kai Lampka and   
                      Jonas Rox   Modeling structured event streams in
                                  system level performance analysis  . . . 37--46
                Jens Brandt and   
            Klaus Schneider and   
              Sandeep K. Shukla   Translating concurrent action oriented
                                  specifications to synchronous guarded
                                  actions  . . . . . . . . . . . . . . . . 47--56
       Gwenaël Delaval and   
      Hervé Marchand and   
                    Eric Rutten   Contracts for modular discrete
                                  controller synthesis . . . . . . . . . . 57--66
           Marc Schlickling and   
                  Markus Pister   Semi-automatic derivation of timing
                                  models for WCET analysis . . . . . . . . 67--76
                Ines Viskic and   
                   Lochi Yu and   
                  Daniel Gajski   Design exploration and automatic
                                  generation of MPSoC platform TLMs from
                                  Kahn Process Network applications  . . . 77--84
               Ozcan Ozturk and   
            Mahmut Kandemir and   
              Mary J. Irwin and   
            Sri H. K. Narayanan   Compiler directed network-on-chip
                                  reliability enhancement for chip
                                  multiprocessors  . . . . . . . . . . . . 85--94
         Prasad A. Kulkarni and   
           Michael R. Jantz and   
               David B. Whalley   Improving both the performance benefits
                                  and speed of optimization phase sequence
                                  searches . . . . . . . . . . . . . . . . 95--104
                  Weijia Li and   
                   Youtao Zhang   An efficient code update scheme for DSP
                                  applications in mobile embedded systems  105--114
       John Robert Wernsing and   
                     Greg Stitt   Elastic computing: a framework for
                                  transparent, portable, and adaptive
                                  multi-core heterogeneous computing . . . 115--124
             Matthias Biehl and   
                 Chen DeJiu and   
           Martin Törngren   Integrating safety analysis into the
                                  model-based development toolchain of
                                  automotive embedded systems  . . . . . . 125--132
     Sebastian Fischmeister and   
                     Yanmeng Ba   Sampling-based program execution
                                  monitoring . . . . . . . . . . . . . . . 133--142
         Aviral Shrivastava and   
                Jongeun Lee and   
                Reiley Jeyapaul   Cache vulnerability equations for
                                  protecting data in embedded processor
                                  caches from soft errors  . . . . . . . . 143--152
         Sebastian Altmeyer and   
               Claire Maiza and   
                    Jan Reineke   Resilience analysis: tightening the CRPD
                                  bound for set-associative caches . . . . 153--162
                    Yi Wang and   
                    Duo Liu and   
                  Meng Wang and   
                 Zhiwei Qin and   
                  Zili Shao and   
                      Yong Guan   RNFTL: a reuse-aware NAND flash
                                  translation layer for flash memory . . . 163--172

ACM SIG{}PLAN Notices
Volume 45, Number 5, May, 2010

                 Tilak Agerwala   Exascale computing: the challenges and
                                  opportunities in the next decade . . . . 1--2
   Mario Méndez-Lojo and   
              Donald Nguyen and   
        Dimitrios Prountzos and   
                    Xin Sui and   
           M. Amber Hassaan and   
            Milind Kulkarni and   
           Martin Burtscher and   
                 Keshav Pingali   Structure-driven optimizations for
                                  amorphous data-parallel programs . . . . 3--14
         Katherine E. Coons and   
       Sebastian Burckhardt and   
             Madanlal Musuvathi   GAMBIT: effective unit testing for
                                  concurrency libraries  . . . . . . . . . 15--24
            Jonathan K. Lee and   
                  Jens Palsberg   Featherweight X10: a core calculus for
                                  async-finish parallelism . . . . . . . . 25--36
         Sandya Mannarswamy and   
      Dhruva R. Chakrabarti and   
              Kaushik Rajan and   
                Sujoy Saraswati   Compiler aided selective lock assignment
                                  for improving the performance of
                                  software transactional memory  . . . . . 37--46
    Christopher J. Rossbach and   
            Owen S. Hofmann and   
                 Emmett Witchel   Is transactional programming actually
                                  easier?  . . . . . . . . . . . . . . . . 47--56
           Ferad Zyulkyarov and   
                 Tim Harris and   
             Osman S. Unsal and   
      Adrían Cristal and   
                   Mateo Valero   Debugging programs that use atomic
                                  blocks and transactional memory  . . . . 57--66
           Luke Dalessandro and   
           Michael F. Spear and   
               Michael L. Scott   NOrec: streamlining STM by abolishing
                                  ownership records  . . . . . . . . . . . 67--78
          Walther Maldonado and   
            Patrick Marlier and   
              Pascal Felber and   
                 Adi Suissa and   
              Danny Hendler and   
         Alexandra Fedorova and   
            Julia L. Lawall and   
                  Gilles Muller   Scheduling support for transactional
                                  memory contention management . . . . . . 79--90
        João Barreto and   
    Aleksandar Dragojevi\'c and   
             Paulo Ferreira and   
           Rachid Guerraoui and   
                 Michal Kapalka   Leveraging parallel nesting in
                                  transactional memory . . . . . . . . . . 91--100
            Josep Torrellas and   
                 Bill Gropp and   
               Jaime Moreno and   
             Kunle Olukotun and   
                   Vivek Sarkar   Extreme scale computing: challenges and
                                  opportunities  . . . . . . . . . . . . . 101--102
                         Arvind   Is hardware innovation over? . . . . . . 103--104
         Sara S. Baghsorkhi and   
          Matthieu Delahaye and   
            Sanjay J. Patel and   
           William D. Gropp and   
                 Wen-mei W. Hwu   An adaptive performance modeling tool
                                  for GPU architectures  . . . . . . . . . 105--114
                Jee W. Choi and   
                 Amik Singh and   
               Richard W. Vuduc   Model-driven autotuning of sparse
                                  matrix-vector multiply on GPUs . . . . . 115--126
                  Yao Zhang and   
             Jonathan Cohen and   
                  John D. Owens   Fast tridiagonal solvers on the GPU  . . 127--136
    Edans Flavius O. Sandes and   
    Alba Cristina M. A. de Melo   CUDAlign: using GPU to accelerate the
                                  comparison of megabase genomic sequences 137--146
             Steven Hofmeyr and   
               Costin Iancu and   
             Filip Blagojevi\'c   Load balancing on speed  . . . . . . . . 147--158
            Torsten Hoefler and   
          Christian Siebert and   
               Andrew Lumsdaine   Scalable communication protocols for
                                  dynamic sparse data exchange . . . . . . 159--168
             John W. Romein and   
          P. Chris Broekema and   
              Jan David Mol and   
          Rob V. van Nieuwpoort   The LOFAR correlator: implementation and
                                  performance analysis . . . . . . . . . . 169--178
         Alexandros Tzannes and   
          George C. Caragea and   
               Rajeev Barua and   
                    Uzi Vishkin   Lazy binary-splitting: a run-time
                                  adaptive work-stealing scheduler . . . . 179--190
         Petar Radojkovi\'c and   
     Vladimir \vCakarevi\'c and   
        Javier Verdú and   
               Alex Pajuelo and   
       Francisco J. Cazorla and   
           Mario Nemirovsky and   
                   Mateo Valero   Thread to strand binding of parallel
                                  network applications in massive
                                  multi-threaded systems . . . . . . . . . 191--202
              Eddy Z. Zhang and   
              Yunlian Jiang and   
                    Xipeng Shen   Does cache sharing on modern CMP matter
                                  to the performance of contemporary
                                  multithreaded programs?  . . . . . . . . 203--212
                  Lixia Liu and   
                     Zhiyuan Li   Improving parallelism and locality with
                                  asynchronous algorithms  . . . . . . . . 213--222
        Anthony M. Castaldo and   
                R. Clint Whaley   Scaling LAPACK panel operations using
                                  parallel cache assignment  . . . . . . . 223--232
         Dean F. Sutherland and   
            William L. Scherlis   Composable thread coloring . . . . . . . 233--244
              Kunal Agrawal and   
       Charles E. Leiserson and   
                      Jim Sukha   Helper locks for fork-join parallel
                                  programming  . . . . . . . . . . . . . . 245--256
          Nathan G. Bronson and   
               Jared Casper and   
               Hassan Chafi and   
                 Kunle Olukotun   A practical concurrent binary search
                                  tree . . . . . . . . . . . . . . . . . . 257--268
          Nathan R. Tallent and   
     John M. Mellor-Crummey and   
              Allan Porterfield   Analyzing lock contention in
                                  multithreaded applications . . . . . . . 269--280
           Gautam Upadhyaya and   
          Samuel P. Midkiff and   
                   Vijay S. Pai   Using data structure knowledge for
                                  efficient lock generation and strong
                                  atomicity  . . . . . . . . . . . . . . . 281--292
                  Qasim Ali and   
       Samuel Pratt Midkiff and   
                   Vijay S. Pai   Modeling advanced collective
                                  communication algorithms on Cell-based
                                  systems  . . . . . . . . . . . . . . . . 293--304
                Jidong Zhai and   
              Wenguang Chen and   
                   Weimin Zheng   PHANTOM: predicting performance of
                                  parallel applications on large-scale
                                  parallel machines using a single node    305--314
              Farhana Aleen and   
             Monirul Sharif and   
                  Santosh Pande   Input-driven dynamic execution
                                  prediction of streaming applications . . 315--324
               Daniel Lupei and   
              Bogdan Simion and   
                  Don Pinto and   
             Matthew Misler and   
               Mihai Burcea and   
              William Krick and   
                 Cristiana Amza   Towards scalable and transparent
                                  parallelization of multiplayer games
                                  using transactional memory support . . . 325--326
             Swann Perarnau and   
                Guillaume Huard   KRASH: reproducible CPU load generation
                                  on many cores machines . . . . . . . . . 327--328
  Sai Prashanth Muralidhara and   
            Mahmut Kandemir and   
                 Padma Raghavan   Intra-application shared cache
                                  partitioning for multithreaded
                                  applications . . . . . . . . . . . . . . 329--330
               Alokika Dash and   
                   Brian Demsky   Symbolic prefetching in transactional
                                  distributed shared memory  . . . . . . . 331--332
          Dhruva R. Chakrabarti   New abstractions for effective
                                  performance analysis of STM programs . . 333--334
                 Chao Zhang and   
                  Chen Ding and   
                Xiaoming Gu and   
                Kirk Kelsey and   
                Tongxin Bai and   
                  Xiaobing Feng   Continuous speculative program
                                  parallelization in software  . . . . . . 335--336
        Vladimir Marjanovic and   
       Jesús Labarta and   
      Eduard Ayguadé and   
                   Mateo Valero   Effective communication and computation
                                  overlap with hybrid MPI/SMPSs  . . . . . 337--338
            Daniel Cederman and   
               Philippas Tsigas   Supporting lock-free composition of
                                  concurrent data objects  . . . . . . . . 339--340
                     Yi Guo and   
               Jisheng Zhao and   
               Vincent Cave and   
                   Vivek Sarkar   SLAW: a scalable locality-aware adaptive
                                  work-stealing scheduler for multi-core
                                  systems  . . . . . . . . . . . . . . . . 341--342
                    Yi Yang and   
                 Ping Xiang and   
               Jingfei Kong and   
                   Huiyang Zhou   An optimizing compiler for GPGPU
                                  programs with input-data sharing . . . . 343--344
 Aparna Chandramowlishwaran and   
             Kathleen Knobe and   
                  Richard Vuduc   Applying the concurrent collections
                                  programming model to asynchronous
                                  parallel dense linear algebra  . . . . . 345--346
             Henry Hoffmann and   
            Jonathan Eastep and   
      Marco D. Santambrogio and   
            Jason E. Miller and   
                  Anant Agarwal   Application heartbeats for software
                                  performance and health . . . . . . . . . 347--348
           Donald E. Porter and   
                 Emmett Witchel   Modeling transactional memory workload
                                  performance  . . . . . . . . . . . . . . 349--350
             John D. Carter and   
         William B. Gardner and   
                    Gary Grewal   The Pilot library for novice MPI
                                  programmers  . . . . . . . . . . . . . . 351--352
             Byunghyun Jang and   
             Perhaad Mistry and   
                 Dana Schaa and   
          Rodrigo Dominguez and   
                    David Kaeli   Data transformations enabling loop
                                  vectorization on multithreaded data
                                  parallel architectures . . . . . . . . . 353--354
            Gregory Buehrer and   
   Srinivasan Parthasarathy and   
              Shirish Tatikonda   A distributed placement service for
                                  graph-structured and tree-structured
                                  data . . . . . . . . . . . . . . . . . . 355--356
                 Guodong Li and   
      Ganesh Gopalakrishnan and   
            Robert M. Kirby and   
                    Dan Quinlan   A symbolic verifier for CUDA programs    357--358

ACM SIG{}PLAN Notices
Volume 45, Number 6, June, 2010

            Gregor Richards and   
           Sylvain Lebresne and   
                 Brian Burg and   
                      Jan Vitek   An analysis of the dynamic behavior of
                                  JavaScript programs  . . . . . . . . . . 1--12
            Michael D. Bond and   
            Graham Z. Baker and   
                Samuel Z. Guyer   Breadcrumbs: efficient context
                                  sensitivity for dynamic bug detection
                                  analyses . . . . . . . . . . . . . . . . 13--24
            Olatunji Ruwase and   
                Shimin Chen and   
         Phillip B. Gibbons and   
                  Todd C. Mowry   Decoupled lifeguards: enabling path
                                  optimizations for dynamic correctness
                                  checking tools . . . . . . . . . . . . . 25--35
            Byeongcheol Lee and   
             Ben Wiedermann and   
              Martin Hirzel and   
               Robert Grimm and   
            Kathryn S. McKinley   Jinn: synthesizing dynamic bug detectors
                                  for foreign language interfaces  . . . . 36--49
             Prakash Prabhu and   
         Ganesan Ramalingam and   
                  Kapil Vaswani   Safe programmable speculative
                                  parallelism  . . . . . . . . . . . . . . 50--61
                  Chen Tian and   
                   Min Feng and   
                    Rajiv Gupta   Supporting speculative parallelization
                                  in the presence of dynamic data
                                  structures . . . . . . . . . . . . . . . 62--73
            Mahmut Kandemir and   
             Taylan Yemliha and   
   SaiPrashanth Muralidhara and   
        Shekhar Srikantaiah and   
            Mary Jane Irwin and   
                  Yuanrui Zhnag   Cache topology aware computation mapping
                                  for multicores . . . . . . . . . . . . . 74--85
                    Yi Yang and   
                 Ping Xiang and   
               Jingfei Kong and   
                   Huiyang Zhou   A GPGPU compiler for memory optimization
                                  and parallelism management . . . . . . . 86--97
                   Susan Eggers   2010 Athena lecture  . . . . . . . . . . 98--98
                  Jean Yang and   
               Chris Hawblitzel   Safe to the last instruction: automated
                                  verification of a type-safe operating
                                  system . . . . . . . . . . . . . . . . . 99--110
            Zachary Tatlock and   
                   Sorin Lerner   Bringing extensibility to verified
                                  compilers  . . . . . . . . . . . . . . . 111--121
                  Adam Chlipala   Ur: statically-typed metaprogramming
                                  with type-level record computation . . . 122--133
               Michael Emmi and   
             Rupak Majumdar and   
                 Roman Manevich   Parameterized verification of
                                  transactional memories . . . . . . . . . 134--145
                Filip Pizlo and   
              Lukasz Ziarek and   
                   Petr Maj and   
          Antony L. Hosking and   
              Ethan Blanton and   
                      Jan Vitek   SCHISM: fragmentation-tolerant real-time
                                  garbage collection . . . . . . . . . . . 146--159
                 Guoqing Xu and   
                 Atanas Rountev   Detecting inefficiently-used containers
                                  to avoid bloat . . . . . . . . . . . . . 160--173
                 Guoqing Xu and   
              Nick Mitchell and   
             Matthew Arnold and   
             Atanas Rountev and   
            Edith Schonberg and   
                  Gary Sevitsky   Finding low-utility data structures  . . 174--186
             Todd Mytkowicz and   
                 Amer Diwan and   
         Matthias Hauswirth and   
               Peter F. Sweeney   Evaluating the accuracy of Java
                                  profilers  . . . . . . . . . . . . . . . 187--197
               Woongki Baek and   
            Trishul M. Chilimbi   Green: a framework for supporting
                                  energy-conscious programming using
                                  controlled approximation . . . . . . . . 198--209
              Kaushik Rajan and   
            Sriram Rajamani and   
            Shashank Yaduvanshi   GUESSTIMATE: a programming model for
                                  collaborative distributed systems  . . . 210--220
                    Qian Xi and   
                   David Walker   A context-free markup language for
                                  semi-structured text . . . . . . . . . . 221--232
                Florian Loitsch   Printing floating-point numbers quickly
                                  and accurately with integers . . . . . . 233--243
            Cormac Flanagan and   
              Stephen N. Freund   Adversarial memory for detecting
                                  destructive races  . . . . . . . . . . . 244--254
            Michael D. Bond and   
         Katherine E. Coons and   
            Kathryn S. McKinley   PACER: proportional detection of data
                                  races  . . . . . . . . . . . . . . . . . 255--268
             Takuya Nakaike and   
               Maged M. Michael   Lock elision for read-only critical
                                  sections in Java . . . . . . . . . . . . 269--278
           Swarat Chaudhuri and   
           Armando Solar-Lezama   Smooth interpretation  . . . . . . . . . 279--291
              Sumit Gulwani and   
                Florian Zuleger   The reachability-bound problem . . . . . 292--304
              Matthew Might and   
         Yannis Smaragdakis and   
                 David Van Horn   Resolving and exploiting the $k$-CFA
                                  paradox: illuminating functional vs.
                                  object-oriented program analysis . . . . 305--315
              Viktor Kuncak and   
          Mikaël Mayer and   
              Ruzica Piskac and   
                 Philippe Suter   Complete functional synthesis  . . . . . 316--329
       Sebastian Burckhardt and   
                 Chris Dern and   
         Madanlal Musuvathi and   
                        Roy Tan   Line-Up: a complete and automatic
                                  linearizability checker  . . . . . . . . 330--340
               Emina Torlak and   
             Mandana Vaziri and   
                   Julian Dolby   MemSAT: checking axiomatic
                                  specifications of memory models  . . . . 341--350
              Daniel Marino and   
           Abhayendra Singh and   
             Todd Millstein and   
         Madanlal Musuvathi and   
            Satish Narayanasamy   DRFX: a simple and efficient memory
                                  model for concurrent programming
                                  languages  . . . . . . . . . . . . . . . 351--362
             Craig Chambers and   
            Ashish Raniwala and   
              Frances Perry and   
              Stephen Adams and   
            Robert R. Henry and   
            Robert Bradshaw and   
              Nathan Weizenbaum   FlumeJava: easy, efficient data-parallel
                                  pipelines  . . . . . . . . . . . . . . . 363--375
                  Heidi Pan and   
           Benjamin Hindman and   
               Krste Asanovi\'c   Composing parallel software efficiently
                                  with Lithe . . . . . . . . . . . . . . . 376--387
                   Jin Zhou and   
                   Brian Demsky   Bamboo: a data-centric, object-oriented
                                  approach to many-core software . . . . . 388--399
            Edwin Westbrook and   
             Mathias Ricken and   
                  Jun Inoue and   
                 Yilong Yao and   
            Tamer Abdelatif and   
                     Walid Taha   Mint: Java multi-stage programming using
                                  weak separability  . . . . . . . . . . . 400--411
                  Juan Chen and   
                 Ravi Chugh and   
                   Nikhil Swamy   Type-preserving compilation of
                                  end-to-end verification of security
                                  enforcement  . . . . . . . . . . . . . . 412--423
                  Ross Tate and   
                  Juan Chen and   
               Chris Hawblitzel   Inferable object-oriented typed assembly
                                  language . . . . . . . . . . . . . . . . 424--435
             Yit Phang Khoo and   
         Bor-Yuh Evan Chang and   
              Jeffrey S. Foster   Mixing type checking and symbolic
                                  execution  . . . . . . . . . . . . . . . 436--447
                  Yang Chen and   
              Yuanjie Huang and   
            Lieven Eeckhout and   
             Grigori Fursin and   
                 Liang Peng and   
              Olivier Temam and   
                   Chengyong Wu   Evaluating iterative optimization across
                                  1000 datasets  . . . . . . . . . . . . . 448--459
             Md Kamruzzaman and   
             Steven Swanson and   
                Dean M. Tullsen   Software data spreading: leveraging
                                  distributed caches to improve single
                                  thread performance . . . . . . . . . . . 460--470
         Jennifer B. Sartor and   
       Stephen M. Blackburn and   
            Daniel Frampton and   
              Martin Hirzel and   
            Kathryn S. McKinley   Z-rays: divide arrays and conquer speed
                                  and flexibility  . . . . . . . . . . . . 471--482
               Umut A. Acar and   
               Guy Blelloch and   
               Ruy Ley-Wild and   
          Kanat Tangwongsan and   
                  Duru Turkoglu   Traceable data types for self-adjusting
                                  computation  . . . . . . . . . . . . . . 483--496

ACM SIG{}PLAN Notices
Volume 45, Number 7, July, 2010

                  Peter M. Chen   Transistors to toys: teaching systems to
                                  freshmen . . . . . . . . . . . . . . . . 1--2
                Aaron Pohle and   
      Björn Döbel and   
           Michael Roitzsch and   
            Hermann Härtig   Capability wrangling made easy:
                                  debugging on a microkernel with \tt
                                  valgrind . . . . . . . . . . . . . . . . 3--12
                   Jim Chow and   
          Dominic Lucchetti and   
              Tal Garfinkel and   
          Geoffrey Lefebvre and   
               Ryan Gardner and   
               Joshua Mason and   
                  Sam Small and   
                  Peter M. Chen   Multi-stage replay with Crosscut . . . . 13--24
               Yijian Huang and   
                 Haibo Chen and   
                     Binyu Zang   Optimizing crash dump in virtualized
                                  environments . . . . . . . . . . . . . . 25--36
                  Galen C. Hunt   Looking beyond a singularity . . . . . . 37--38
              Ben L. Titzer and   
     Thomas Würthinger and   
                 Doug Simon and   
                 Marcelo Cintra   Improving compiler-runtime separation
                                  with XIR . . . . . . . . . . . . . . . . 39--50
           Nicolas Geoffray and   
           Gaël Thomas and   
               Julia Lawall and   
              Gilles Muller and   
                 Bertil Folliot   VMKit: a substrate for managed runtime
                                  environments . . . . . . . . . . . . . . 51--62
                 Qing Zhang and   
            John McCullough and   
                  Justin Ma and   
               Nabil Schear and   
             Michael Vrable and   
                Amin Vahdat and   
            Alex C. Snoeren and   
        Geoffrey M. Voelker and   
                  Stefan Savage   Neon: system support for derived data
                                  management . . . . . . . . . . . . . . . 63--74
                     Lei Ye and   
                     Gen Lu and   
             Sushanth Kumar and   
               Chris Gniady and   
                John H. Hartman   Energy-efficient storage in virtual
                                  machine environments . . . . . . . . . . 75--84
            Vahid Kazempour and   
                 Ali Kamali and   
             Alexandra Fedorova   AASH: an asymmetry-aware scheduler for
                                  hypervisors  . . . . . . . . . . . . . . 85--96
                    Min Lee and   
         A. S. Krishnakumar and   
                P. Krishnan and   
               Navjot Singh and   
                 Shalini Yajnik   Supporting soft real-time tasks in the
                                  Xen hypervisor . . . . . . . . . . . . . 97--108
                 Rei Odaira and   
             Kazunori Ogata and   
         Kiyokuni Kawachiya and   
             Tamiya Onodera and   
                Toshio Nakatani   Efficient runtime tracking of allocation
                                  sites in Java  . . . . . . . . . . . . . 109--120
         Michiaki Tatsubori and   
             Akihiko Tozawa and   
          Toyotaro Suzumura and   
                Scott Trent and   
                 Tamiya Onodera   Evaluation of a just-in-time compiler
                                  retrofitted for PHP  . . . . . . . . . . 121--132
        Manjiri A. Namjoshi and   
             Prasad A. Kulkarni   Novel online profiling for virtual
                                  machines . . . . . . . . . . . . . . . . 133--144
                 Apala Guha and   
              Kim hazelwood and   
                 Mary Lou Soffa   DBT path selection for holistic memory
                                  efficiency and performance . . . . . . . 145--156
                 Goh Kondoh and   
                Hideaki Komatsu   Dynamic binary translation specialized
                                  for embedded systems . . . . . . . . . . 157--166

ACM SIG{}PLAN Notices
Volume 45, Number 8, August, 2010

         Katherine Barabash and   
                   Erez Petrank   Tracing garbage collection on highly
                                  parallel platforms . . . . . . . . . . . 1--10
               Fridtjof Siebert   Concurrent, parallel, real-time
                                  garbage-collection . . . . . . . . . . . 11--20
               Todd A. Anderson   Optimizations in a private nursery-based
                                  garbage collector  . . . . . . . . . . . 21--30
        Santosh Nagarakatte and   
              Jianzhou Zhao and   
          Milo M. K. Martin and   
                Steve Zdancewic   CETS: compiler enforced temporal safety
                                  for C  . . . . . . . . . . . . . . . . . 31--40
              Martin Vechev and   
                 Eran Yahav and   
                    Greta Yorsh   PHALANX: parallel checking of expressive
                                  heap assertions  . . . . . . . . . . . . 41--50
                   Peter Sewell   Memory, an elusive abstraction . . . . . 51--52
             Tomas Petricek and   
                       Don Syme   Collecting Hollywood's garbage: avoiding
                                  space-leaks in composite events  . . . . 53--62
                  Chen Tian and   
                   Min Feng and   
                    Rajiv Gupta   Speculative parallelization using state
                                  separation and multiple value prediction 63--72
             Tomoharu Ugawa and   
             Hideya Iwasaki and   
                  Taiichi Yuasa   Improved replication-based incremental
                                  garbage collection for embedded systems  73--82
           Laurence Hellyer and   
              Richard Jones and   
              Antony L. Hosking   The locality of concurrent write
                                  barriers . . . . . . . . . . . . . . . . 83--92
                   Qin Zhao and   
             Derek Bruening and   
              Saman Amarasinghe   Efficient memory shadowing for 64-bit
                                  architectures  . . . . . . . . . . . . . 93--102
              Jeremy Singer and   
           Richard E. Jones and   
                Gavin Brown and   
             Mikel Luján   The economics of garbage collection  . . 103--112
                  Mirza Beg and   
                 Peter van Beek   A graph theoretic approach to
                                  cache-conscious placement of data for
                                  direct mapped caches . . . . . . . . . . 113--120
              Elvira Albert and   
               Samir Genaim and   
   Miguel Gómez-Zamalloa   Parametric inference of memory
                                  requirements for garbage collected
                                  languages  . . . . . . . . . . . . . . . 121--130

ACM SIG{}PLAN Notices
Volume 45, Number 9, September, 2010

           Michael J. C. Gordon   ML: metalanguage or object language? . . 1--2
              James Chapman and   
Pierre-Évariste Dagand and   
              Conor McBride and   
                   Peter Morris   The gentle art of levitation . . . . . . 3--14
       Dimitrios Vytiniotis and   
              Andrew J. Kennedy   Functional pearl: every bit counts . . . 15--26
Jérémy Buisson and   
                  Fabien Dagnat   ReCaml: execution state as the
                                  cornerstone of reconfigurations  . . . . 27--38
               Karl Mazurak and   
                Steve Zdancewic   Lolliproc: to concurrency from classical
                                  linear logic via Curry--Howard and
                                  control  . . . . . . . . . . . . . . . . 39--50
             David Van Horn and   
                  Matthew Might   Abstracting abstract machines  . . . . . 51--62
          Stefan Holdermans and   
                  Jurriaan Hage   Polyvariant flow analysis with
                                  higher-ranked polymorphic types and
                                  higher-order effect operators  . . . . . 63--74
             Matthew Naylor and   
                 Colin Runciman   The Reduceron reconfigured . . . . . . . 75--86
                David Scott and   
              Richard Sharp and   
          Thomas Gazagnaire and   
              Anil Madhavapeddy   Using functional programming within an
                                  industrial product group: perspectives
                                  and perceptions  . . . . . . . . . . . . 87--92
             Lars Bergstrom and   
                Mike Rainey and   
                 John Reppy and   
                  Adam Shaw and   
                  Matthew Fluet   Lazy tree splitting  . . . . . . . . . . 93--104
           Gavin M. Bierman and   
           Andrew D. Gordon and   
             Catalin Hritcu and   
               David Langworthy   Semantic subtyping with an SMT solver    105--116
        Sam Tobin-Hochstadt and   
             Matthias Felleisen   Logical types for untyped languages  . . 117--128
             Matthias Felleisen   TeachScheme!: a checkpoint . . . . . . . 129--130
                     Karl Crary   Higher-order representation of
                                  substructural logics . . . . . . . . . . 131--142
               Derek Dreyer and   
                 Georg Neis and   
                  Lars Birkedal   The impact of higher-order state and
                                  control effects on local relational
                                  reasoning  . . . . . . . . . . . . . . . 143--156
                 Jason Reed and   
             Benjamin C. Pierce   Distance makes the types grow stronger:
                                  a calculus for differential privacy  . . 157--168
          Jamie Morgenstern and   
               Daniel R. Licata   Security-typed programming within
                                  dependently typed programming  . . . . . 169--180
     Janis Voigtländer and   
               Zhenjiang Hu and   
           Kazutaka Matsuda and   
                      Meng Wang   Combining syntactic and semantic
                                  bidirectionalization . . . . . . . . . . 181--192
         Davi M. J. Barbosa and   
              Julien Cretin and   
                Nate Foster and   
          Michael Greenberg and   
             Benjamin C. Pierce   Matching lenses: alignment and view
                                  update . . . . . . . . . . . . . . . . . 193--204
            Soichiro Hidaka and   
               Zhenjiang Hu and   
             Kazuhiro Inaba and   
              Hiroyuki Kato and   
           Kazutaka Matsuda and   
                 Keisuke Nakano   Bidirectionalizing graph transformations 205--216
          Nicolas Pouillard and   
        François Pottier   A fresh look at programming with names
                                  and binders  . . . . . . . . . . . . . . 217--228
            Marcus Crestani and   
                Michael Sperber   Experience report: growing programming
                                  languages for beginning students . . . . 229--234
             Ryan Culpepper and   
             Matthias Felleisen   Fortifying macros  . . . . . . . . . . . 235--246
                Guy E. Blelloch   Functional parallel algorithms . . . . . 247--248
               Gilad Arnold and   
        Johannes Hölzl and   
      Ali Sinan Köksal and   
     Rastislav Bodík and   
                    Mooly Sagiv   Specifying and verifying sparse matrix
                                  codes  . . . . . . . . . . . . . . . . . 249--260
            Gabriele Keller and   
   Manuel M. T. Chakravarty and   
         Roman Leshchinskiy and   
         Simon Peyton Jones and   
                  Ben Lippmeier   Regular, shape-polymorphic, parallel
                                  arrays in Haskell  . . . . . . . . . . . 261--272
           Andrew McCreight and   
              Tim Chevalier and   
                 Andrew Tolmach   A certified framework for compiling and
                                  executing garbage-collected languages    273--284
         Nils Anders Danielsson   Total parser combinators . . . . . . . . 285--296
             Edwin C. Brady and   
                  Kevin Hammond   Scrapping your inefficient engine: using
                                  partial evaluation to improve
                                  domain-specific language implementation  297--308
                  Neil Mitchell   Rethinking supercompilation  . . . . . . 309--320
      Arthur Charguéraud   Program verification through
                                  characteristic formulae  . . . . . . . . 321--332
         Antonis Stampoulis and   
                     Zhong Shao   VeriML: typed computation of logical
                                  terms inside a language with effects . . 333--344
     Jean-Philippe Bernardy and   
             Patrik Jansson and   
                  Ross Paterson   Parametricity and dependent types  . . . 345--356
          Sebastian Fischer and   
                 Frank Huch and   
                   Thomas Wilke   A play on regular expressions:
                                  functional pearl . . . . . . . . . . . . 357--368
                     Iustin Pop   Experience report: Haskell as a reagent:
                                  results and observations on the use of
                                  Haskell in a Python project  . . . . . . 369--374
          J. Garrett Morris and   
                  Mark P. Jones   Instance chains: type class programming
                                  without overlapping instances  . . . . . 375--386

ACM SIG{}PLAN Notices
Volume 45, Number 10, October, 2010

              Stephanie Forrest   The case for evolvable software  . . . . 1--1
             Benjamin C. Pierce   Art, science, and fear . . . . . . . . . 2--2
                       Don Syme   F#: Taking Succinct, Efficient, Typed
                                  Functional Programming into the
                                  Mainstream . . . . . . . . . . . . . . . 3--3
             Kenneth O. Stanley   To achieve our highest goals, we must be
                                  willing to abandon them  . . . . . . . . 3--3
           Michael Roberson and   
         Chandrasekhar Boyapati   Efficient modular glass box software
                                  model checking . . . . . . . . . . . . . 4--21
               Stefan Hanenberg   An experiment about static and dynamic
                                  type systems: doubts about the positive
                                  impact of static type systems on
                                  development time . . . . . . . . . . . . 22--35
            Shachar Itzhaky and   
              Sumit Gulwani and   
              Neil Immerman and   
                    Mooly Sagiv   A simple inductive synthesis methodology
                                  and its applications . . . . . . . . . . 36--46
            Julien Mercadal and   
              Quentin Enard and   
             Charles Consel and   
                Nicolas Loriant   A domain-specific approach to
                                  architecturing error handling in
                                  pervasive computing  . . . . . . . . . . 47--61
                     Wei Li and   
              Charles Zhang and   
                     Songlin Hu   G-Finder: routing programming questions
                                  closer to the experts  . . . . . . . . . 62--73
               Rashina Hoda and   
          Philippe Kruchten and   
                James Noble and   
                Stuart Marshall   Agility in context . . . . . . . . . . . 74--88
            Joshua Auerbach and   
             David F. Bacon and   
                Perry Cheng and   
                  Rodric Rabbah   Lime: a Java-compatible and
                                  synthesizable language for heterogeneous
                                  architectures  . . . . . . . . . . . . . 89--108
                Stephen Kou and   
                  Jens Palsberg   From OO to FPGA: fitting round objects
                                  into square hardware?  . . . . . . . . . 109--124
                   Kai Tian and   
              Yunlian Jiang and   
              Eddy Z. Zhang and   
                    Xipeng Shen   An input-centric paradigm for program
                                  dynamic optimizations  . . . . . . . . . 125--139
           Benjamin P. Wood and   
             Adrian Sampson and   
                  Luis Ceze and   
                   Dan Grossman   Composable specifications for structured
                                  shared-memory communication  . . . . . . 140--159
                    Yao Shi and   
                Soyeon Park and   
                Zuoning Yin and   
                    Shan Lu and   
              Yuanyuan Zhou and   
              Wenguang Chen and   
                   Weimin Zheng   Do I use the wrong definition?: DeFuse:
                                  definition-use invariants for detecting
                                  concurrency and sequential bugs  . . . . 160--174
                 Mark Gabel and   
               Junfeng Yang and   
                    Yuan Yu and   
          Moises Goldszmidt and   
                    Zhendong Su   Scalable and systematic detection of
                                  buggy inconsistencies in source code . . 175--190
             Kazunori Ogata and   
               Dai Mikurube and   
         Kiyokuni Kawachiya and   
                Scott Trent and   
                 Tamiya Onodera   A study of Java's non-Java memory  . . . 191--204
               Ross McIlroy and   
                    Joe Sventek   Hera-JVM: a runtime system for
                                  heterogeneous multi-core architectures   205--222
              Michal Wegiel and   
                 Chandra Krintz   Cross-language, type-safe, and
                                  transparent object sharing for
                                  co-located managed runtimes  . . . . . . 223--240
               Guoliang Jin and   
              Aditya Thakur and   
                 Ben Liblit and   
                        Shan Lu   Instrumentation and sampling strategies
                                  for cooperative concurrency bug
                                  isolation  . . . . . . . . . . . . . . . 241--255
      Christoph Reichenbach and   
              Neil Immerman and   
         Yannis Smaragdakis and   
      Edward E. Aftandilian and   
                Samuel Z. Guyer   What can the GC compute efficiently?: a
                                  language for heap assertions at GC time  256--269
            Rahul Purandare and   
           Matthew B. Dwyer and   
               Sebastian Elbaum   Monitor optimization via
                                  stutter-equivalent loop transformation   270--285
               Max Schaefer and   
                   Oege de Moor   Specifying and implementing refactorings 286--301
            Hoan Anh Nguyen and   
          Tung Thanh Nguyen and   
           Gary Wilson, Jr. and   
            Anh Tuan Nguyen and   
                Miryung Kim and   
                 Tien N. Nguyen   A graph-based approach to API usage
                                  adaptation . . . . . . . . . . . . . . . 302--321
                   Stephen Kell   Component adaptation and assembly using
                                  interface relations  . . . . . . . . . . 322--340
    Bruno C. d. S. Oliveira and   
              Adriaan Moors and   
                 Martin Odersky   Type classes as objects and implicits    341--360
         Benjamin S. Lerner and   
              Herman Venter and   
                   Dan Grossman   Supporting dynamic, third-party code
                                  customizations in JavaScript using
                                  aspects  . . . . . . . . . . . . . . . . 361--376
          Charlotte Herzeel and   
                Pascal Costanza   Dynamic parallelization of recursive
                                  code: part 1: managing control flow
                                  interactions with the continuator  . . . 377--396
                Isil Dillig and   
              Thomas Dillig and   
                     Alex Aiken   Symbolic heap abstraction with
                                  demand-driven axiomatization of memory
                                  invariants . . . . . . . . . . . . . . . 397--410
                Percy Liang and   
                 Omer Tripp and   
                 Mayur Naik and   
                    Mooly Sagiv   A dynamic evaluation of the precision of
                                  static heap abstractions . . . . . . . . 411--427
   Mario Méndez-Lojo and   
           Augustine Mathew and   
                 Keshav Pingali   Parallel inclusion-based points-to
                                  analysis . . . . . . . . . . . . . . . . 428--443
         Lennart C. L. Kats and   
                   Eelco Visser   The Spoofax language workbench: rules
                                  for declarative specification of
                                  languages and IDEs . . . . . . . . . . . 444--463
             Marco Servetto and   
                    Elena Zucca   MetaFJig: a meta-circular composition
                                  language for Java-like classes . . . . . 464--483
                 Karl Klose and   
                Klaus Ostermann   Modular logic metaprogramming  . . . . . 484--503
         Stephan van Staden and   
             Cristiano Calcagno   Reasoning about multiple related
                                  abstractions with MultiStar  . . . . . . 504--519
                     Xin Qi and   
                Andrew C. Myers   Homogeneous family sharing . . . . . . . 520--538
              Shigeru Chiba and   
           Atsushi Igarashi and   
                 Salikh Zakirov   Mostly modular compilation of
                                  crosscutting concerns by contextual
                                  predicate dispatch . . . . . . . . . . . 539--554
                Casey Klein and   
              Matthew Flatt and   
           Robert Bruce Findler   Random testing for higher-order,
                                  stateful programs  . . . . . . . . . . . 555--566
                Jay A. McCarthy   The two-state solution: native and
                                  serializable continuations accord  . . . 567--582
               James Swaine and   
                  Kevin Tew and   
                Peter Dinda and   
       Robert Bruce Findler and   
                  Matthew Flatt   Back to the futures: incremental
                                  parallelization of existing sequential
                                  runtime systems  . . . . . . . . . . . . 583--597
                 Yoav Zibin and   
               Alex Potanin and   
                   Paley Li and   
                Mahmood Ali and   
               Michael D. Ernst   Ownership and immutability in generic
                                  Java . . . . . . . . . . . . . . . . . . 598--617
           Nicholas Cameron and   
                James Noble and   
                Tobias Wrigstad   Tribal ownership . . . . . . . . . . . . 618--633
       Nicholas D. Matsakis and   
                Thomas R. Gross   A time-aware type system for data-race
                                  protection and guaranteed initialization 634--651
           Gautam Upadhyaya and   
          Samuel P. Midkiff and   
                   Vijay S. Pai   Automatic atomic region identification
                                  in shared memory SPMD programs . . . . . 652--670
            Aditya Kulkarni and   
               Yu David Liu and   
                 Scott F. Smith   Task types for pervasive atomicity . . . 671--690
       Sebastian Burckhardt and   
        Alexandro Baldassin and   
                    Daan Leijen   Concurrent programming with revisions
                                  and isolation types  . . . . . . . . . . 691--707
           Michael Bebenita and   
           Florian Brandner and   
           Manuel Fahndrich and   
          Francesco Logozzo and   
            Wolfram Schulte and   
           Nikolai Tillmann and   
                  Herman Venter   SPUR: a trace-based JIT compiler for CIL 708--725
               Puneet Kapur and   
              Brad Cossette and   
               Robert J. Walker   Refactoring references for library
                                  migration  . . . . . . . . . . . . . . . 726--738
                Erik Altman and   
             Matthew Arnold and   
               Stephen Fink and   
                  Nick Mitchell   Performance analysis of idle programs    739--753
               Samuel Davis and   
                Gregor Kiczales   Registration-based language abstractions 754--773
              Toon Verwaest and   
              Camillo Bruni and   
              David Gurtner and   
            Adrian Lienhard and   
                Oscar Niestrasz   Pinocchio: bringing reflection to life
                                  with first-class interpreters  . . . . . 774--789
              Hridesh Rajan and   
            Steven M. Kautz and   
                Wayne Rowcliffe   Concurrency by modularity: design
                                  patterns, a case in point  . . . . . . . 790--805
              Martin Rinard and   
             Henry Hoffmann and   
            Sasa Misailovic and   
             Stelios Sidiroglou   Patterns and statistical analysis for
                                  understanding reduced resource computing 806--821
            Andrew Sorensen and   
                  Henry Gardner   Programming with time: cyber-physical
                                  programming with impromptu . . . . . . . 822--834
               Hassan Chafi and   
                Zach DeVito and   
              Adriaan Moors and   
                Tiark Rompf and   
          Arvind K. Sujeeth and   
               Pat Hanrahan and   
             Martin Odersky and   
                 Kunle Olukotun   Language virtualization for
                                  heterogeneous parallel computing . . . . 835--847
              Harold Ossher and   
             Rachel Bellamy and   
               Ian Simmonds and   
                 David Amid and   
         Ateret Anaby-Tavor and   
            Matthew Callery and   
            Michael Desmond and   
        Jacqueline de Vries and   
                Amit Fisher and   
                Sophia Krasikov   Flexible modeling tools for
                                  pre-requirements analysis: conceptual
                                  architecture and research challenges . . 848--864
             Tudor Dumitras and   
           Priya Narasimhan and   
                   Eli Tilevich   To upgrade or not to upgrade: impact of
                                  online upgrades across multiple
                                  administrative domains . . . . . . . . . 865--876
          Kenneth C. Arnold and   
                Henry Lieberman   Managing ambiguity in programming by
                                  finding unambiguous examples . . . . . . 877--884
         Richard P. Gabriel and   
              Kevin J. Sullivan   Better science through art . . . . . . . 885--900
             Jenny Quillien and   
                      Dave West   Rubber ducks, nightmares, and
                                  unsaturated predicates: proto-scientific
                                  schemata are good for agile  . . . . . . 901--917
         Lennart C. L. Kats and   
               Eelco Visser and   
                Guido Wachsmuth   Pure and declarative syntax definition:
                                  paradise lost and regained . . . . . . . 918--932
               Stefan Hanenberg   Faith, hope, and love: an essay on
                                  software science's neglect of human
                                  factors  . . . . . . . . . . . . . . . . 933--946
              Paul Adamczyk and   
                  Munawar Hafiz   The Tower of Babel did not fail  . . . . 947--957

ACM SIG{}PLAN Notices
Volume 45, Number 11, November, 2010

            Tillmann Rendel and   
                Klaus Ostermann   Invertible syntax descriptions: unifying
                                  parsing and pretty printing  . . . . . . 1--12
                   Milan Straka   The performance of the Haskell
                                  containers package . . . . . . . . . . . 13--24
               Maciej Pirog and   
              Dariusz Biernacki   A systematic derivation of the STG
                                  machine verified in Coq  . . . . . . . . 25--36
José Pedro Magalhães and   
              Atze Dijkstra and   
              Johan Jeuring and   
                Andres Löh   A generic deriving mechanism for Haskell 37--48
         John van Groningen and   
           Thomas van Noort and   
               Peter Achten and   
             Pieter Koopman and   
               Rinus Plasmeijer   Exchanging sources between Clean and
                                  Haskell: a double-edged front end for
                                  the Clean compiler . . . . . . . . . . . 49--60
              J. Garrett Morris   Experience report: using hackage to
                                  inform language design . . . . . . . . . 61--66
          Geoffrey Mainland and   
                 Greg Morrisett   Nikola: embedding compiled GPU functions
                                  in Haskell . . . . . . . . . . . . . . . 67--78
            John Launchbury and   
                 Trevor Elliott   Concurrent orchestration in Haskell  . . 79--90
               Simon Marlow and   
              Patrick Maier and   
        Hans-Wolfgang Loidl and   
           Mustafa K. Aswad and   
                   Phil Trinder   Seq no more: better strategies for
                                  parallel Haskell . . . . . . . . . . . . 91--102
           Bryan O'Sullivan and   
                   Johan Tibell   Scalable I/O event handling for GHC  . . 103--108
             David A. Terei and   
       Manuel M. T. Chakravarty   An \tt llvm backend for GHC  . . . . . . 109--120
              Norman Ramsey and   
           João Dias and   
             Simon Peyton Jones   Hoopl: a modular, reusable library for
                                  dataflow analysis and transformation . . 121--134
     Maximilian Bolingbroke and   
             Simon Peyton Jones   Supercompilation by evaluation . . . . . 135--146
                Brent A. Yorgey   Species and functors and types, oh my!   147--158

ACM SIG{}PLAN Notices
Volume 45, Number 12, December, 2010

              Stefan Brunthaler   Efficient interpretation using
                                  quickening . . . . . . . . . . . . . . . 1--14
          Salikh S. Zakirov and   
              Shigeru Chiba and   
               Etsuya Shibayama   Optimizing dynamic dispatch with
                                  fine-grained state tracking  . . . . . . 15--26
        Michael Gorbovitski and   
             Yanhong A. Liu and   
           Scott D. Stoller and   
               Tom Rothamel and   
                Tuncay K. Tekle   Alias analysis for optimization of
                                  dynamic languages  . . . . . . . . . . . 27--42
          Sviatoslav Pestov and   
           Daniel Ehrenberg and   
                      Joe Groff   Factor: a dynamic stack-based
                                  programming language . . . . . . . . . . 43--58
             Tom Van Cutsem and   
                 Mark S. Miller   Proxies: design principles for robust
                                  object-oriented intercession APIs  . . . 59--72
                 Laurence Tratt   Experiences with an Icon3-like
                                  expression evaluation system . . . . . . 73--80
          Eyvind W. Axelsen and   
             Stein Krogdahl and   
  Birger Mòller-Pedersen   Controlling dynamic module composition
                                  through an extensible meta-level API . . 81--96
      T. Stephen Strickland and   
             Matthias Felleisen   Contracts for first-class classes  . . . 97--112


ACM SIG{}PLAN Notices
Volume 46, Number 1, January, 2011

                   Xavier Leroy   Verified squared: does critical software
                                  deserve verified tools?  . . . . . . . . 1--2
       Ondrej Lhoták and   
       Kwok-Chiang Andrew Chung   Points-to analysis with efficient strong
                                  updates  . . . . . . . . . . . . . . . . 3--16
         Yannis Smaragdakis and   
          Martin Bravenboer and   
           Ondrej Lhoták   Pick your contexts well: understanding
                                  object-sensitivity . . . . . . . . . . . 17--30
                Percy Liang and   
                 Omer Tripp and   
                     Mayur Naik   Learning minimal abstractions  . . . . . 31--42
   Jaroslav \vSevçik and   
           Viktor Vafeiadis and   
   Francesco Zappa Nardelli and   
         Suresh Jagannathan and   
                   Peter Sewell   Relaxed-memory concurrency and verified
                                  compilation  . . . . . . . . . . . . . . 43--54
                 Mark Batty and   
                Scott Owens and   
              Susmit Sarkar and   
               Peter Sewell and   
                    Tjark Weber   Mathematizing C++ concurrency  . . . . . 55--66
        Tahina Ramananandro and   
           Gabriel Dos Reis and   
                   Xavier Leroy   Formal verification of object layout for
                                  C++ multiple inheritance . . . . . . . . 67--80
                Wontae Choi and   
              Baris Aktemur and   
               Kwangkeun Yi and   
                 Makoto Tatsuta   Static analysis of multi-staged programs
                                  via unstaging translation  . . . . . . . 81--92
          Martin D. Schwarz and   
               Helmut Seidl and   
              Vesal Vojdani and   
              Peter Lammich and   
         Markus Müller-Olm   Static analysis of interrupt-driven
                                  programs synchronized via the priority
                                  ceiling protocol . . . . . . . . . . . . 93--104
             Patrick Cousot and   
              Radhia Cousot and   
              Francesco Logozzo   A parametric segmentation functor for
                                  fully automatic and scalable array
                                  content analysis . . . . . . . . . . . . 105--118
              Lars Birkedal and   
              Bernhard Reus and   
          Jan Schwinghammer and   
   Kristian Stòvring and   
            Jacob Thamsborg and   
                  Hongseok Yang   Step-indexed Kripke models over
                                  recursive worlds . . . . . . . . . . . . 119--132
              Chung-Kil Hur and   
                   Derek Dreyer   A Kripke logical relation between ML and
                                  assembly . . . . . . . . . . . . . . . . 133--146
        François Pottier   A typed store-passing translation for
                                  general references . . . . . . . . . . . 147--158
        Dimitrios Prountzos and   
             Roman Manevich and   
             Keshav Pingali and   
            Kathryn S. McKinley   A shape analysis for optimizing parallel
                                  graph programs . . . . . . . . . . . . . 159--172
               Xavier Rival and   
             Bor-Yuh Evan Chang   Calling context abstraction with shapes  173--186
                Isil Dillig and   
              Thomas Dillig and   
                     Alex Aiken   Precise reasoning for programs using
                                  containers . . . . . . . . . . . . . . . 187--200
                 Amal Ahmed and   
       Robert Bruce Findler and   
             Jeremy G. Siek and   
                  Philip Wadler   Blame for all  . . . . . . . . . . . . . 201--214
          Christos Dimoulas and   
       Robert Bruce Findler and   
            Cormac Flanagan and   
             Matthias Felleisen   Correct blame for contracts: no more
                                  scapegoating . . . . . . . . . . . . . . 215--226
          Stephanie Weirich and   
       Dimitrios Vytiniotis and   
         Simon Peyton Jones and   
                Steve Zdancewic   Generative type abstraction and
                                  type-level computation . . . . . . . . . 227--240
           Matthew B. MacLaurin   The design of Kodu: a tiny visual
                                  programming language for children on the
                                  Xbox 360 . . . . . . . . . . . . . . . . 241--246
         Aaron Joseph Turon and   
                  Mitchell Wand   A separation logic for refining
                                  concurrent objects . . . . . . . . . . . 247--258
                 Mike Dodds and   
         Suresh Jagannathan and   
           Matthew J. Parkinson   Modular reasoning for deterministic
                                  parallelism  . . . . . . . . . . . . . . 259--270
                Bart Jacobs and   
                 Frank Piessens   Expressive modular fine-grained
                                  concurrency specification  . . . . . . . 271--282
              P. Madhusudan and   
                Gennaro Parlato   The tree width of auxiliary storage  . . 283--294
               Nikos Tzevelekos   Fresh-register automata  . . . . . . . . 295--306
     Jérôme Leroux   Vector addition system reachability
                                  problem: a short self-contained proof    307--316
                  Sumit Gulwani   Automating string processing in
                                  spreadsheets using input-output examples 317--330
             Ashutosh Gupta and   
            Corneliu Popeea and   
             Andrey Rybalchenko   Predicate abstraction and refinement for
                                  verifying multi-threaded programs  . . . 331--344
               Dan R. Ghica and   
                     Alex Smith   Geometry of synthesis III: resource
                                  management through type inference  . . . 345--356
               Jan Hoffmann and   
               Klaus Aehlig and   
                 Martin Hofmann   Multivariate amortized resource analysis 357--370
             Martin Hofmann and   
            Benjamin Pierce and   
                  Daniel Wagner   Symmetric lenses . . . . . . . . . . . . 371--384
             Fritz Henglein and   
                  Lasse Nielsen   Regular expression containment:
                                  coinductive axiomatization and
                                  computational interpretation . . . . . . 385--398
                 Byron Cook and   
                  Eric Koskinen   Making prophecies with decision
                                  predicates . . . . . . . . . . . . . . . 399--410
               Michael Emmi and   
                Shaz Qadeer and   
           Zvonimir Rakamari\'c   Delay-bounded scheduling . . . . . . . . 411--422
              Nishant Sinha and   
                      Chao Wang   On interference abstractions . . . . . . 423--434
Pierre-Malo Deniélou and   
                 Nobuko Yoshida   Dynamic multirole session types  . . . . 435--446
               Jesse A. Tov and   
               Riccardo Pucella   Practical affine types . . . . . . . . . 447--458
       Jong-hoon (David) An and   
             Avik Chaudhuri and   
          Jeffrey S. Foster and   
                  Michael Hicks   Dynamic inference of static types for
                                  ruby . . . . . . . . . . . . . . . . . . 459--472
           Andrew D. Gordon and   
              Robert Harper and   
              John Harrison and   
               Alan Jeffrey and   
                   Peter Sewell   Robin Milner 1934--2010: verification,
                                  languages, and concurrency . . . . . . . 473--474
             Anna Bendersky and   
                   Erez Petrank   Space overhead bounds for dynamic memory
                                  management with partial compaction . . . 475--486
               Hagit Attiya and   
           Rachid Guerraoui and   
              Danny Hendler and   
             Petr Kuznetsov and   
           Maged M. Michael and   
                  Martin Vechev   Laws of order: expensive synchronization
                                  in concurrent algorithms cannot be
                                  eliminated . . . . . . . . . . . . . . . 487--498
             Javier Esparza and   
                   Pierre Ganty   Complexity of pattern-based verification
                                  for multithreaded programs . . . . . . . 499--510
               Tarun Prabhu and   
         Shreyas Ramalingam and   
              Matthew Might and   
                      Mary Hall   EigenCFA: accelerating flow analysis
                                  with GPUs  . . . . . . . . . . . . . . . 511--522
                  Yuan Feng and   
                Runyao Duan and   
                 Mingsheng Ying   Bisimulation for quantum processes . . . 523--534
    Robert L. Bocchino, Jr. and   
            Stephen Heumann and   
             Nima Honarmand and   
             Sarita V. Adve and   
             Vikram S. Adve and   
                  Adam Welc and   
              Tatiana Shpeisman   Safe nondeterminism in a
                                  deterministic-by-default parallel
                                  language . . . . . . . . . . . . . . . . 535--548
    Louis-Noël Pouchet and   
            Uday Bondhugula and   
      Cédric Bastoul and   
               Albert Cohen and   
               J. Ramanujam and   
              P. Sadayappan and   
              Nicolas Vasilache   Loop transformations: convexity, pruning
                                  and optimization . . . . . . . . . . . . 549--562
                 Shu-yu Guo and   
                  Jens Palsberg   The essence of compiling with traces . . 563--574
              Norman Ramsey and   
               João Dias   Resourceable, retargetable, modular
                                  instruction selection using a
                                  machine-independent, type-based tiling
                                  of low-level intermediate code . . . . . 575--586
             C.-H. Luke Ong and   
            Steven James Ramsay   Verifying higher-order functional
                                  programs with pattern-matching algebraic
                                  data types . . . . . . . . . . . . . . . 587--598
                Rajeev Alur and   
             Pavol Cerný   Streaming transducers for algorithmic
                                  verification of single-pass
                                  list-processing programs . . . . . . . . 599--610
              P. Madhusudan and   
            Gennaro Parlato and   
                   Xiaokang Qiu   Decidable logics combining heap
                                  structures and data  . . . . . . . . . . 611--622
           Pramod G. Joisha and   
        Robert S. Schreiber and   
        Prithviraj Banerjee and   
              Hans J. Boehm and   
          Dhruva R. Chakrabarti   A technique for the effective and
                                  automatic reuse of classical compiler
                                  optimizations on multithreaded code  . . 623--636

ACM SIG{}PLAN Notices
Volume 46, Number 2, February, 2011

               Ralf Lämmel   The hitchhiker's guide to software
                                  languages  . . . . . . . . . . . . . . . 1--2
                   Martin Erwig   A language for software variation
                                  research . . . . . . . . . . . . . . . . 3--12
                Dave Clarke and   
       Michiel Helvensteijn and   
                   Ina Schaefer   Abstract delta modeling  . . . . . . . . 13--22
                 Uwe Ryssel and   
            Joern Ploennigs and   
                Klaus Kabitzsch   Automatic variation-point identification
                                  in function-block-based models . . . . . 23--32
              Julio Sincero and   
           Reinhard Tartler and   
             Daniel Lohmann and   
Wolfgang Schröder-Preikschat   Efficient extraction and analysis of
                                  preprocessor-based variability . . . . . 33--42
            Arie Middelkoop and   
              Atze Dijkstra and   
           S. Doaitse Swierstra   Iterative type inference with attribute
                                  grammars . . . . . . . . . . . . . . . . 43--52
        Matthias P. Krieger and   
            Alexander Knapp and   
                 Burkhart Wolff   Automatic and efficient simulation of
                                  operation contracts  . . . . . . . . . . 53--62
                Yuheng Long and   
             Sean L. Mooney and   
               Tyler Sondag and   
                  Hridesh Rajan   Implicit invocation meets safe, implicit
                                  concurrency  . . . . . . . . . . . . . . 63--72
              Juan F. Navas and   
        Jean-Philippe Babau and   
                  Jacques Pulou   A component-based run-time evolution
                                  infrastructure for resource-constrained
                                  embedded systems . . . . . . . . . . . . 73--82
            Christian Hofer and   
                Klaus Ostermann   Modular domain-specific language
                                  components in Scala  . . . . . . . . . . 83--92
         Reinhard Wolfinger and   
     Markus Löberbauer and   
                Markus Jahn and   
 Hanspeter Mössenböck   Adding genericity to a plug-in framework 93--102
             Sandro Schulze and   
                  Sven Apel and   
         Christian Kästner   Code clones in feature-oriented software
                                  product lines  . . . . . . . . . . . . . 103--112
         Éric Tanter and   
             Philippe Moret and   
              Walter Binder and   
                Danilo Ansaloni   Composition of dynamic analysis aspects  113--122
     Thomas Würthinger and   
              Walter Binder and   
            Danilo Ansaloni and   
             Philippe Moret and   
 Hanspeter Mössenböck   Applications of enhanced dynamic code
                                  evolution for Java in GUI development
                                  and dynamic aspect-oriented programming  123--126
                Tiark Rompf and   
                 Martin Odersky   Lightweight modular staging: a pragmatic
                                  approach to runtime code generation and
                                  compiled DSLs  . . . . . . . . . . . . . 127--136
     Zoltán Porkolab and   
          Ábel Sinkovics   Domain-specific language integration
                                  with compile-time parser generator
                                  library  . . . . . . . . . . . . . . . . 137--146
             Kevin Atkinson and   
              Matthew Flatt and   
                 Gary Lindstrom   ABI compatibility through a customizable
                                  language . . . . . . . . . . . . . . . . 147--156
            Mirko Bordignon and   
         Ulrik Pagh Schultz and   
                    Kasper Stoy   Model-based kinematics generation for
                                  modular mechatronic toolkits . . . . . . 157--166
                 Weiyu Miao and   
                 Jeremy G. Siek   Incremental type-checking for
                                  type-reflective metaprograms . . . . . . 167--176
              Neville Grech and   
              Julian Rathke and   
                  Bernd Fischer   JEqualityGen: generating equality and
                                  hashing methods  . . . . . . . . . . . . 177--186

ACM SIG{}PLAN Notices
Volume 46, Number 3, March, 2011

                 James R. Larus   The cloud will change everything . . . . 1--2
                  Ding Yuan and   
                 Jing Zheng and   
                Soyeon Park and   
              Yuanyuan Zhou and   
                  Stefan Savage   Improving software diagnosability via
                                  log enhancement  . . . . . . . . . . . . 3--14
      Kaushik Veeraraghavan and   
               Dongyoon Lee and   
            Benjamin Wester and   
             Jessica Ouyang and   
              Peter M. Chen and   
                Jason Flinn and   
            Satish Narayanasamy   DoublePlay: parallelizing sequential
                                  logging and replay . . . . . . . . . . . 15--26
               Jared Casper and   
              Tayo Oguntebi and   
              Sungpack Hong and   
          Nathan G. Bronson and   
         Christos Kozyrakis and   
                 Kunle Olukotun   Hardware acceleration of transactional
                                  memory on commodity systems  . . . . . . 27--38
           Luke Dalessandro and   
    François Carouge and   
                 Sean White and   
                  Yossi Lev and   
                  Mark Moir and   
           Michael L. Scott and   
               Michael F. Spear   Hybrid NOrec: a case study in the
                                  effectiveness of best effort hardware
                                  transactional memory . . . . . . . . . . 39--52
           Abhayendra Singh and   
              Daniel Marino and   
        Satish Narayanasamy and   
             Todd Millstein and   
                Madan Musuvathi   Efficient processor support for DRFx, a
                                  memory model with exceptions . . . . . . 53--66
            Joseph Devietti and   
               Jacob Nelson and   
                 Tom Bergan and   
                  Luis Ceze and   
                   Dan Grossman   RCDC: a relaxed consistency
                                  deterministic computer . . . . . . . . . 67--78
               Jacob Burnim and   
              George Necula and   
                    Koushik Sen   Specifying and checking semantic
                                  atomicity for multithreaded programs . . 79--90
                Haris Volos and   
           Andres Jaan Tack and   
               Michael M. Swift   Mnemosyne: lightweight persistent memory 91--104
                Joel Coburn and   
        Adrian M. Caulfield and   
                 Ameen Akel and   
             Laura M. Grupp and   
            Rajesh K. Gupta and   
               Ranjit Jhala and   
                 Steven Swanson   NV-Heaps: making persistent objects fast
                                  and safe with next-generation,
                                  non-volatile memories  . . . . . . . . . 105--118
      Adrian Schüpbach and   
             Andrew Baumann and   
             Timothy Roscoe and   
                    Simon Peter   A declarative language approach to
                                  device configuration . . . . . . . . . . 119--132
              Leonid Ryzhyk and   
                  John Keys and   
          Balachandra Mirla and   
             Arun Raghunath and   
                   Mona Vij and   
                  Gernot Heiser   Improved device driver reliability
                                  through hardware verification reuse  . . 133--144
                Atif Hashmi and   
                Andrew Nere and   
         James Jamal Thomas and   
                  Mikko Lipasti   A case for neuromorphic ISAs . . . . . . 145--158
          Benjamin Ransford and   
               Jacob Sorber and   
                       Kevin Fu   Mementos: system support for
                                  long-running computation on RFID-scale
                                  devices  . . . . . . . . . . . . . . . . 159--170
      Emmanouil Koukoumidis and   
    Dimitrios Lymberopoulos and   
              Karin Strauss and   
                    Jie Liu and   
                    Doug Burger   Pocket cloudlets . . . . . . . . . . . . 171--184
               Navin Sharma and   
                Sean Barker and   
                David Irwin and   
                Prashant Shenoy   Blink: managing server clusters on
                                  intermittent power . . . . . . . . . . . 185--198
             Henry Hoffmann and   
         Stelios Sidiroglou and   
             Michael Carbin and   
            Sasa Misailovic and   
              Anant Agarwal and   
                  Martin Rinard   Dynamic knobs for responsive power-aware
                                  computing  . . . . . . . . . . . . . . . 199--212
                   Song Liu and   
       Karthik Pattabiraman and   
          Thomas Moscibroda and   
               Benjamin G. Zorn   Flikker: saving DRAM refresh-power
                                  through critical data partitioning . . . 213--224
              Qingyuan Deng and   
              David Meisner and   
                 Luiz Ramos and   
          Thomas F. Wenisch and   
              Ricardo Bianchini   MemScale: active low-power modes for
                                  main memory  . . . . . . . . . . . . . . 225--238
                     Qi Gao and   
               Wenbin Zhang and   
                Zhezhe Chen and   
                  Mai Zheng and   
                       Feng Qin   2ndStrike: toward manifesting hidden
                                  concurrency typestate bugs . . . . . . . 239--250
                  Wei Zhang and   
                Junghee Lim and   
          Ramya Olichandran and   
             Joel Scherpelz and   
               Guoliang Jin and   
                    Shan Lu and   
                    Thomas Reps   ConSeq: detecting concurrency bugs
                                  through sequential errors  . . . . . . . 251--264
           Vitaly Chipounov and   
        Volodymyr Kuznetsov and   
                  George Candea   S2E: a platform for in-vivo multi-path
                                  analysis of software systems . . . . . . 265--278
            Owen S. Hofmann and   
               Alan M. Dunn and   
                Sangman Kim and   
               Indrajit Roy and   
                 Emmett Witchel   Ensuring operating system kernel
                                  integrity with OSck  . . . . . . . . . . 279--290
           Donald E. Porter and   
        Silas Boyd-Wickizer and   
                 Jon Howell and   
             Reuben Olinsky and   
                  Galen C. Hunt   Rethinking the library OS from the top
                                  down . . . . . . . . . . . . . . . . . . 291--304
              Nicolas Palix and   
           Gaël Thomas and   
                 Suman Saha and   
        Christophe Calv\`es and   
               Julia Lawall and   
                  Gilles Muller   Faults in Linux: ten years later . . . . 305--318
          Hadi Esmaeilzadeh and   
                   Ting Cao and   
                    Yang Xi and   
       Stephen M. Blackburn and   
            Kathryn S. McKinley   Looking back on the language and
                                  hardware revolutions: measured power,
                                  performance, and scaling . . . . . . . . 319--332
              Donald Nguyen and   
                 Keshav Pingali   Synthesizing concurrent schedulers for
                                  irregular algorithms . . . . . . . . . . 333--344
                Giang Hoang and   
        Robby Bruce Findler and   
                    Russ Joseph   Exploring circuit timing-aware language
                                  and compilation  . . . . . . . . . . . . 345--356
           Sardar M. Farhad and   
                  Yousun Ko and   
          Bernd Burgstaller and   
                Bernhard Scholz   Orchestration by approximation: mapping
                                  stream programs onto multicore
                                  architectures  . . . . . . . . . . . . . 357--368
              Eddy Z. Zhang and   
              Yunlian Jiang and   
                   Ziyu Guo and   
                   Kai Tian and   
                    Xipeng Shen   On-the-fly elimination of dynamic
                                  irregularities for GPU computing . . . . 369--380
            Amir H. Hormati and   
             Mehrzad Samadi and   
                   Mark Woh and   
               Trevor Mudge and   
                   Scott Mahlke   Sponge: portable stream programming on
                                  graphics engines . . . . . . . . . . . . 381--392
             Md Kamruzzaman and   
             Steven Swanson and   
                Dean M. Tullsen   Inter-core prefetching for multicore
                                  processors using migrating helper
                                  threads  . . . . . . . . . . . . . . . . 393--404
      Hiroshige Hayashizaki and   
                    Peng Wu and   
              Hiroshi Inoue and   
        Mauricio J. Serrano and   
                Toshio Nakatani   Improving the performance of trace-based
                                  systems by false loop filtering  . . . . 405--418

ACM SIG{}PLAN Notices
Volume 46, Number 4, April, 2011

               Vasanth Bala and   
         Evelyn Duesterwald and   
               Sanjeev Banerjia   Dynamo: a transparent dynamic
                                  optimization system  . . . . . . . . . . 41--52
              Koen Claessen and   
                    John Hughes   QuickCheck: a lightweight tool for
                                  random testing of Haskell programs . . . 53--64
             Matthew Arnold and   
               Stephen Fink and   
                David Grove and   
               Michael Hind and   
               Peter F. Sweeney   Adaptive optimization in the Jalapeno
                                  JVM  . . . . . . . . . . . . . . . . . . 65--83
              Samin Ishtiaq and   
               Peter W. O'Hearn   BI as an assertion language for mutable
                                  data structures  . . . . . . . . . . . . 84--96

ACM SIG{}PLAN Notices
Volume 46, Number 5, May, 2011

               Bruno Virlet and   
                  Xing Zhou and   
      Jean Pierre Giacalone and   
                   Bob Kuhn and   
          Maria J. Garzaran and   
                    David Padua   Scheduling of stream-based real-time
                                  applications for heterogeneous systems   1--10
      Sudipta Chattopadhyay and   
             Abhik Roychoudhury   Static bus schedule aware scratchpad
                                  allocation in multiprocessors  . . . . . 11--20
              Elvira Albert and   
                Puri Arenas and   
               Samir Genaim and   
              Damiano Zanardini   Task-level analysis for a language with
                                  async/finish parallelism . . . . . . . . 21--30
               Li-Pin Chang and   
                  Li-Chun Huang   A low-cost wear-leveling algorithm for
                                  block-mapping solid-state disks  . . . . 31--40
                 Suman Saha and   
               Julia Lawall and   
                  Gilles Muller   An approach to improving the structure
                                  of error-handling code in the Linux
                                  kernel . . . . . . . . . . . . . . . . . 41--50
                   Ian Gray and   
                Neil C. Audsley   Targeting complex embedded architectures
                                  by combining the multicore
                                  communications API (\tt mcapi) with
                                  compile-time virtualisation  . . . . . . 51--60
          Albert Benveniste and   
             Timothy Bourke and   
         Beno\^\it Caillaud and   
                    Marc Pouzet   Divide and recycle: types and
                                  compilation for a hybrid synchronous
                                  language . . . . . . . . . . . . . . . . 61--70
          Abdoulaye Gamatie and   
                  Laure Gonnord   Static analysis of synchronous programs
                                  in signal for efficient design of
                                  multi-clocked embedded systems . . . . . 71--80
           Nicolas Berthier and   
        Florence Maraninchi and   
                Laurent Mounier   Synchronous programming of device
                                  drivers for global resource control in
                                  embedded operating systems . . . . . . . 81--90
                   Man Wang and   
                 Zhiyuan Li and   
                    Feng Li and   
              Xiaobing Feng and   
             Saurabh Bagchi and   
                 Yung-Hsiang Lu   Dependence-based multi-level tracing and
                                  replay for wireless sensor networks
                                  debugging  . . . . . . . . . . . . . . . 91--100
          Johnson J. Thomas and   
     Sebastian Fischmeister and   
                   Deepak Kumar   Lowering overhead in sampling-based
                                  execution monitoring and tracing . . . . 101--110
          Samaneh Navabpour and   
        Borzoo Bonakdarpour and   
         Sebastian Fischmeister   Software debugging and testing using the
                                  abstract diagnosis theory  . . . . . . . 111--120
             Christoph Cullmann   Cache persistence analysis: a novel
                                  approachtheory and practice  . . . . . . 121--130
               Abhik Sarkar and   
              Frank Mueller and   
              Harini Ramaprasad   Predictable task migration for locked
                                  caches in multi-core systems . . . . . . 131--140
              Ernst Althaus and   
         Sebastian Altmeyer and   
                 Rouven Naujoks   Precise and efficient parametric path
                                  analysis . . . . . . . . . . . . . . . . 141--150
               Choonki Jang and   
                Jungwon Kim and   
                 Jaejin Lee and   
               Hee-Seok Kim and   
              Dong-Hoon Yoo and   
                 Sukjin Kim and   
              Hong-Seok Kim and   
                    Soojung Ryu   An instruction-scheduling-aware data
                                  partitioning technique for
                                  coarse-grained reconfigurable
                                  architectures  . . . . . . . . . . . . . 151--160
                Indu Bhagat and   
               Enric Gibert and   
Jesús Sánchez and   
        Antonio González   Global productiveness propagation: a
                                  code optimization technique to
                                  speculatively prune useless narrow
                                  computations . . . . . . . . . . . . . . 161--170

ACM SIG{}PLAN Notices
Volume 46, Number 6, June, 2011

             Prakash Prabhu and   
           Soumyadeep Ghosh and   
                  Yun Zhang and   
            Nick P. Johnson and   
                David I. August   Commutative set: a language extension
                                  for implicit parallel programming  . . . 1--11
             Keshav Pingali and   
              Donald Nguyen and   
            Milind Kulkarni and   
           Martin Burtscher and   
           M. Amber Hassaan and   
              Rashid Kaleem and   
            Tsung-Hsien Lee and   
            Andrew Lenharth and   
             Roman Manevich and   
   Mario Méndez-Lojo and   
        Dimitrios Prountzos and   
                        Xin Sui   The tao of parallelism in algorithms . . 12--25
                 Arun Raman and   
                 Hanjun Kim and   
                 Taewook Oh and   
                 Jae W. Lee and   
                David I. August   Parallelism orchestration using DoPE:
                                  the degree of parallelism executive  . . 26--37
              Peter Hawkins and   
                 Alex Aiken and   
            Kathleen Fisher and   
              Martin Rinard and   
                    Mooly Sagiv   Data representation synthesis  . . . . . 38--49
              Sumit Gulwani and   
    Vijay Anand Korthikanti and   
                  Ashish Tiwari   Synthesizing geometry constructions  . . 50--61
              Sumit Gulwani and   
                 Susmit Jha and   
              Ashish Tiwari and   
         Ramarathnam Venkatesan   Synthesis of loop-free programs  . . . . 62--73
             Igor Böhm and   
Tobias J. K. Edler von Koch and   
            Stephen C. Kyle and   
          Björn Franke and   
                   Nigel Topham   Generalized just-in-time trace
                                  compilation using a parallel task farm
                                  in a dynamic binary translator . . . . . 74--85
              Changhee Jung and   
                Silvius Rus and   
           Brian P. Railing and   
               Nathan Clark and   
                  Santosh Pande   Brainy: effective selection of data
                                  structures . . . . . . . . . . . . . . . 86--97
               Hucheng Zhou and   
              Wenguang Chen and   
                      Fred Chow   An SSA-based algorithm for optimal
                                  speculative code motion under an
                                  execution profile  . . . . . . . . . . . 98--108
                     Xun Li and   
               Mohit Tiwari and   
             Jason K. Oberg and   
            Vineeth Kashyap and   
          Frederic T. Chong and   
           Timothy Sherwood and   
                  Ben Hardekopf   Caisson: a hardware description language
                                  for secure information flow  . . . . . . 109--120
        Derek Gordon Murray and   
              Michael Isard and   
                        Yuan Yu   Steno: automatic optimization of
                                  declarative queries  . . . . . . . . . . 121--131
        Sam Tobin-Hochstadt and   
           Vincent St-Amour and   
             Ryan Culpepper and   
              Matthew Flatt and   
             Matthias Felleisen   Languages as libraries . . . . . . . . . 132--141
           Thomas B. Jablin and   
             Prakash Prabhu and   
            James A. Jablin and   
            Nick P. Johnson and   
           Stephen R. Beard and   
                David I. August   Automatic CPU--GPU communication
                                  management and optimization  . . . . . . 142--151
              Ashwin Prasad and   
           Jayvant Anantpur and   
                R. Govindarajan   Automatic compilation of MATLAB programs
                                  for synergistic execution on
                                  heterogeneous processors . . . . . . . . 152--163
             Adrian Sampson and   
               Werner Dietl and   
              Emily Fortuna and   
     Danushen Gnanapragasam and   
                  Luis Ceze and   
                   Dan Grossman   EnerJ: approximate data types for safe
                                  and general low-power computation  . . . 164--174
              Susmit Sarkar and   
               Peter Sewell and   
               Jade Alglave and   
               Luc Maranget and   
                 Derek Williams   Understanding POWER multiprocessors  . . 175--186
         Michael Kuperstein and   
              Martin Vechev and   
                     Eran Yahav   Partial-coherence abstractions for
                                  relaxed memory models  . . . . . . . . . 187--198
              Daniel Marino and   
           Abhayendra Singh and   
             Todd Millstein and   
         Madanlal Musuvathi and   
            Satish Narayanasamy   A case for an SC-preserving compiler . . 199--210
            Nels E. Beckman and   
                 Aditya V. Nori   Probabilistic, modular and scalable
                                  inference of typestate specifications    211--221
            Naoki Kobayashi and   
               Ryosuke Sato and   
                   Hiroshi Unno   Predicate abstraction and CEGAR for
                                  higher-order model checking  . . . . . . 222--233
                  Adam Chlipala   Mostly-automated verification of
                                  low-level programs in computational
                                  separation logic . . . . . . . . . . . . 234--245
              Kyu Hyung Lee and   
               Yunhui Zheng and   
                Nick Sumner and   
                  Xiangyu Zhang   Toward generating reducible replay logs  246--257
              Patrice Godefroid   Higher-order test generation . . . . . . 258--269
                 Guoqing Xu and   
            Michael D. Bond and   
                   Feng Qin and   
                 Atanas Rountev   LeakChaser: helping programmers narrow
                                  down causes of memory leaks  . . . . . . 270--282
                Xuejun Yang and   
                  Yang Chen and   
                  Eric Eide and   
                    John Regehr   Finding and understanding bugs in C
                                  compilers  . . . . . . . . . . . . . . . 283--294
      Jean-Baptiste Tristan and   
              Paul Govereau and   
                 Greg Morrisett   Evaluating value-graph translation
                                  validation for LLVM  . . . . . . . . . . 295--305
         Jaroslav Sevcík   Safe optimisations for shared-memory
                                  concurrent programs  . . . . . . . . . . 306--316
          William R. Harris and   
                  Sumit Gulwani   Spreadsheet table transformations from
                                  examples . . . . . . . . . . . . . . . . 317--328
                    Na Meng and   
                Miryung Kim and   
            Kathryn S. McKinley   Systematic editing: generating program
                                  transformations from an example  . . . . 329--342
           Varun Srivastava and   
            Michael D. Bond and   
        Kathryn S. McKinley and   
               Vitaly Shmatikov   A security policy oracle: detecting
                                  security holes using multiple API
                                  implementations  . . . . . . . . . . . . 343--354
                Jason Ansel and   
             Petr Marchenko and   
           Ulfar Erlingsson and   
              Elijah Taylor and   
                  Brad Chen and   
            Derek L. Schuff and   
                 David Sehr and   
            Cliff L. Biffle and   
                     Bennet Yee   Language-independent sandboxing of
                                  just-in-time compilation and
                                  self-modifying code  . . . . . . . . . . 355--366
                 Qiang Zeng and   
                 Dinghao Wu and   
                       Peng Liu   Cruiser: concurrent heap buffer overflow
                                  monitoring using lock-free data
                                  structures . . . . . . . . . . . . . . . 367--377
              Brandon Lucia and   
           Benjamin P. Wood and   
                      Luis Ceze   Isolating and understanding concurrency
                                  errors using reconstructed execution
                                  fragments  . . . . . . . . . . . . . . . 378--388
               Guoliang Jin and   
                Linhai Song and   
                  Wei Zhang and   
                    Shan Lu and   
                     Ben Liblit   Automated atomicity-violation fixing . . 389--400
               Jacob Burnim and   
               Tayfun Elmas and   
              George Necula and   
                    Koushik Sen   NDSeq: runtime checking for
                                  nondeterministic sequential
                                  specifications of parallel correctness   401--414
                Dongyun Jin and   
    Patrick O'Neil Meredith and   
            Dennis Griffith and   
                   Grigore Rosu   Garbage collection for monitoring
                                  parametric properties  . . . . . . . . . 415--424
               Terence Parr and   
                Kathleen Fisher   LL(*): the foundation of the ANTLR
                                  parser generator . . . . . . . . . . . . 425--436
                  Manu Jose and   
                 Rupak Majumdar   Cause clue clauses: error localization
                                  using maximum satisfiability . . . . . . 437--446
                Aditya Budi and   
                   David Lo and   
             Lingxiao Jiang and   
                          Lucia   $ k b $-anonymity: a model for
                                  anonymized behaviour-preserving test and
                                  debugging data . . . . . . . . . . . . . 447--457
           Saturnino Garcia and   
              Donghwan Jeon and   
       Christopher M. Louie and   
         Michael Bedford Taylor   Kremlin: rethinking and rebooting \tt
                                  gprof for the multicore age  . . . . . . 458--469
             Shigeyuki Sato and   
                 Hideya Iwasaki   Automatic parallelization via matrix
                                  multiplication . . . . . . . . . . . . . 470--479
             Abhishek Udupa and   
              Kaushik Rajan and   
                  William Thies   ALTER: exploiting breakable dependences
                                  for parallelization  . . . . . . . . . . 480--491
         Saurabh Srivastava and   
              Sumit Gulwani and   
           Swarat Chaudhuri and   
              Jeffrey S. Foster   Path-based inductive synthesis for
                                  program inversion  . . . . . . . . . . . 492--503
             Suzette Person and   
                Guowei Yang and   
                Neha Rungta and   
               Sarfraz Khurshid   Directed incremental symbolic execution  504--515
        Daniele Cono D'Elia and   
           Camil Demetrescu and   
                 Irene Finocchi   Mining hot calling contexts in small
                                  space  . . . . . . . . . . . . . . . . . 516--527
               Deokhwan Kim and   
               Martin C. Rinard   Verification of semantic commutativity
                                  conditions and inverse operations on
                                  linked data structures . . . . . . . . . 528--541
            Milind Kulkarni and   
              Donald Nguyen and   
        Dimitrios Prountzos and   
                    Xin Sui and   
                 Keshav Pingali   Exploiting the commutativity lattice . . 542--555
Juan Antonio Navarro Pérez and   
             Andrey Rybalchenko   Separation logic $+$ superposition
                                  calculus $=$ heap theorem prover . . . . 556--566
                Isil Dillig and   
              Thomas Dillig and   
                 Alex Aiken and   
                    Mooly Sagiv   Precise and compact modular procedure
                                  summaries for heap manipulating programs 567--577
            Ahmed Bouajjani and   
              Cezara Dragoi and   
            Constantin Enea and   
             Mihaela Sighireanu   On inter-procedural analysis of programs
                                  with lists and data  . . . . . . . . . . 578--589
                Percy Liang and   
                     Mayur Naik   Scaling abstraction refinement via
                                  pruning  . . . . . . . . . . . . . . . . 590--601
               John Altidor and   
            Shan Shan Huang and   
             Yannis Smaragdakis   Taming the wildcards: combining
                                  definition- and use-site variance  . . . 602--613
                  Ross Tate and   
                 Alan Leung and   
                   Sorin Lerner   Taming wildcards in Java's type system   614--627
              Lukasz Ziarek and   
        KC Sivaramakrishnan and   
             Suresh Jagannathan   Composable asynchronous events . . . . . 628--639
              Micah J. Best and   
            Shane Mottishaw and   
              Craig Mustard and   
                  Mark Roth and   
         Alexandra Fedorova and   
              Andrew Brownsword   Synchronization via scheduling:
                                  techniques for efficiently managing
                                  shared state . . . . . . . . . . . . . . 640--652

ACM SIG{}PLAN Notices
Volume 46, Number 7, July, 2011

                 David F. Bacon   Virtualization in the age of
                                  heterogeneous machines . . . . . . . . . 1--2
                 Jiaqing Du and   
             Nipun Sehrawat and   
               Willy Zwaenepoel   Performance profiling of virtual
                                  machines . . . . . . . . . . . . . . . . 3--14
            Ruslan Nikolaev and   
                    Godmar Back   Perfctr-Xen: a framework for performance
                                  counter virtualization . . . . . . . . . 15--26
                   Qin Zhao and   
                  David Koh and   
                  Syed Raza and   
             Derek Bruening and   
              Weng-Fai Wong and   
              Saman Amarasinghe   Dynamic cache contention detection in
                                  multi-threaded applications  . . . . . . 27--38
                   Kun Wang and   
                    Jia Rao and   
                 Cheng-Zhong Xu   Rethink the virtual machine template . . 39--50
           Emmanuel Cecchet and   
                Rahul Singh and   
             Upendra Sharma and   
                Prashant Shenoy   Dolly: virtualization-driven database
                                  provisioning for the cloud . . . . . . . 51--62
                 Michael Le and   
                    Yuval Tamir   ReHype: enabling VM survival across
                                  hypervisor failures  . . . . . . . . . . 63--74
              Eunbyung Park and   
             Bernhard Egger and   
                     Jaejin Lee   Fast and space-efficient virtual machine
                                  checkpointing  . . . . . . . . . . . . . 75--86
                Irene Zhang and   
            Alex Garthwaite and   
              Yury Baskakov and   
                Kenneth C. Barr   Fast restore of checkpointed memory
                                  using working set estimation . . . . . . 87--98
                 Kenichi Kourai   Fast and correct performance recovery of
                                  operating systems using a virtual
                                  machine monitor  . . . . . . . . . . . . 99--110
          Petter Svärd and   
              Benoit Hudzia and   
             Johan Tordsson and   
                   Erik Elmroth   Evaluation of delta compression
                                  techniques for efficient live migration
                                  of large virtual machines  . . . . . . . 111--120
               Timothy Wood and   
         K. K. Ramakrishnan and   
            Prashant Shenoy and   
          Jacobus van der Merwe   CloudNet: dynamic pooling of cloud
                                  resources by live WAN migration of
                                  virtual machines . . . . . . . . . . . . 121--132
                  Jie Zheng and   
         Tze Sing Eugene Ng and   
       Kunwadee Sripanidkulchai   Workload-aware live storage migration
                                  for clouds . . . . . . . . . . . . . . . 133--144
               Lionel Litty and   
                      David Lie   Patch auditing in infrastructure as a
                                  service clouds . . . . . . . . . . . . . 145--156
              Mathias Payer and   
                Thomas R. Gross   Fine-grained user-space security through
                                  virtualization . . . . . . . . . . . . . 157--168
              John R. Lange and   
             Kevin Pedretti and   
                Peter Dinda and   
         Patrick G. Bridges and   
                  Chang Bae and   
             Philip Soltero and   
              Alexander Merritt   Minimal-overhead virtualization of a
                                  large scale supercomputer  . . . . . . . 169--180
                    Lei Xia and   
               Sanjay Kumar and   
                   Xue Yang and   
     Praveen Gopalakrishnan and   
                   York Liu and   
       Sebastian Schoenberg and   
                    Xingang Guo   Virtual WiFi: bring virtualization from
                                  wired to wireless  . . . . . . . . . . . 181--192
              John R. Lange and   
                    Peter Dinda   SymCall: symbiotic virtualization
                                  through VMM-to-guest upcalls . . . . . . 193--204
               Dan Williams and   
               Hani Jamjoom and   
               Yew-Huey Liu and   
             Hakim Weatherspoon   Overdriver: handling memory overload in
                                  an oversubscribed cloud  . . . . . . . . 205--216
               Xiaolin Wang and   
                Jiarui Zang and   
               Zhenlin Wang and   
                Yingwei Luo and   
                    Xiaoming Li   Selective hardware/software memory
                                  virtualization . . . . . . . . . . . . . 217--226
               Amitabha Roy and   
                Steven Hand and   
                     Tim Harris   Hybrid binary rewriting for memory
                                  access instrumentation . . . . . . . . . 227--238

ACM SIG{}PLAN Notices
Volume 46, Number 8, August, 2011

                 James R. Larus   Programming the cloud  . . . . . . . . . 1--2
     Muhammad Amber Hassaan and   
           Martin Burtscher and   
                 Keshav Pingali   Ordered vs. unordered: a comparison of
                                  parallelism and work-efficiency in
                                  irregular algorithms . . . . . . . . . . 3--12
              Michael Bauer and   
                 John Clark and   
              Eric Schkufza and   
                     Alex Aiken   Programming the memory hierarchy
                                  revisited: supporting irregular
                                  parallelism in Sequoia . . . . . . . . . 13--24
              Alin Murarasu and   
         Josef Weidendorfer and   
                Gerrit Buse and   
             Daniel Butnaru and   
              Dirk Pflüger   Compact data structure and scalable
                                  algorithms for the sparse grid technique 25--34
               Hassan Chafi and   
          Arvind K. Sujeeth and   
             Kevin J. Brown and   
             HyoukJoong Lee and   
            Anand R. Atreya and   
                 Kunle Olukotun   A domain-specific approach to
                                  heterogeneous parallelism  . . . . . . . 35--46
            Bryan Catanzaro and   
            Michael Garland and   
                   Kurt Keutzer   Copperhead: compiling an embedded data
                                  parallel language  . . . . . . . . . . . 47--56
  James Christopher Jenista and   
               Yong hun Eom and   
           Brian Charles Demsky   OoOJava: software out-of-order execution 57--68
                   Min Feng and   
                Rajiv Gupta and   
                          Yi Hu   SpiceC: scalable parallelism via
                                  implicit copying and explicit commit . . 69--80
                Stas Negara and   
          Rajesh K. Karmani and   
                       Gul Agha   Inferring ownership transfer for
                                  efficient message passing  . . . . . . . 81--90
               Xiaoya Xiang and   
                    Bin Bao and   
                Tongxin Bai and   
                  Chen Ding and   
               Trishul Chilimbi   All-window profiling and composable
                                  models of cache sharing  . . . . . . . . 91--102
              Xiaoning Ding and   
                 Kaibo Wang and   
                 Xiaodong Zhang   ULCC: a user-level facility for
                                  optimizing shared cache performance on
                                  multicores . . . . . . . . . . . . . . . 103--112
                    Xing Wu and   
                  Frank Mueller   ScalaExtrap: trace-based communication
                                  extrapolation for SPMD programs  . . . . 113--122
            Kathryn S. McKinley   How's the parallel computing revolution
                                  going? . . . . . . . . . . . . . . . . . 123--124
          Rajesh K. Karmani and   
              P. Madhusudan and   
               Brandon M. Moore   Thread contracts for safe parallelism    125--134
                  Mai Zheng and   
            Vignesh T. Ravi and   
                   Feng Qin and   
                  Gagan Agrawal   GRace: a low-overhead mechanism for
                                  detecting data races in GPU programs . . 135--146
                 Jaeheon Yi and   
           Caitlin Sadowski and   
                Cormac Flanagan   Cooperative reasoning for preemptive
                                  execution  . . . . . . . . . . . . . . . 147--156
              Mohsen Lesani and   
                  Jens Palsberg   Communicating memory transactions  . . . 157--168
           Victor Luchangco and   
            Virendra J. Marathe   Transaction communicators: enabling
                                  cooperation among concurrent
                                  transactions . . . . . . . . . . . . . . 169--178
Sérgio Miguel Fernandes and   
            João Cachopo   Lock-free and scalable multi-version
                                  software transactional memory  . . . . . 179--188
                  Chen Tian and   
               Changhui Lin and   
                   Min Feng and   
                    Rajiv Gupta   Enhanced speculative parallelization via
                                  incremental recovery . . . . . . . . . . 189--200
          Vijay A. Saraswat and   
        Prabhanjan Kambadur and   
            Sreedhar Kodali and   
                David Grove and   
          Sriram Krishnamoorthy   Lifeline-based global load balancing . . 201--212
               Zhaoguo Wang and   
                    Ran Liu and   
                 Yufei Chen and   
                      Xi Wu and   
                 Haibo Chen and   
               Weihua Zhang and   
                     Binyu Zang   COREMU: a scalable and portable parallel
                                  full-system emulator . . . . . . . . . . 213--222
                 Alex Kogan and   
                   Erez Petrank   Wait-free queues with multiple enqueuers
                                  and dequeuers  . . . . . . . . . . . . . 223--234
             Gabriel Tanase and   
                 Antal Buss and   
                 Adam Fidel and   
  Harshvardhan Harshvardhan and   
       Ioannis Papadopoulos and   
                Olga Pearce and   
               Timmie Smith and   
              Nathan Thomas and   
                 Xiabing Xu and   
               Nedal Mourad and   
                  Jeremy Vu and   
               Mauro Bianco and   
             Nancy M. Amato and   
           Lawrence Rauchwerger   The STAPL parallel container framework   235--246
          Kornilios Kourtis and   
        Vasileios Karakasis and   
            Georgios Goumas and   
              Nectarios Koziris   CSX: an extended compression format for
                                  SpMV on shared memory systems  . . . . . 247--256
              Yuri Dotsenko and   
         Sara S. Baghsorkhi and   
              Brandon Lloyd and   
            Naga K. Govindaraju   Auto-tuning of Fast Fourier Transform on
                                  graphics processors  . . . . . . . . . . 257--266
              Sungpack Hong and   
              Sang Kyun Kim and   
              Tayo Oguntebi and   
                 Kunle Olukotun   Accelerating CUDA graph algorithms at
                                  maximum warp . . . . . . . . . . . . . . 267--276
                Jungwon Kim and   
                Honggyu Kim and   
               Joo Hwan Lee and   
                     Jaejin Lee   Achieving a single compute device image
                                  in OpenCL for multiple GPUs  . . . . . . 277--288
            Ramya Prabhakar and   
        Shekhar Srikantaiah and   
                 Rajat Garg and   
                Mahmut Kandemir   QoS aware storage cache management in
                                  multi-server environments  . . . . . . . 289--290
               Amitabha Roy and   
                Steven Hand and   
                     Tim Harris   Weak atomicity under the x86 memory
                                  consistency model  . . . . . . . . . . . 291--292
              Donghwan Jeon and   
           Saturnino Garcia and   
                Chris Louie and   
     Sravanthi Kota Venkata and   
         Michael Bedford Taylor   Kremlin: like \tt gprof, but for
                                  parallelization  . . . . . . . . . . . . 293--294
            Robert Strzodka and   
           Mohammed Shaheen and   
                    Dawid Pajak   Time skewing made simple . . . . . . . . 295--296
Andre Vincent Pascal Grosset and   
                Peihong Zhu and   
                 Shusen Liu and   
  Suresh Venkatasubramanian and   
                      Mary Hall   Evaluating graph coloring on GPUs  . . . 297--298
                      Chen Ding   Two examples of parallel programming
                                  without concurrency constructs (PP-CC)   299--300
          Philippe Stellwag and   
             Fabian Scheler and   
               Jakob Krainz and   
Wolfgang Schröder-Preikschat   A wait-free NCAS library for parallel
                                  applications with timing constraints . . 301--302
              Teresa Davies and   
               Zizhong Chen and   
          Christer Karlsson and   
                        Hui Liu   Algorithm-based recovery for HPL . . . . 303--304
    Jeremiah James Willcock and   
            Torsten Hoefler and   
    Nicholas Gerard Edmonds and   
               Andrew Lumsdaine   Active Pebbles: a programming model for
                                  highly parallel fine-grained data-driven
                                  computations . . . . . . . . . . . . . . 305--306
             Topher Fischer and   
                Eric Mercer and   
                    Neha Rungta   Symbolically modeling concurrent MCAPI
                                  executions . . . . . . . . . . . . . . . 307--308
          Stephen F. Siegel and   
              Timothy K. Zirkel   Automatic formal verification of
                                  MPI-based parallel programs  . . . . . . 309--310
      Alastair F. Donaldson and   
            Daniel Kroening and   
                Philipp Ruemmer   SCRATCH: a tool for automatic analysis
                                  of DMA races . . . . . . . . . . . . . . 311--312
             Matko Botincan and   
                 Mike Dodds and   
      Alastair F. Donaldson and   
           Matthew J. Parkinson   Automatic safety proofs for asynchronous
                                  memory operations  . . . . . . . . . . . 313--314

ACM SIG{}PLAN Notices
Volume 46, Number 9, September, 2011

               Andrzej Filinski   Towards a comprehensive theory of
                                  monadic effects  . . . . . . . . . . . . 1--1
             Jeremy Gibbons and   
                     Ralf Hinze   Just do it: simple monadic equational
                                  reasoning  . . . . . . . . . . . . . . . 2--14
               Nikhil Swamy and   
              Nataliya Guts and   
                Daan Leijen and   
                  Michael Hicks   Lightweight monadic programming in ML    15--27
              Emily G. Mitchell   Functional programming through deep
                                  time: modeling the first complex
                                  ecosystems on Earth  . . . . . . . . . . 28--31
             Tom Schrijvers and   
        Bruno C. d. S. Oliveira   Monads, zippers and views: virtualizing
                                  the monad stack  . . . . . . . . . . . . 32--44
Neelakantan R. Krishnaswami and   
                    Nick Benton   A semantic model for graphical user
                                  interfaces . . . . . . . . . . . . . . . 45--57
               Olin Shivers and   
                 Aaron J. Turon   Modular rollback through control
                                  logging: a pair of twin functional
                                  pearls . . . . . . . . . . . . . . . . . 58--68
      Dimitrios Vardoulakis and   
                   Olin Shivers   Pushdown flow analysis of first-class
                                  control  . . . . . . . . . . . . . . . . 69--80
             Marek Materzok and   
              Dariusz Biernacki   Subtyping delimited continuations  . . . 81--93
          Giuseppe Castagna and   
                       Zhiwu Xu   Set-theoretic foundation of parametric
                                  polymorphism and subtyping . . . . . . . 94--106
               Nils Gesbert and   
           Pierre Genev\`es and   
               Nabil Laya\"\ida   Parametric polymorphism and semantic
                                  subtyping: the logical connection  . . . 107--116
           Akimasa Morihata and   
             Kiminori Matsuzaki   Balanced trees inhabiting functional
                                  parallel programming . . . . . . . . . . 117--128
                   Yan Chen and   
            Joshua Dunfield and   
          Matthew A. Hammer and   
                   Umut A. Acar   Implicit self-adjusting computation for
                                  purely functional programs . . . . . . . 129--141
                Makoto Takeyama   Programming assurance cases in Agda  . . 142--142
         Dominique Devriese and   
                 Frank Piessens   On the bright side of type classes:
                                  instance arguments in Agda . . . . . . . 143--155
José Pedro Magalhães and   
                 W. Bas de Haas   Functional modelling of musical harmony:
                                  an experience report . . . . . . . . . . 156--162
           Georges Gonthier and   
               Beta Ziliani and   
        Aleksandar Nanevski and   
                   Derek Dreyer   How to make ad hoc proof automation less
                                  ad hoc . . . . . . . . . . . . . . . . . 163--175
                 Tim Disney and   
            Cormac Flanagan and   
                   Jay McCarthy   Temporal higher-order contracts  . . . . 176--188
              Matthew Might and   
               David Darais and   
                 Daniel Spiewak   Parsing with derivatives: a functional
                                  pearl  . . . . . . . . . . . . . . . . . 189--195
             Katsuhiro Ueno and   
              Atsushi Ohori and   
                 Toshiaki Otomo   An efficient non-moving garbage
                                  collector for functional languages . . . 196--208
                  Andy Gill and   
                  Andrew Farmer   Deriving an efficient FPGA
                                  implementation of a low density parity
                                  check forward error corrector  . . . . . 209--220
               Dan R. Ghica and   
                 Alex Smith and   
                   Satnam Singh   Geometry of synthesis IV: compiling
                                  affine recursion into static hardware    221--233
                Ki Yung Ahn and   
                     Tim Sheard   A hierarchy of mendler style recursion
                                  combinators: taming inductive datatypes
                                  with negative occurrences  . . . . . . . 234--246
                  Barry Jay and   
                  Jens Palsberg   Typed self-interpretation by pattern
                                  matching . . . . . . . . . . . . . . . . 247--258
Frédéric Chyzak and   
                Alexis Darrasse   Using \tt camlp4 for presenting dynamic
                                  mathematics on the Web: DynaMoW, an
                                  OCaml language extension for the
                                  run-time generation of mathematical
                                  contents and their presentation on the
                                  Web  . . . . . . . . . . . . . . . . . . 259--265
               Nikhil Swamy and   
                  Juan Chen and   
      Cédric Fournet and   
          Pierre-Yves Strub and   
      Karthikeyan Bhargavan and   
                      Jean Yang   Secure distributed programming with
                                  value-dependent types  . . . . . . . . . 266--278
                Nate Foster and   
               Rob Harrison and   
        Michael J. Freedman and   
       Christopher Monsanto and   
           Jennifer Rexford and   
                 Alec Story and   
                   David Walker   Frenetic: a network programming language 279--291
            Kathleen Fisher and   
                Nate Foster and   
               David Walker and   
                   Kenny Q. Zhu   Forest: a language and toolkit for
                                  programming with filestores  . . . . . . 292--306
              Atsushi Ohori and   
                 Katsuhiro Ueno   Making Standard ML a practical database
                                  programming language . . . . . . . . . . 307--319
              Nicolas Pouillard   Nameless, painless . . . . . . . . . . . 320--332
          Stephanie Weirich and   
            Brent A. Yorgey and   
                     Tim Sheard   Binders unbound  . . . . . . . . . . . . 333--345
             Andrei Popescu and   
                 Elsa L. Gunter   Recursion principles for syntax with
                                  bindings and substitution  . . . . . . . 346--358
                 Ralf Hinze and   
             Daniel W. H. James   Proving the unique fixed-point principle
                                  correct: an adventure with category
                                  theory . . . . . . . . . . . . . . . . . 359--371
             Marco Gaboardi and   
               Luca Paolini and   
                  Mauro Piccolo   Linearity and PCF: a semantic insight!   372--384
              Shin-Cheng Mu and   
               Akimasa Morihata   Generalising and dualising the third
                                  list-homomorphism theorem: functional
                                  pearl  . . . . . . . . . . . . . . . . . 385--391
                  Meng Wang and   
             Jeremy Gibbons and   
                     Nicolas Wu   Incremental updates for efficient
                                  bidirectional transformations  . . . . . 392--403
             Alexey Gotsman and   
                  Hongseok Yang   Modular verification of preemptive OS
                                  kernels  . . . . . . . . . . . . . . . . 404--417
      Arthur Charguéraud   Characteristic formulae for the
                                  verification of imperative programs  . . 418--430
                 Amal Ahmed and   
                 Matthias Blume   An equivalence-preserving CPS
                                  translation via multi-language semantics 431--444
            Jacob Thamsborg and   
                  Lars Birkedal   A Kripke logical relation for
                                  effect-based program transformations . . 445--456

ACM SIG{}PLAN Notices
Volume 46, Number 10, October, 2011

                Ivan Sutherland   The sequential prison  . . . . . . . . . 1--2
               Tongping Liu and   
                Emery D. Berger   SHERIFF: precise detection and automatic
                                  mitigation of false sharing  . . . . . . 3--18
        Dasarath Weeratunge and   
              Xiangyu Zhang and   
              Suresh Jaganathan   Accentuating the positive: atomicity
                                  inference and enforcement using correct
                                  executions . . . . . . . . . . . . . . . 19--34
                      Du Li and   
           Witawas Srisa-an and   
               Matthew B. Dwyer   SOS: saving time in dynamic race
                                  detection with stationary analysis . . . 35--50
               Ohad Shacham and   
             Nathan Bronson and   
                 Alex Aiken and   
                Mooly Sagiv and   
              Martin Vechev and   
                     Eran Yahav   Testing atomicity of composed concurrent
                                  operations . . . . . . . . . . . . . . . 51--64
              Kuat Yessenov and   
                  Zhilei Xu and   
           Armando Solar-Lezama   Data-driven synthesis for
                                  object-oriented frameworks . . . . . . . 65--82
                   Yewen Pu and   
            Rastislav Bodik and   
             Saurabh Srivastava   Synthesis of first-order dynamic
                                  programming algorithms . . . . . . . . . 83--98
              Jesse Doherty and   
             Laurie Hendren and   
                Soroush Radpour   Kind analysis for MATLAB . . . . . . . . 99--118
            Asger Feldthaus and   
             Todd Millstein and   
       Anders Mòller and   
           Max Schäfer and   
                      Frank Tip   Tool-supported refactoring for
                                  JavaScript . . . . . . . . . . . . . . . 119--138
         Lennart C. L. Kats and   
                Rob Vermaas and   
                   Eelco Visser   Integrated language definition testing:
                                  enabling test-driven language
                                  development  . . . . . . . . . . . . . . 139--154
                Milan Jovic and   
             Andrea Adamoli and   
             Matthias Hauswirth   Catch me if you can: performance bug
                                  detection in the wild  . . . . . . . . . 155--170
              Pallavi Joshi and   
          Haryadi S. Gunawi and   
                    Koushik Sen   PREFAIL: a programmable tool for
                                  multiple-failure injection . . . . . . . 171--188
       Suresh Thummalapenta and   
                    Tao Xie and   
           Nikolai Tillmann and   
        Jonathan de Halleux and   
                    Zhendong Su   Synthesizing method sequences for
                                  high-coverage testing  . . . . . . . . . 189--206
                 Omer Tripp and   
                Greta Yorsh and   
                 John Field and   
                    Mooly Sagiv   HAWKEYE: effective discovery of dataflow
                                  impediments to parallelization . . . . . 207--224
            Guy Golan-Gueta and   
             Nathan Bronson and   
                 Alex Aiken and   
              G. Ramalingam and   
                Mooly Sagiv and   
                     Eran Yahav   Automatic fine-grain locking using shape
                                  properties . . . . . . . . . . . . . . . 225--242
                 Chuanle Ke and   
                    Lei Liu and   
                 Chao Zhang and   
                Tongxin Bai and   
               Bryan Jacobs and   
                      Chen Ding   Safe parallel programming using dynamic
                                  dependence hints . . . . . . . . . . . . 243--258
                 Arun Raman and   
                Greta Yorsh and   
              Martin Vechev and   
                     Eran Yahav   Sprint: speculative prefetching of
                                  remote data  . . . . . . . . . . . . . . 259--274
      Edward E. Aftandilian and   
            Samuel Z. Guyer and   
              Martin Vechev and   
                     Eran Yahav   Asynchronous assertions  . . . . . . . . 275--288
           Kevin J. Hoffman and   
           Harrison Metzger and   
                Patrick Eugster   Ribbons: a partially shared memory
                                  programming model  . . . . . . . . . . . 289--306
                    Xi Yang and   
       Stephen M. Blackburn and   
            Daniel Frampton and   
         Jennifer B. Sartor and   
            Kathryn S. McKinley   Why nothing matters: the impact of
                                  zeroing  . . . . . . . . . . . . . . . . 307--324
               Eva Darulova and   
                  Viktor Kuncak   Trustworthy numerical computation in
                                  Scala  . . . . . . . . . . . . . . . . . 325--344
                 Siliang Li and   
                       Gang Tan   JET: exception checking in the Java
                                  Native Interface . . . . . . . . . . . . 345--358
             Cristina David and   
                  Wei-Ngan Chin   Immutable specifications for more
                                  concise and precise verification . . . . 359--374
                 Amin Shali and   
                William R. Cook   Hybrid partial evaluation  . . . . . . . 375--390
           Sebastian Erdweg and   
            Tillmann Rendel and   
     Christian Kästner and   
                Klaus Ostermann   SugarJ: library-based syntactic language
                                  extensibility  . . . . . . . . . . . . . 391--406
           Camil Demetrescu and   
             Irene Finocchi and   
               Andrea Ribichini   Reactive imperative programming with
                                  dataflow constraints . . . . . . . . . . 407--426
       Sebastian Burckhardt and   
                Daan Leijen and   
           Caitlin Sadowski and   
                 Jaeheon Yi and   
                    Thomas Ball   Two for the price of one: a model for
                                  parallel and incremental computation . . 427--444
                   Kai Tian and   
                 Eddy Zhang and   
                    Xipeng Shen   A step towards transparent integration
                                  of input-consciousness into dynamic
                                  program optimizations  . . . . . . . . . 445--462
               Youngjoon Jo and   
                Milind Kulkarni   Enhancing locality for recursive
                                  traversals of recursive structures . . . 463--482
           Michael D. Adams and   
             Andrew W. Keep and   
              Jan Midtgaard and   
              Matthew Might and   
               Arun Chauhan and   
                 R. Kent Dybvig   Flow-sensitive type recovery in
                                  linear-log time  . . . . . . . . . . . . 483--498
               Umut A. Acar and   
  Arthur Charguéraud and   
                    Mike Rainey   Oracle scheduling: controlling
                                  granularity in implicitly parallel
                                  languages  . . . . . . . . . . . . . . . 499--518
              Donghwan Jeon and   
           Saturnino Garcia and   
                Chris Louie and   
         Michael Bedford Taylor   Kismet: parallel speedup estimates for
                                  serial programs  . . . . . . . . . . . . 519--536
           Romain E. Cledat and   
               Tushar Kumar and   
                  Santosh Pande   Efficiently speeding up sequential
                                  computation through the n-way
                                  programming model  . . . . . . . . . . . 537--554
               Hari K. Pyla and   
             Calvin Ribbens and   
           Srinidhi Varadarajan   Exploiting coarse-grain speculative
                                  parallelism  . . . . . . . . . . . . . . 555--574
             Aaron J. Turon and   
               Claudio V. Russo   Scalable join patterns . . . . . . . . . 575--594
          Benjamin Delaware and   
               William Cook and   
                     Don Batory   Product lines of theorems  . . . . . . . 595--608
                Lintaro Ina and   
               Atsushi Igarashi   Gradual typing for generics  . . . . . . 609--624
               Jesse A. Tov and   
               Riccardo Pucella   A theory of substructural types and
                                  control  . . . . . . . . . . . . . . . . 625--642
         Raymond P. L. Buse and   
           Caitlin Sadowski and   
                 Westley Weimer   Benefits and barriers of user evaluation
                                  in software engineering research . . . . 643--656
               Andreas Sewe and   
                Mira Mezini and   
           Aibek Sarimbekov and   
                  Walter Binder   Da capo con Scala: design and analysis
                                  of a Scala benchmark suite for the Java
                                  Virtual Machine  . . . . . . . . . . . . 657--676
            Gregor Richards and   
                Andreas Gal and   
               Brendan Eich and   
                      Jan Vitek   Automated construction of JavaScript
                                  benchmarks . . . . . . . . . . . . . . . 677--694
                  Zef Hemel and   
                   Eelco Visser   Declaratively programming the Mobile Web
                                  with Mobl  . . . . . . . . . . . . . . . 695--712
            Joshua Sunshine and   
                 Karl Naden and   
                 Sven Stork and   
           Jonathan Aldrich and   
             Éric Tanter   First-class state change in Plaid  . . . 713--732
            David H. Lorenz and   
                   Boaz Rosenan   Cedalion: a language for language
                                  oriented programming . . . . . . . . . . 733--752
          Matthew A. Hammer and   
                 Georg Neis and   
                   Yan Chen and   
                   Umut A. Acar   Self-adjusting stack machines  . . . . . 753--772
             Prasad A. Kulkarni   JIT compilation policy for modern
                                  machines . . . . . . . . . . . . . . . . 773--788
                    Peng Wu and   
      Hiroshige Hayashizaki and   
              Hiroshi Inoue and   
                Toshio Nakatani   Reducing trace selection footprint for
                                  large-scale Java applications without
                                  performance loss . . . . . . . . . . . . 789--804
     Christian Kästner and   
         Paolo G. Giarrusso and   
            Tillmann Rendel and   
           Sebastian Erdweg and   
            Klaus Ostermann and   
                Thorsten Berger   Variability-aware parsing in the
                                  presence of lexical macros and
                                  conditional compilation  . . . . . . . . 805--824
     Thomas Würthinger and   
            Danilo Ansaloni and   
              Walter Binder and   
           Christian Wimmer and   
 Hanspeter Mössenböck   Safe and atomic run-time code evolution
                                  for Java and its application to dynamic
                                  AOP  . . . . . . . . . . . . . . . . . . 825--844
       Pedro da Rocha Pinto and   
      Thomas Dinsdale-Young and   
                 Mike Dodds and   
           Philippa Gardner and   
                Mark Wheelhouse   A simple abstraction for complex
                                  concurrent indexes . . . . . . . . . . . 845--864
           Zachary Anderson and   
                      David Gay   Composable, nestable, pessimistic atomic
                                  statements . . . . . . . . . . . . . . . 865--884
        Roberto Lublinerman and   
               Jisheng Zhao and   
           Zoran Budimli\'c and   
           Swarat Chaudhuri and   
                   Vivek Sarkar   Delegated isolation  . . . . . . . . . . 885--902
                 Tim Harris and   
               Martin Abadi and   
             Rebecca Isaacs and   
                   Ross McIlroy   AC: composable asynchronous IO for
                                  native languages . . . . . . . . . . . . 903--920
           Thomas H. Austin and   
                 Tim Disney and   
                Cormac Flanagan   Virtual values for language extension    921--938
             Zachary Palmer and   
                 Scott F. Smith   Backstage Java: making a difference in
                                  metaprogramming  . . . . . . . . . . . . 939--958
              Toon Verwaest and   
              Camillo Bruni and   
               Mircea Lungu and   
               Oscar Nierstrasz   Flexible object layouts: enabling
                                  lightweight language extensions by
                                  intercepting slot access . . . . . . . . 959--972
                 Eric Allen and   
             Justin Hilburn and   
           Scott Kilpatrick and   
           Victor Luchangco and   
               Sukyoung Ryu and   
                David Chase and   
                     Guy Steele   Type checking modular multiple dispatch
                                  with parametric polymorphism and
                                  multiple inheritance . . . . . . . . . . 973--992
              Hyeonseung Im and   
               Keiko Nakata and   
           Jacques Garrigue and   
                   Sungwoo Park   A syntactic type system for recursive
                                  modules  . . . . . . . . . . . . . . . . 993--1012
       Alexander J. Summers and   
                  Peter Mueller   Freedom before commitment: a lightweight
                                  type system for object initialisation    1013--1032
     Ravichandhran Madhavan and   
             Raghavan Komondoor   Null dereference verification via
                                  over-approximated weakest pre-conditions
                                  analysis . . . . . . . . . . . . . . . . 1033--1052
             Manu Sridharan and   
                 Shay Artzi and   
              Marco Pistoia and   
        Salvatore Guarnieri and   
                 Omer Tripp and   
                      Ryan Berg   F4F: taint analysis of framework-based
                                  Web applications . . . . . . . . . . . . 1053--1068
                  Sooel Son and   
        Kathryn S. McKinley and   
               Vitaly Shmatikov   RoleCast: finding missing security
                                  checks when you do not know what checks
                                  are  . . . . . . . . . . . . . . . . . . 1069--1084

ACM SIG{}PLAN Notices
Volume 46, Number 11, November, 2011

             Ronald Veldema and   
        Michæl Philippsen   Iterative data-parallel mark&sweep on a
                                  GPU  . . . . . . . . . . . . . . . . . . 1--10
                Zoltan Majo and   
                Thomas R. Gross   Memory management in NUMA multicore
                                  systems: trapped between cache
                                  contention and interconnect overhead . . 11--20
               Simon Marlow and   
             Simon Peyton Jones   Multicore garbage collection with local
                                  heaps  . . . . . . . . . . . . . . . . . 21--32
            Robin J. Garner and   
       Stephen M. Blackburn and   
                Daniel Frampton   A comprehensive evaluation of object
                                  scanning techniques  . . . . . . . . . . 33--42
                Xiaoming Gu and   
                      Chen Ding   On the theory and potential of LRU--MRU
                                  collaborative cache management . . . . . 43--54
                Yehuda Afek and   
                  Dave Dice and   
                  Adam Morrison   Cache index-aware memory allocation  . . 55--64
              Matthew Hertz and   
               Stephen Kane and   
           Elizabeth Keudel and   
                Tongxin Bai and   
                  Chen Ding and   
                Xiaoming Gu and   
               Jonathan E. Bard   Waste not, want not: resource-based
                                  garbage collection in a shared
                                  environment  . . . . . . . . . . . . . . 65--76
                     Onur Mutlu   Memory systems in the many-core era:
                                  challenges, opportunities, and solution
                                  directions . . . . . . . . . . . . . . . 77--78
                   Gil Tene and   
             Balaji Iyengar and   
                   Michael Wolf   C4: the continuously concurrent
                                  compacting collector . . . . . . . . . . 79--88
             Tomas Kalibera and   
                  Richard Jones   Handles revisited: optimising
                                  performance and memory costs in a
                                  real-time collector  . . . . . . . . . . 89--98
              Martin Aigner and   
               Andreas Haas and   
        Christoph M. Kirsch and   
           Michael Lippautz and   
               Ana Sokolova and   
           Stephanie Stroka and   
             Andreas Unterweger   Short-term memory for self-collecting
                                  mutators . . . . . . . . . . . . . . . . 99--108
              Jeremy Singer and   
              George Kovoor and   
                Gavin Brown and   
             Mikel Luján   Garbage collection auto-tuning for Java
                                  MapReduce on multi-cores . . . . . . . . 109--118
              Gregor Wagner and   
                Andreas Gal and   
           Christian Wimmer and   
               Brendan Eich and   
                  Michael Franz   Compartmental memory management in a
                                  modern Web browser . . . . . . . . . . . 119--128
                     Paul Tarau   Integrated symbol table, engine and heap
                                  memory management in multi-engine Prolog 129--138

ACM SIG{}PLAN Notices
Volume 46, Number 12, December, 2011

             Tomas Petricek and   
               Alan Mycroft and   
                       Don Syme   Extending monads with pattern matching   1--12
           George Giorgidze and   
              Torsten Grust and   
          Nils Schweinsberg and   
                 Jeroen Weijers   Bringing back monad comprehensions . . . 13--22
     Maximilian Bolingbroke and   
         Simon Peyton Jones and   
           Dimitrios Vytiniotis   Termination combinators forever  . . . . 23--34
            Edwin Westbrook and   
             Nicolas Frisby and   
                   Paul Brauner   Hobbits for Haskell: a library for
                                  higher-order encodings in functional
                                  programming languages  . . . . . . . . . 35--46
                  Thomas Harper   A library writer's guide to shortcut
                                  fusion . . . . . . . . . . . . . . . . . 47--58
              Ben Lippmeier and   
                Gabriele Keller   Efficient parallel stencil convolution
                                  in Haskell . . . . . . . . . . . . . . . 59--70
               Simon Marlow and   
                Ryan Newton and   
             Simon Peyton Jones   A monad for deterministic parallelism    71--82
                Daan Leijen and   
           Manuel Fahndrich and   
           Sebastian Burckhardt   Prettier concurrency: purely functional
                                  concurrent revisions . . . . . . . . . . 83--94
               Deian Stefan and   
            Alejandro Russo and   
           John C. Mitchell and   
               David Mazi\`eres   Flexible dynamic information flow
                                  control in Haskell . . . . . . . . . . . 95--106
       Jonas Duregård and   
                 Patrik Jansson   Embedded parser generators . . . . . . . 107--117
               Jeff Epstein and   
            Andrew P. Black and   
             Simon Peyton-Jones   Towards Haskell in the cloud . . . . . . 118--129


ACM SIG{}PLAN Notices
Volume 47, Number 1, January, 2012

            Andrew P. Black and   
               Peter W. O'Hearn   Presentation of the SIGPLAN
                                  distinguished achievement award to Sir
                                  Charles Antony Richard Hoare, FRS,
                                  FREng, FBCS; and interview . . . . . . . 1--2
                     Tony Hoare   Message of thanks: on the receipt of the
                                  2011 ACM SIGPLAN distinguished
                                  achievement award  . . . . . . . . . . . 3--6
         Stephan van Staden and   
         Cristiano Calcagno and   
                 Bertrand Meyer   Freefinement . . . . . . . . . . . . . . 7--18
              Saurabh Joshi and   
         Shuvendu K. Lahiri and   
                      Akash Lal   Underspecified harnesses and interleaved
                                  bugs . . . . . . . . . . . . . . . . . . 19--30
      Philippa Anne Gardner and   
             Sergio Maffeis and   
             Gareth David Smith   Towards a program logic for JavaScript   31--44
Neelakantan R. Krishnaswami and   
                Nick Benton and   
                   Jan Hoffmann   Higher-order functional reactive
                                  programming in bounded space . . . . . . 45--58
              Chung-Kil Hur and   
               Derek Dreyer and   
                 Georg Neis and   
               Viktor Vafeiadis   The marriage of bisimulations and Kripke
                                  logical relations  . . . . . . . . . . . 59--72
            Roshan P. James and   
                      Amr Sabry   Information effects  . . . . . . . . . . 73--84
                  Jean Yang and   
              Kuat Yessenov and   
           Armando Solar-Lezama   A language for automatically enforcing
                                  privacy policies . . . . . . . . . . . . 85--96
              Gilles Barthe and   
            Boris Köpf and   
            Federico Olmedo and   
Santiago Zanella Béguelin   Probabilistic relational reasoning for
                                  differential privacy . . . . . . . . . . 97--110
          Phillip Heidegger and   
           Annette Bieniusa and   
                 Peter Thiemann   Access permission contracts for
                                  scripting languages  . . . . . . . . . . 111--122
   Parthasarathy Madhusudan and   
               Xiaokang Qiu and   
              Andrei Stefanescu   Recursive proofs for inductive tree
                                  data-structures  . . . . . . . . . . . . 123--136
              Margus Veanes and   
          Pieter Hooimeijer and   
          Benjamin Livshits and   
               David Molnar and   
                Nikolaj Bjorner   Symbolic finite state transducers:
                                  algorithms and applications  . . . . . . 137--150
      Ali Sinan Köksal and   
              Viktor Kuncak and   
                 Philippe Suter   Constraints as control . . . . . . . . . 151--164
           Thomas H. Austin and   
                Cormac Flanagan   Multiple facets for dynamic information
                                  flow . . . . . . . . . . . . . . . . . . 165--178
                 Donald Ray and   
                    Jay Ligatti   Defining code-injection attacks  . . . . 179--190
                 Samik Basu and   
              Tevfik Bultan and   
                Meriem Ouederni   Deciding choreography realizability  . . 191--202
            Ahmed Bouajjani and   
                   Michael Emmi   Analysis of recursively parallel
                                  programs . . . . . . . . . . . . . . . . 203--214
               Jennifer Rexford   Programming languages for programmable
                                  networks . . . . . . . . . . . . . . . . 215--216
       Christopher Monsanto and   
                Nate Foster and   
               Rob Harrison and   
                   David Walker   A compiler and run-time system for
                                  network programming languages  . . . . . 217--230
                 Ravi Chugh and   
          Patrick M. Rondon and   
                   Ranjit Jhala   Nested refinements: a logic for duck
                                  typing . . . . . . . . . . . . . . . . . 231--244
             Patrick Cousot and   
                  Radhia Cousot   An abstract interpretation framework for
                                  termination  . . . . . . . . . . . . . . 245--258
              Krystof Hoder and   
               Laura Kovacs and   
                Andrei Voronkov   Playing in the grey area of proofs . . . 259--272
         Antonis Stampoulis and   
                     Zhong Shao   Static and user-extensible proof
                                  checking . . . . . . . . . . . . . . . . 273--284
                Casey Klein and   
              John Clements and   
          Christos Dimoulas and   
              Carl Eastlund and   
         Matthias Felleisen and   
              Matthew Flatt and   
            Jay A. McCarthy and   
                Jon Rafkind and   
        Sam Tobin-Hochstadt and   
           Robert Bruce Findler   Run your research: on the effectiveness
                                  of lightweight mechanization . . . . . . 285--296
              Azadeh Farzan and   
                Zachary Kincaid   Verification of parameterized concurrent
                                  programs by modular reasoning about data
                                  and control  . . . . . . . . . . . . . . 297--308
             Matko Botincan and   
                 Mike Dodds and   
             Suresh Jagannathan   Resource-sensitive synchronization
                                  inference by abduction . . . . . . . . . 309--322
              Uday S. Reddy and   
               John C. Reynolds   Syntactic control of interference for
                                  separation logic . . . . . . . . . . . . 323--336
           Daniel R. Licata and   
                  Robert Harper   Canonicity for $2$-dimensional type
                                  theory . . . . . . . . . . . . . . . . . 337--348
                Ohad Kammar and   
              Gordon D. Plotkin   Algebraic foundations for
                                  effect-dependent optimisations . . . . . 349--360
              Julien Cretin and   
             Didier Rémy   On the power of coercion abstraction . . 361--372
                 Mayur Naik and   
              Hongseok Yang and   
          Ghila Castelnuovo and   
                    Mooly Sagiv   Abstractions from tests  . . . . . . . . 373--386
         Yannis Smaragdakis and   
                Jacob Evans and   
           Caitlin Sadowski and   
                 Jaeheon Yi and   
                Cormac Flanagan   Sound predictive race detection in
                                  polynomial time  . . . . . . . . . . . . 387--400
          Mikolaj Bojanczyk and   
              Laurent Braud and   
                Bartek Klin and   
                Slawomir Lasota   Towards nominal computation  . . . . . . 401--412
                Andrew Cave and   
               Brigitte Pientka   Programming with binders and indexed
                                  data-types . . . . . . . . . . . . . . . 413--424
              J. Strother Moore   Meta-level features in an
                                  industrial-strength theorem prover . . . 425--426
              Jianzhou Zhao and   
        Santosh Nagarakatte and   
          Milo M. K. Martin and   
                Steve Zdancewic   Formalizing the LLVM intermediate
                                  representation for verified program
                                  transformations  . . . . . . . . . . . . 427--440
           Zeyuan Allen Zhu and   
            Sasa Misailovic and   
         Jonathan A. Kelner and   
                  Martin Rinard   Randomized accuracy-aware program
                                  transformations for efficient
                                  approximate computations . . . . . . . . 441--454
              Hongjin Liang and   
                 Xinyu Feng and   
                        Ming Fu   A rely-guarantee-based simulation for
                                  verifying concurrent program
                                  transformations  . . . . . . . . . . . . 455--468
             Thibaut Balabonski   A unified approach to fully lazy sharing 469--480
              Aseem Rastogi and   
             Avik Chaudhuri and   
                   Basil Hosmer   The ins and outs of gradual type
                                  inference  . . . . . . . . . . . . . . . 481--494
             Martin Hofmann and   
            Benjamin Pierce and   
                  Daniel Wagner   Edit lenses  . . . . . . . . . . . . . . 495--508
                 Mark Batty and   
            Kayvan Memarian and   
                Scott Owens and   
              Susmit Sarkar and   
                   Peter Sewell   Clarifying and compiling C/C++
                                  concurrency: from C++11 to POWER . . . . 509--520
        Tahina Ramananandro and   
           Gabriel Dos Reis and   
                   Xavier Leroy   A mechanized semantics for C++ object
                                  construction and destruction, with
                                  applications to resource management  . . 521--532
             Chucky Ellison and   
                   Grigore Rosu   An executable formal semantics of C with
                                  applications . . . . . . . . . . . . . . 533--544
                Sooraj Bhat and   
             Ashish Agarwal and   
              Richard Vuduc and   
                 Alexander Gray   A type theory for probability density
                                  functions  . . . . . . . . . . . . . . . 545--556
                 Karl Naden and   
            Robert Bocchino and   
           Jonathan Aldrich and   
                 Kevin Bierhoff   A type system for borrowing permissions  557--570
          Pierre-Yves Strub and   
               Nikhil Swamy and   
             Cedric Fournet and   
                      Juan Chen   Self-certification: bootstrapping
                                  certified typecheckers in F* with Coq    571--584

ACM SIG{}PLAN Notices
Volume 47, Number 2, February, 2012

                   Theo D'Hondt   An interpreter for server-side HOP . . . 1--12
                Mason Chang and   
             Bernd Mathiske and   
                Edwin Smith and   
             Avik Chaudhuri and   
                Andreas Gal and   
           Michael Bebenita and   
           Christian Wimmer and   
                  Michael Franz   The impact of optional type information
                                  on JIT compilation of dynamically typed
                                  languages  . . . . . . . . . . . . . . . 13--24
             Andrei Homescu and   
                     Alex Suhan   HappyJIT: a tracing JIT compiler for PHP 25--36
                      Tian Zhao   Polymorphic type inference for scripting
                                  languages with object extensions . . . . 37--50
          Robert Hirschfeld and   
          Michael Perscheid and   
                  Michael Haupt   Explicit use-case representation in
                                  object-oriented programming languages    51--60
  Maxime Chevalier-Boisvert and   
               Erick Lavoie and   
                Marc Feeley and   
                   Bruno Dufour   Bootstrapping a self-hosted research
                                  virtual machine for JavaScript: an
                                  experience report  . . . . . . . . . . . 61--72
          Felix S. Klock II and   
             William D. Clinger   Bounded-latency regional garbage
                                  collection . . . . . . . . . . . . . . . 73--84
                  Kevin Tew and   
               James Swaine and   
              Matthew Flatt and   
       Robert Bruce Findler and   
                    Peter Dinda   Places: adding message-passing
                                  parallelism to Racket  . . . . . . . . . 85--96
           Andreas Stuchlik and   
               Stefan Hanenberg   Static vs. dynamic type systems: an
                                  empirical study about the relationship
                                  between type casts and development time  97--106

ACM SIG{}PLAN Notices
Volume 47, Number 3, March, 2012

               Ulrik P. Schultz   Multilingual component programming in
                                  Racket . . . . . . . . . . . . . . . . . 1--2
     Marko Rosenmüller and   
           Norbert Siegmund and   
               Mario Pukall and   
                      Sven Apel   Tailoring dynamic software product lines 3--12
                 Don Batory and   
          Peter Höfner and   
                   Jongwook Kim   Feature interactions, products, and
                                  composition  . . . . . . . . . . . . . . 13--22
      Márcio Ribeiro and   
             Felipe Queiroz and   
                Paulo Borba and   
 Társis Tolêdo and   
             Claus Brabrand and   
           Sérgio Soares   On the impact of feature dependencies
                                  when maintaining preprocessor-based
                                  software product lines . . . . . . . . . 23--32
          Laís Neves and   
          Leopoldo Teixeira and   
     Demóstenes Sena and   
               Vander Alves and   
        Uirá Kulezsa and   
                    Paulo Borba   Investigating the safe evolution of
                                  software product lines . . . . . . . . . 33--42
       Abdelhakim Hannousse and   
        Rémi Douence and   
                Gilles Ardourel   Static analysis of aspect interaction
                                  and composition in component models  . . 43--52
            William R. Otte and   
          Aniruddha Gokhale and   
         Douglas C. Schmidt and   
               Johnny Willemsen   Infrastructure for component-based DDS
                                  application development  . . . . . . . . 53--62
                   Yulin Li and   
           Gordon S. Novak, Jr.   Generation of geometric programs
                                  specified by diagrams  . . . . . . . . . 63--72
              Andreas Steck and   
                  Alex Lotz and   
             Christian Schlegel   Model-driven engineering and run-time
                                  model-usage in service robotics  . . . . 73--82
Sander Daniël Vermolen and   
            Guido Wachsmuth and   
                   Eelco Visser   Generating database migrations for
                                  evolving Web applications  . . . . . . . 83--92
                  Olivier Danvy   Pragmatics for formal semantics  . . . . 93--94
                Gary J. Shubert   Application of model based development
                                  to flexible code generation  . . . . . . 95--96
                   Kenichi Asai   Reflection in direct style . . . . . . . 97--106
          Nathaniel Nystrom and   
                Derek White and   
                     Kishen Das   Firepile: run-time compilation for GPUs
                                  in Scala . . . . . . . . . . . . . . . . 107--116
     Shahram Esmaeilsabzali and   
              Bernd Fischer and   
                Joanne M. Atlee   Monitoring aspects for the customization
                                  of automatically generated code for
                                  big-step models  . . . . . . . . . . . . 117--126
          Ricky T. Lindeman and   
         Lennart C. L. Kats and   
                   Eelco Visser   Declaratively defining domain-specific
                                  language debuggers . . . . . . . . . . . 127--136
             B. J. Arnoldus and   
     M. G. J. van den Brand and   
                  A. Serebrenik   Less is more: unparser-completeness of
                                  metalanguages for template engines . . . 137--146
        Vidar Slåtten and   
    Frank Alexander Kraemer and   
                 Peter Herrmann   Towards automatic generation of formal
                                  specifications to validate and verify
                                  reliable distributed systems: a method
                                  exemplified by an industrial case study  147--156
            Stefan Sobernig and   
            Patrick Gaubatz and   
             Mark Strembeck and   
                       Uwe Zdun   Comparing complexity of API designs: an
                                  exploratory experiment on DSL-based
                                  framework integration  . . . . . . . . . 157--166
           Sebastian Erdweg and   
         Lennart C. L. Kats and   
            Tillmann Rendel and   
     Christian Kästner and   
            Klaus Ostermann and   
                   Eelco Visser   Growing a language environment with
                                  editor libraries . . . . . . . . . . . . 167--176
               John Freeman and   
          Jaakko Järvi and   
                Wonseok Kim and   
                 Mat Marcus and   
                    Sean Parent   Helping programmers help users . . . . . 177--184
                John Launchbury   Theorem-based circuit derivation in
                                  Cryptol  . . . . . . . . . . . . . . . . 185--186

ACM SIG{}PLAN Notices
Volume 47, Number 4, April, 2012

                 James R. Larus   The cloud will change everything . . . . 1--2
                  Ding Yuan and   
                 Jing Zheng and   
                Soyeon Park and   
              Yuanyuan Zhou and   
                  Stefan Savage   Improving software diagnosability via
                                  log enhancement  . . . . . . . . . . . . 3--14
      Kaushik Veeraraghavan and   
               Dongyoon Lee and   
            Benjamin Wester and   
             Jessica Ouyang and   
              Peter M. Chen and   
                Jason Flinn and   
            Satish Narayanasamy   DoublePlay: parallelizing sequential
                                  logging and replay . . . . . . . . . . . 15--26
               Jared Casper and   
              Tayo Oguntebi and   
              Sungpack Hong and   
          Nathan G. Bronson and   
         Christos Kozyrakis and   
                 Kunle Olukotun   Hardware acceleration of transactional
                                  memory on commodity systems  . . . . . . 27--38
           Luke Dalessandro and   
    François Carouge and   
                 Sean White and   
                  Yossi Lev and   
                  Mark Moir and   
           Michael L. Scott and   
               Michael F. Spear   Hybrid NOrec: a case study in the
                                  effectiveness of best effort hardware
                                  transactional memory . . . . . . . . . . 39--52
           Abhayendra Singh and   
              Daniel Marino and   
        Satish Narayanasamy and   
             Todd Millstein and   
                Madan Musuvathi   Efficient processor support for DRFx, a
                                  memory model with exceptions . . . . . . 53--66
            Joseph Devietti and   
               Jacob Nelson and   
                 Tom Bergan and   
                  Luis Ceze and   
                   Dan Grossman   RCDC: a relaxed consistency
                                  deterministic computer . . . . . . . . . 67--78
               Jacob Burnim and   
              George Necula and   
                    Koushik Sen   Specifying and checking semantic
                                  atomicity for multithreaded programs . . 79--90
                Haris Volos and   
           Andres Jaan Tack and   
               Michael M. Swift   Mnemosyne: lightweight persistent memory 91--104
                Joel Coburn and   
        Adrian M. Caulfield and   
                 Ameen Akel and   
             Laura M. Grupp and   
            Rajesh K. Gupta and   
               Ranjit Jhala and   
                 Steven Swanson   NV-Heaps: making persistent objects fast
                                  and safe with next-generation,
                                  non-volatile memories  . . . . . . . . . 105--118
      Adrian Schüpbach and   
             Andrew Baumann and   
             Timothy Roscoe and   
                    Simon Peter   A declarative language approach to
                                  device configuration . . . . . . . . . . 119--132
              Leonid Ryzhyk and   
                  John Keys and   
          Balachandra Mirla and   
             Arun Raghunath and   
                   Mona Vij and   
                  Gernot Heiser   Improved device driver reliability
                                  through hardware verification reuse  . . 133--144
                Atif Hashmi and   
                Andrew Nere and   
         James Jamal Thomas and   
                  Mikko Lipasti   A case for neuromorphic ISAs . . . . . . 145--158
          Benjamin Ransford and   
               Jacob Sorber and   
                       Kevin Fu   Mementos: system support for
                                  long-running computation on RFID-scale
                                  devices  . . . . . . . . . . . . . . . . 159--170
      Emmanouil Koukoumidis and   
    Dimitrios Lymberopoulos and   
              Karin Strauss and   
                    Jie Liu and   
                    Doug Burger   Pocket cloudlets . . . . . . . . . . . . 171--184
               Navin Sharma and   
                Sean Barker and   
                David Irwin and   
                Prashant Shenoy   Blink: managing server clusters on
                                  intermittent power . . . . . . . . . . . 185--198
             Henry Hoffmann and   
         Stelios Sidiroglou and   
             Michael Carbin and   
            Sasa Misailovic and   
              Anant Agarwal and   
                  Martin Rinard   Dynamic knobs for responsive power-aware
                                  computing  . . . . . . . . . . . . . . . 199--212
                   Song Liu and   
       Karthik Pattabiraman and   
          Thomas Moscibroda and   
               Benjamin G. Zorn   Flikker: saving DRAM refresh-power
                                  through critical data partitioning . . . 213--224
              Qingyuan Deng and   
              David Meisner and   
                 Luiz Ramos and   
          Thomas F. Wenisch and   
              Ricardo Bianchini   MemScale: active low-power modes for
                                  main memory  . . . . . . . . . . . . . . 225--238
                     Qi Gao and   
               Wenbin Zhang and   
                Zhezhe Chen and   
                  Mai Zheng and   
                       Feng Qin   2ndStrike: toward manifesting hidden
                                  concurrency typestate bugs . . . . . . . 239--250
                  Wei Zhang and   
                Junghee Lim and   
          Ramya Olichandran and   
             Joel Scherpelz and   
               Guoliang Jin and   
                    Shan Lu and   
                    Thomas Reps   ConSeq: detecting concurrency bugs
                                  through sequential errors  . . . . . . . 251--264
           Vitaly Chipounov and   
        Volodymyr Kuznetsov and   
                  George Candea   S2E: a platform for in-vivo multi-path
                                  analysis of software systems . . . . . . 265--278
            Owen S. Hofmann and   
               Alan M. Dunn and   
                Sangman Kim and   
               Indrajit Roy and   
                 Emmett Witchel   Ensuring operating system kernel
                                  integrity with OSck  . . . . . . . . . . 279--290
           Donald E. Porter and   
        Silas Boyd-Wickizer and   
                 Jon Howell and   
             Reuben Olinsky and   
                  Galen C. Hunt   Rethinking the library OS from the top
                                  down . . . . . . . . . . . . . . . . . . 291--304
              Nicolas Palix and   
           Gaël Thomas and   
                 Suman Saha and   
        Christophe Calv\`es and   
               Julia Lawall and   
                  Gilles Muller   Faults in Linux: ten years later . . . . 305--318
          Hadi Esmaeilzadeh and   
                   Ting Cao and   
                    Yang Xi and   
       Stephen M. Blackburn and   
            Kathryn S. McKinley   Looking back on the language and
                                  hardware revolutions: measured power,
                                  performance, and scaling . . . . . . . . 319--332
              Donald Nguyen and   
                 Keshav Pingali   Synthesizing concurrent schedulers for
                                  irregular algorithms . . . . . . . . . . 333--344
                Giang Hoang and   
        Robby Bruce Findler and   
                    Russ Joseph   Exploring circuit timing-aware language
                                  and compilation  . . . . . . . . . . . . 345--356
           Sardar M. Farhad and   
                  Yousun Ko and   
          Bernd Burgstaller and   
                Bernhard Scholz   Orchestration by approximation: mapping
                                  stream programs onto multicore
                                  architectures  . . . . . . . . . . . . . 357--368
              Eddy Z. Zhang and   
              Yunlian Jiang and   
                   Ziyu Guo and   
                   Kai Tian and   
                    Xipeng Shen   On-the-fly elimination of dynamic
                                  irregularities for GPU computing . . . . 369--380
            Amir H. Hormati and   
             Mehrzad Samadi and   
                   Mark Woh and   
               Trevor Mudge and   
                   Scott Mahlke   Sponge: portable stream programming on
                                  graphics engines . . . . . . . . . . . . 381--392
             Md Kamruzzaman and   
             Steven Swanson and   
                Dean M. Tullsen   Inter-core prefetching for multicore
                                  processors using migrating helper
                                  threads  . . . . . . . . . . . . . . . . 393--404
      Hiroshige Hayashizaki and   
                    Peng Wu and   
              Hiroshi Inoue and   
        Mauricio J. Serrano and   
                Toshio Nakatani   Improving the performance of trace-based
                                  systems by false loop filtering  . . . . 405--418

ACM SIG{}PLAN Notices
Volume 47, Number 5, May, 2012

                   Jingling Xue   Rethinking Java call stack design for
                                  tiny embedded devices  . . . . . . . . . 1--10
          Olivier Sallenave and   
               Roland Ducournau   Lightweight generics in embedded systems
                                  through static analysis  . . . . . . . . 11--20
               Stephen Kyle and   
             Igor Böhm and   
          Björn Franke and   
               Hugh Leather and   
                   Nigel Topham   Efficiently parallelizing instruction
                                  set simulation of embedded multi-core
                                  processors using region-based
                                  just-in-time dynamic binary translation  21--30
                Yazhi Huang and   
              Mengying Zhao and   
                 Chun Jason Xue   WCET-aware re-scheduling register
                                  allocation for real-time embedded
                                  systems with clustered VLIW architecture 31--40
                   Qing Wan and   
                     Hui Wu and   
                   Jingling Xue   WCET-aware data selection and allocation
                                  for scratchpad memory  . . . . . . . . . 41--50
Léonard Gérard and   
              Adrien Guatto and   
      Cédric Pasteur and   
                    Marc Pouzet   A modular memory optimization for
                                  synchronous data-flow languages:
                                  application to arrays in a Lustre
                                  compiler . . . . . . . . . . . . . . . . 51--60
           Alina Sb\^\irlea and   
                     Yi Zou and   
      Zoran Budimlíc and   
                 Jason Cong and   
                   Vivek Sarkar   Mapping a data-flow programming model
                                  onto heterogeneous platforms . . . . . . 61--70
              Matin Hashemi and   
  Mohammad H. Foroozannejad and   
              Soheil Ghiasi and   
                Christoph Etzel   FORMLESS: scalable utilization of
                                  embedded manycores in streaming
                                  applications . . . . . . . . . . . . . . 71--78
               S. M. Farhad and   
                  Yousun Ko and   
          Bernd Burgstaller and   
                Bernhard Scholz   Profile-guided deployment of stream
                                  programs on multicores . . . . . . . . . 79--88
               Zhenman Fang and   
                  Jiaxin Li and   
               Weihua Zhang and   
                      Yi Li and   
                 Haibo Chen and   
                     Binyu Zang   Improving dynamic prediction accuracy
                                  through multi-level phase analysis . . . 89--98
        Daya Shanker Khudia and   
             Griffin Wright and   
                   Scott Mahlke   Efficient soft error protection for
                                  commodity embedded microprocessors using
                                  profile information  . . . . . . . . . . 99--108
                  Qingan Li and   
              Mengying Zhao and   
             Chun Jason Xue and   
                    Yanxiang He   Compiler-assisted preferred caching for
                                  embedded systems with STT--RAM based
                                  hybrid cache . . . . . . . . . . . . . . 109--118
            Marcela Zuluaga and   
             Andreas Krause and   
               Peter Milder and   
            Markus Püschel   ``Smart'' design space sampling to
                                  predict Pareto-optimal solutions . . . . 119--128
           Olivier Bouissou and   
            Alexandre Chapoutot   An operational semantics for Simulink's
                                  simulation engine  . . . . . . . . . . . 129--138
                    Fang Yu and   
            Shun-Ching Yang and   
                  Farn Wang and   
            Guan-Cheng Chen and   
                 Che-Chang Chan   Symbolic consistency checking of OpenMP
                                  parallel programs  . . . . . . . . . . . 139--148
                Shay Gal-On and   
                    Markus Levy   Creating portable, repeatable, realistic
                                  benchmarks for embedded systems and the
                                  challenges thereof . . . . . . . . . . . 149--152

ACM SIG{}PLAN Notices
Volume 47, Number 6, June, 2012

                   Tony Hosking   Compiling a high-level language for
                                  GPUs: (via language support for
                                  architectures and compilers) . . . . . . 1--12
             Mehrzad Samadi and   
               Amir Hormati and   
            Mojtaba Mehrara and   
              Janghaeng Lee and   
                   Scott Mahlke   Adaptive input-aware compilation for
                                  graphics engines . . . . . . . . . . . . 13--22
             David F. Bacon and   
                Perry Cheng and   
                   Sunil Shukla   And then there were none: a stall-free
                                  real-time garbage collector for
                                  reconfigurable hardware  . . . . . . . . 23--34
    Bruno C. d. S. Oliveira and   
             Tom Schrijvers and   
                Wontae Choi and   
                Wonchan Lee and   
                   Kwangkeun Yi   The implicit calculus: a new foundation
                                  for generic programming  . . . . . . . . 35--44
             Ming Kawaguchi and   
             Patrick Rondon and   
            Alexander Bakst and   
                   Ranjit Jhala   Deterministic parallelism via liquid
                                  effects  . . . . . . . . . . . . . . . . 45--54
           Rachid Guerraoui and   
              Viktor Kuncak and   
                  Giuliano Losa   Speculative linearizability  . . . . . . 55--66
        Dmitrijs Zaparanuks and   
             Matthias Hauswirth   Algorithmic profiling  . . . . . . . . . 67--76
               Guoliang Jin and   
                Linhai Song and   
               Xiaoming Shi and   
             Joel Scherpelz and   
                        Shan Lu   Understanding and detecting real-world
                                  performance bugs . . . . . . . . . . . . 77--88
               Emilio Coppa and   
           Camil Demetrescu and   
                 Irene Finocchi   Input-sensitive profiling  . . . . . . . 89--98
              Danfeng Zhang and   
              Aslan Askarov and   
                Andrew C. Myers   Language-based control and mitigation of
                                  timing channels  . . . . . . . . . . . . 99--110
              Charisee Chiw and   
           Gordon Kindlmann and   
                 John Reppy and   
             Lamont Samuels and   
                   Nick Seltzer   Diderot: a parallel DSL for image
                                  analysis and visualization . . . . . . . 111--120
                Luke Cartey and   
         Rune Lyngsò and   
                   Oege de Moor   Synthesising graphics card programs from
                                  DSLs . . . . . . . . . . . . . . . . . . 121--132
                 Arun Raman and   
                  Ayal Zaks and   
                 Jae W. Lee and   
                David I. August   Parcae: a system for flexible parallel
                                  execution  . . . . . . . . . . . . . . . 133--144
                 Omer Tripp and   
             Roman Manevich and   
                 John Field and   
                    Mooly Sagiv   JANUS: exploiting parallelism via
                                  hindsight  . . . . . . . . . . . . . . . 145--156
                    Aaron Turon   Reagents: expressing and composing
                                  fine-grained concurrency . . . . . . . . 157--168
             Michael Carbin and   
               Deokhwan Kim and   
            Sasa Misailovic and   
               Martin C. Rinard   Proving acceptability properties of
                                  relaxed nondeterministic approximate
                                  programs . . . . . . . . . . . . . . . . 169--180
                Isil Dillig and   
              Thomas Dillig and   
                     Alex Aiken   Automated error diagnosis using
                                  abductive inference  . . . . . . . . . . 181--192
        Volodymyr Kuznetsov and   
            Johannes Kinder and   
               Stefan Bucur and   
                  George Candea   Efficient state merging in symbolic
                                  execution  . . . . . . . . . . . . . . . 193--204
                 Jingyue Wu and   
                  Yang Tang and   
                    Gang Hu and   
                 Heming Cui and   
                   Junfeng Yang   Sound and precise analysis of parallel
                                  programs through schedule specialization 205--216
           Aws Albarghouthi and   
                Rahul Kumar and   
             Aditya V. Nori and   
             Sriram K. Rajamani   Parallelizing top-down interprocedural
                                  analyses . . . . . . . . . . . . . . . . 217--228
                  Hakjoo Oh and   
                 Kihong Heo and   
                Wonchan Lee and   
                 Woosuk Lee and   
                   Kwangkeun Yi   Design and implementation of sparse
                                  global analyses for C-like languages . . 229--238
              Brian Hackett and   
                     Shu-yu Guo   Fast and precise hybrid type inference
                                  for JavaScript . . . . . . . . . . . . . 239--250
               Boris Petrov and   
              Martin Vechev and   
             Manu Sridharan and   
                   Julian Dolby   Race detection for Web applications  . . 251--262
            Jeffrey Fischer and   
             Rupak Majumdar and   
         Shahram Esmaeilsabzali   Engage: a deployment management system   263--274
            Daniel Perelman and   
              Sumit Gulwani and   
                Thomas Ball and   
                   Dan Grossman   Type-directed completion of partial
                                  expressions  . . . . . . . . . . . . . . 275--286
               Yong hun Eom and   
                   Brian Demsky   Self-stabilizing Java  . . . . . . . . . 287--298
                   Yan Chen and   
            Joshua Dunfield and   
                   Umut A. Acar   Type-directed automatic
                                  incrementalization . . . . . . . . . . . 299--310
              Susmit Sarkar and   
            Kayvan Memarian and   
                Scott Owens and   
                 Mark Batty and   
               Peter Sewell and   
               Luc Maranget and   
               Jade Alglave and   
                 Derek Williams   Synchronising C/C++ and POWER  . . . . . 311--322
              Paul Gazzillo and   
                   Robert Grimm   SuperC: parsing all of C by taming the
                                  preprocessor . . . . . . . . . . . . . . 323--334
                John Regehr and   
                  Yang Chen and   
                Pascal Cuoq and   
                  Eric Eide and   
             Chucky Ellison and   
                    Xuejun Yang   Test-case reduction for C compiler bugs  335--346
                    Jun Liu and   
              Yuanrui Zhang and   
               Ohyoung Jang and   
                   Wei Ding and   
                Mahmut Kandemir   A compiler framework for extracting
                                  superword level parallelism  . . . . . . 347--358
            Nick P. Johnson and   
                 Hanjun Kim and   
             Prakash Prabhu and   
                  Ayal Zaks and   
                David I. August   Speculative separation for privatization
                                  and reductions . . . . . . . . . . . . . 359--370
          Justin Holewinski and   
      Ragavendar Ramamurthi and   
         Mahesh Ravishankar and   
              Naznin Fauzia and   
    Louis-Noël Pouchet and   
             Atanas Rountev and   
                  P. Sadayappan   Dynamic trace-based analysis of
                                  vectorization potential of applications  371--382
                 Alan Leung and   
               Manish Gupta and   
             Yuvraj Agarwal and   
               Rajesh Gupta and   
               Ranjit Jhala and   
                   Sorin Lerner   Verifying GPU kernels by test
                                  amplification  . . . . . . . . . . . . . 383--394
             Greg Morrisett and   
                   Gang Tan and   
          Joseph Tassarotti and   
      Jean-Baptiste Tristan and   
                     Edward Gan   RockSalt: better, faster, stronger SFI
                                  for the x86  . . . . . . . . . . . . . . 395--404
      Sergey Grebenshchikov and   
              Nuno P. Lopes and   
            Corneliu Popeea and   
             Andrey Rybalchenko   Synthesizing software verifiers from
                                  proof rules  . . . . . . . . . . . . . . 405--416
              Peter Hawkins and   
                 Alex Aiken and   
            Kathleen Fisher and   
              Martin Rinard and   
                    Mooly Sagiv   Concurrent data representation synthesis 417--428
                   Feng Liu and   
               Nayden Nedev and   
       Nedyalko Prisadnikov and   
              Martin Vechev and   
                     Eran Yahav   Dynamic synthesis for relaxed memory
                                  models . . . . . . . . . . . . . . . . . 429--440
          Patrice Godefroid and   
                     Ankur Taly   Automated synthesis of symbolic
                                  instruction encodings from I/O samples   441--452
               Florian Benz and   
        Andreas Hildebrandt and   
                 Sebastian Hack   A dynamic program analysis to find
                                  floating-point accuracy problems . . . . 453--462
               Dongyoon Lee and   
              Peter M. Chen and   
                Jason Flinn and   
            Satish Narayanasamy   Chimera: hybrid program analysis for
                                  determinism  . . . . . . . . . . . . . . 463--474
          Marc A. de Kruijf and   
  Karthikeyan Sankaralingam and   
                     Somesh Jha   Static analysis and compiler design for
                                  idempotent processing  . . . . . . . . . 475--486
                   Min Feng and   
                Rajiv Gupta and   
                 Iulian Neamtiu   Effective parallelization of loops in
                                  the presence of I/O operations . . . . . 487--498
                      Chun Chen   Polyhedra scanning revisited . . . . . . 499--508
           Cosmin E. Oancea and   
           Lawrence Rauchwerger   Logical inference techniques for loop
                                  parallelization  . . . . . . . . . . . . 509--520
             Michael Pradel and   
                Thomas R. Gross   Fully automatic and precise detection of
                                  thread safety violations . . . . . . . . 521--530
             Raghavan Raman and   
               Jisheng Zhao and   
               Vivek Sarkar and   
              Martin Vechev and   
                     Eran Yahav   Scalable and precise dynamic datarace
                                  detection for structured parallelism . . 531--542
        Santosh Nagarakatte and   
       Sebastian Burckhardt and   
          Milo M. K. Martin and   
             Madanlal Musuvathi   Multicore acceleration of priority-based
                                  schedulers for concurrency bug detection 543--554

ACM SIG{}PLAN Notices
Volume 47, Number 7, July, 2012

                     Jason Nieh   Challenges in building a real, large
                                  private cloud  . . . . . . . . . . . . . 1--2
                Sajib Kundu and   
            Raju Rangaswami and   
                Ajay Gulati and   
                  Ming Zhao and   
                  Kaushik Dutta   Modeling virtualized applications using
                                  machine learning techniques  . . . . . . 3--14
                     Hui Lv and   
                 Yaozu Dong and   
              Jiangang Duan and   
                     Kevin Tian   Virtualization challenges: a view from
                                  server consolidation perspective . . . . 15--26
                   Wei Wang and   
                 Tanima Dey and   
              Ryan W. Moore and   
           Mahmut Aktasoglu and   
          Bruce R. Childers and   
           Jack W. Davidson and   
            Mary Jane Irwin and   
            Mahmut Kandemir and   
                 Mary Lou Soffa   REEact: a customizable virtual execution
                                  manager for multicore platforms  . . . . 27--38
                Zhiqiang Ma and   
             Zhonghua Sheng and   
                     Lin Gu and   
                 Liufei Wen and   
                     Gong Zhang   DVM: towards a datacenter-scale virtual
                                  machine  . . . . . . . . . . . . . . . . 39--50
                Tingting Yu and   
           Witawas Srisa-an and   
                Gregg Rothermel   SimTester: a controllable and observable
                                  testing framework for embedded systems   51--62
                 Yuan Zhang and   
                   Min Yang and   
                    Bo Zhou and   
                Zhemin Yang and   
               Weihua Zhang and   
                     Binyu Zang   Swift: a register-based JIT compiler for
                                  embedded JVMs  . . . . . . . . . . . . . 63--74
               Zhiyong Shan and   
                   Xin Wang and   
            Tzi-cker Chiueh and   
                  Xiaofeng Meng   Facilitating inter-application
                                  interactions for OS-level virtualization 75--86
              Balazs Gerofi and   
                Yutaka Ishikawa   Enhancing TCP throughput of highly
                                  available virtual machines via
                                  speculative communication  . . . . . . . 87--96
        Shriram Rajagopalan and   
              Brendan Cully and   
              Ryan O'Connor and   
                Andrew Warfield   SecondSite: disaster tolerance as a
                                  service  . . . . . . . . . . . . . . . . 97--108
                Zhenhao Pan and   
                 Yaozu Dong and   
                    Yu Chen and   
                  Lei Zhang and   
                  Zhijiao Zhang   CompSC: live migration with pass-through
                                  devices  . . . . . . . . . . . . . . . . 109--120
      Vasileios P. Kemerlis and   
      Georgios Portokalidis and   
               Kangkook Jee and   
           Angelos D. Keromytis   \tt libdft: practical dynamic data flow
                                  tracking for commodity systems . . . . . 121--132
             Derek Bruening and   
                   Qin Zhao and   
              Saman Amarasinghe   Transparent dynamic instrumentation  . . 133--144
          Geoffrey Lefebvre and   
              Brendan Cully and   
           Christopher Head and   
                 Mark Spear and   
            Norm Hutchinson and   
                Mike Feeley and   
                Andrew Warfield   Execution mining . . . . . . . . . . . . 145--158
               Demos Pavlou and   
               Enric Gibert and   
           Fernando Latorre and   
               Antonio Gonzalez   DDGacc: boosting dynamic DDG-based
                                  binary optimizations through specialized
                                  hardware support . . . . . . . . . . . . 159--168
           Kazuaki Ishizaki and   
          Takeshi Ogasawara and   
              Jose Castanos and   
            Priya Nagpurkar and   
             David Edelsohn and   
                Toshio Nakatani   Adding dynamically-typed language
                                  support to a statically-typed language
                                  compiler: performance evaluation,
                                  analysis, and tradeoffs  . . . . . . . . 169--180
                     Yi Lin and   
       Stephen M. Blackburn and   
                Daniel Frampton   Unpicking the knot: teasing apart
                                  VM/application interdependencies . . . . 181--190
                Harvey Tuch and   
            Cyprien Laplace and   
            Kenneth C. Barr and   
                          Bi Wu   Block storage virtualization with
                                  commodity secure digital cards . . . . . 191--202
               Sudeep Ghosh and   
                Jason Hiser and   
               Jack W. Davidson   Replacement attacks against VM-protected
                                  applications . . . . . . . . . . . . . . 203--214
              Mathias Payer and   
                Thomas R. Gross   Protecting applications against TOCTTOU
                                  races by user-space caching of file
                                  metadata . . . . . . . . . . . . . . . . 215--226
              Lok-Kwong Yan and   
     Manjukumar Jayachandra and   
                   Mu Zhang and   
                       Heng Yin   V2E: combining hardware virtualization
                                  and software emulation for transparent
                                  and extensible malware analysis  . . . . 227--238

ACM SIG{}PLAN Notices
Volume 47, Number 8, August, 2012

          Huynh Phung Huynh and   
            Andrei Hagiescu and   
              Weng-Fai Wong and   
             Rick Siow Mong Goh   Scalable framework for mapping streaming
                                  applications onto multi-GPU systems  . . 1--10
               Jaewoong Sim and   
         Aniruddha Dasgupta and   
                Hyesoon Kim and   
                  Richard Vuduc   A performance analysis framework for
                                  identifying potential benefits in GPGPU
                                  applications . . . . . . . . . . . . . . 11--22
         Sara S. Baghsorkhi and   
               Isaac Gelado and   
          Matthieu Delahaye and   
                 Wen-mei W. Hwu   Efficient performance evaluation of
                                  memory hierarchy for highly
                                  multithreaded graphics processors  . . . 23--34
               Grey Ballard and   
               James Demmel and   
                Nicholas Knight   Communication avoiding successive band
                                  reduction  . . . . . . . . . . . . . . . 35--44
                  Paul Sack and   
                  William Gropp   Faster topology-aware collective
                                  algorithms through non-minimal
                                  communication  . . . . . . . . . . . . . 45--54
               Seonggun Kim and   
                    Hwansoo Han   Efficient SIMD code generation for
                                  irregular kernels  . . . . . . . . . . . 55--64
         Roland Leißa and   
             Sebastian Hack and   
                      Ingo Wald   Extending a C-like language for portable
                                  SIMD programming . . . . . . . . . . . . 65--74
                 Okwan Kwon and   
               Fahed Jubair and   
           Rudolf Eigenmann and   
                 Samuel Midkiff   A hybrid approach of OpenMP for clusters 75--84
               Yong hun Eom and   
               Stephen Yang and   
           James C. Jenista and   
                   Brian Demsky   DOJ: dynamically parallelizing
                                  object-oriented programs . . . . . . . . 85--96
            Daniele Bonetta and   
          Achille Peternier and   
            Cesare Pautasso and   
                  Walter Binder   S: a scripting language for
                                  high-performance RESTful Web services    97--106
          Mario Mendez-Lojo and   
           Martin Burtscher and   
                 Keshav Pingali   A GPU implementation of inclusion-based
                                  points-to analysis . . . . . . . . . . . 107--116
              Duane Merrill and   
            Michael Garland and   
                Andrew Grimshaw   Scalable GPU graph traversal . . . . . . 117--128
                    Yuan Zu and   
                  Ming Yang and   
                 Zhonghu Xu and   
                   Lin Wang and   
                   Xin Tian and   
               Kunyang Peng and   
                   Qunfeng Dong   GPU-based NFA implementation for memory
                                  efficient high speed regular expression
                                  matching . . . . . . . . . . . . . . . . 129--140
                 Alex Kogan and   
                   Erez Petrank   A methodology for creating fast
                                  wait-free data structures  . . . . . . . 141--150
        Aleksandar Prokopec and   
      Nathan Grasso Bronson and   
               Phil Bagwell and   
                 Martin Odersky   Concurrent tries with efficient
                                  non-blocking snapshots . . . . . . . . . 151--160
                Tyler Crain and   
            Vincent Gramoli and   
                  Michel Raynal   A speculation-friendly binary search
                                  tree . . . . . . . . . . . . . . . . . . 161--170
                Yifeng Chen and   
                  Xiang Cui and   
                       Hong Mei   PARRAY: a unifying array representation
                                  for heterogeneous parallelism  . . . . . 171--180
            Guy E. Blelloch and   
          Jeremy T. Fineman and   
         Phillip B. Gibbons and   
                    Julian Shun   Internally deterministic parallel
                                  algorithms can be fast . . . . . . . . . 181--192
       Charles E. Leiserson and   
             Tao B. Schardl and   
                      Jim Sukha   Deterministic parallel random-number
                                  generation for dynamic-multithreading
                                  platforms  . . . . . . . . . . . . . . . 193--204
              Sadegh Nobari and   
             Thanh-Tung Cao and   
          Panagiotis Karras and   
        Stéphane Bressan   Scalable parallel minimum spanning
                                  forest computation . . . . . . . . . . . 205--214
                 Guodong Li and   
                    Peng Li and   
                Geof Sawaya and   
      Ganesh Gopalakrishnan and   
            Indradeep Ghosh and   
             Sreeranga P. Rajan   GKLEE: concolic verification and test
                                  generation for GPUs  . . . . . . . . . . 215--224
                    Peng Du and   
        Aurelien Bouteiller and   
             George Bosilca and   
             Thomas Herault and   
                  Jack Dongarra   Algorithm-based fault tolerance for
                                  dense matrix factorizations  . . . . . . 225--234
           Jeremy D. Buhler and   
              Kunal Agrawal and   
                    Peng Li and   
           Roger D. Chamberlain   Efficient deadlock avoidance for
                                  streaming computation with filtering . . 235--246
                 David Dice and   
        Virendra J. Marathe and   
                     Nir Shavit   Lock cohorting: a general technique for
                                  designing NUMA locks . . . . . . . . . . 247--256
         Panagiota Fatourou and   
         Nikolaos D. Kallimanis   Revisiting the combining synchronization
                                  technique  . . . . . . . . . . . . . . . 257--266
            Olivier Tardieu and   
              Haichuan Wang and   
                      Haibo Lin   A work-stealing scheduler for X10's task
                                  parallelism with suspension  . . . . . . 267--276
  Muthu Manikandan Baskaran and   
          Nicolas Vasilache and   
             Benoit Meister and   
                 Richard Lethin   Automatic communication optimizations
                                  through memory reuse strategies  . . . . 277--278
                     Gu Liu and   
                    Hong An and   
                Wenting Han and   
               Xiaoqiang Li and   
                    Tao Sun and   
                   Wei Zhou and   
                Xuechao Wei and   
                    Xulong Tang   FlexBFS: a parallelism-aware
                                  implementation of breadth-first search
                                  on GPU . . . . . . . . . . . . . . . . . 279--280
           Michael Andersch and   
              Chi Ching Chi and   
                   Ben Juurlink   Programming parallel embedded and
                                  consumer applications in OpenMP
                                  superscalar  . . . . . . . . . . . . . . 281--282
             Jianlong Zhong and   
                   Bingsheng He   An overview of Medusa: simplified graph
                                  processing on GPUs . . . . . . . . . . . 283--284
           Christophe Alias and   
                Alain Darte and   
               Alexandru Plesco   Optimizing remote accesses for offloaded
                                  kernels: application to high-level
                                  synthesis for FPGA . . . . . . . . . . . 285--286
                   Jian Tao and   
            Marek Blazewicz and   
               Steven R. Brandt   Using GPU's to accelerate stencil-based
                                  computation kernels for the development
                                  of large scale scientific applications
                                  on heterogeneous systems . . . . . . . . 287--288
               Bryan Marker and   
                Andy Terrel and   
               Jack Poulson and   
                 Don Batory and   
            Robert van de Geijn   Mechanizing the expert dense linear
                                  algebra developer  . . . . . . . . . . . 289--290
            Cedric Nugteren and   
                 Henk Corporaal   The boat hull model: adapting the
                                  roofline model to enable performance
                                  prediction for parallel computing  . . . 291--292
                   Min Feng and   
                Rajiv Gupta and   
                Laxmi N. Bhuyan   Speculative parallelization on GPGPUs    293--294
        Alexandra Jimborean and   
            Philippe Clauss and   
         Beno\^\it Pradelle and   
           Luis Mastrangelo and   
               Vincent Loechner   Adapting the polyhedral model as a
                                  framework for efficient speculative
                                  parallelization  . . . . . . . . . . . . 295--296
                 Yifan Gong and   
               Bingsheng He and   
                 Jianlong Zhong   An overview of CMPI: network performance
                                  aware MPI in the cloud . . . . . . . . . 297--298
                Jungwon Kim and   
                Sangmin Seo and   
                    Jun Lee and   
                Jeongho Nah and   
                 Gangwon Jo and   
                     Jaejin Lee   OpenCL as a unified programming model
                                  for heterogeneous CPU/GPU clusters . . . 299--300
            George Tzenakis and   
  Angelos Papatriantafyllou and   
             John Kesapides and   
        Polyvios Pratikakis and   
        Hans Vandierendonck and   
      Dimitrios S. Nikolopoulos   BDDT: block-level dynamic dependence
                                  analysis for deterministic task-based
                                  parallelism  . . . . . . . . . . . . . . 301--302
               Shoaib Kamil and   
            Derrick Coetzee and   
               Scott Beamer and   
                 Henry Cook and   
           Ekaterina Gonina and   
            Jonathan Harper and   
             Jeffrey Morlan and   
                    Armando Fox   Portable parallel performance from
                                  sequential, productive, embedded
                                  domain-specific languages  . . . . . . . 303--304
            Torsten Hoefler and   
                 Timo Schneider   Communication-centric optimizations by
                                  dynamically detecting collective
                                  operations . . . . . . . . . . . . . . . 305--306
              Donghui Zhang and   
           Per-Åke Larson   LHlf: lock-free linear hashing (poster
                                  paper) . . . . . . . . . . . . . . . . . 307--308
              Shahar Timnat and   
        Anastasia Braginsky and   
                 Alex Kogan and   
                   Erez Petrank   Wait-free linked-lists . . . . . . . . . 309--310
             Minh Ngoc Dinh and   
             David Abramson and   
                   Chao Jin and   
            Andrew Gontarek and   
                 Bob Moench and   
                    Luiz DeRose   Scalable parallel debugging with
                                  statistical assertions . . . . . . . . . 311--312
           Alexander Malkis and   
               Anindya Banerjee   Verification of software barriers  . . . 313--314
              Anshul Mittal and   
                Nikhil Jain and   
              Thomas George and   
           Yogish Sabharwal and   
                   Sameer Kumar   Collective algorithms for
                                  sub-communicators  . . . . . . . . . . . 315--316
            Joeri De Koster and   
                Stefan Marr and   
                   Theo D'Hondt   Synchronization views for event-loop
                                  actors . . . . . . . . . . . . . . . . . 317--318
            Zviad Metreveli and   
         Nickolai Zeldovich and   
              M. Frans Kaashoek   CPHASH: a cache-partitioned hash table   319--320
           John R. Wernsing and   
                     Greg Stitt   RACECAR: a heuristic for automatic
                                  function specialization on multi-core
                                  heterogeneous systems  . . . . . . . . . 321--322
                  Yujie Liu and   
                  Michael Spear   A lock-free, array-based priority queue  323--324
                Albert Noll and   
                Thomas R. Gross   An infrastructure for dynamic
                                  optimization of parallel programs  . . . 325--326
           Fredrik Kjolstad and   
            Torsten Hoefler and   
                      Marc Snir   Automatic datatype generation and
                                  optimization . . . . . . . . . . . . . . 327--328
               Jacob Burnim and   
               Tayfun Elmas and   
              George Necula and   
                    Koushik Sen   NDetermin: inferring nondeterministic
                                  sequential specifications for
                                  parallelism correctness  . . . . . . . . 329--330
             Chang-Seo Park and   
                    Koushik Sen   Concurrent breakpoints . . . . . . . . . 331--332
               Andrew Stone and   
                John Dennis and   
                Michelle Strout   Establishing a Miniapp as a
                                  programmability proxy  . . . . . . . . . 333--334
                  Lei Jiang and   
     Pragneshkumar B. Patel and   
          George Ostrouchov and   
             Ferdinand Jamitzky   OpenMP-style parallelism in
                                  data-centered multicore computing with R 335--336
                Yves Caniou and   
                Daniel Diaz and   
            Florian Richoux and   
          Philippe Codognet and   
                 Salvador Abreu   Performance analysis of parallel
                                  constraint-based local search  . . . . . 337--338

ACM SIG{}PLAN Notices
Volume 47, Number 9, September, 2012

                 Peter Thiemann   AGDA-curious?: an exploration of
                                  programming with dependent types . . . . 1--2
             Gordon Stewart and   
           Lennart Beringer and   
                Andrew W. Appel   Verified heap theorem prover by
                                  paramodulation . . . . . . . . . . . . . 3--14
                  Brian Huffman   Formal verification of monad
                                  transformers . . . . . . . . . . . . . . 15--16
                Joshua Dunfield   Elaborating intersection and union types 17--28
                 Sheng Chen and   
               Martin Erwig and   
               Eric Walkingshaw   An error-tolerant type system for
                                  variational lambda calculus  . . . . . . 29--40
Neelakantan R. Krishnaswami and   
                Aaron Turon and   
               Derek Dreyer and   
                    Deepak Garg   Superficially substructural types  . . . 41--54
                  Neil Mitchell   Shake before building: replacing make
                                  with Haskell . . . . . . . . . . . . . . 55--66
                    Olaf Chitil   Practical typed lazy contracts . . . . . 67--76
      Bruno C.d.S. Oliveira and   
                William R. Cook   Functional programming with structured
                                  graphs . . . . . . . . . . . . . . . . . 77--88
              Timothy E. Sheard   Painless programming combining reduction
                                  and search: design principles for
                                  embedding decision procedures in
                                  high-level languages . . . . . . . . . . 89--102
     Pierre-Evariste Dagand and   
                  Conor McBride   Transporting functions across ornaments  103--114
           Magnus O. Myreen and   
                    Scott Owens   Proof-producing synthesis of ML from
                                  higher-order logic . . . . . . . . . . . 115--126
         Nils Anders Danielsson   Operational semantics using the
                                  partiality monad . . . . . . . . . . . . 127--138
                 Kunle Olukotun   High performance embedded domain
                                  specific languages . . . . . . . . . . . 139--140
            Paula G. Severi and   
            Fer-Jan J. de Vries   Pure type systems with corecursion on
                                  streams: from finite to infinitary
                                  normalisation  . . . . . . . . . . . . . 141--152
        Jörg Endrullis and   
           Dimitri Hendriks and   
                   Rena Bakhshi   On the complexity of equivalence of
                                  specifications of infinite objects . . . 153--164
         Hugo Simões and   
          Pedro Vasconcelos and   
       Mário Florido and   
               Steffen Jost and   
                  Kevin Hammond   Automatic amortised analysis of dynamic
                                  memory allocation for lazy functional
                                  programs . . . . . . . . . . . . . . . . 165--176
           Christopher Earl and   
                Ilya Sergey and   
              Matthew Might and   
                 David Van Horn   Introspective pushdown analysis of
                                  higher-order programs  . . . . . . . . . 177--188
            John Launchbury and   
          Iavor S. Diatchki and   
           Thomas DuBuisson and   
               Andy Adams-Moran   Efficient lookup-table protocol in
                                  secure multiparty computation  . . . . . 189--200
               Deian Stefan and   
            Alejandro Russo and   
               Pablo Buiras and   
                  Amit Levy and   
           John C. Mitchell and   
          David Maziéres   Addressing covert termination and timing
                                  channels in concurrent information flow
                                  systems  . . . . . . . . . . . . . . . . 201--214
Christian Höner zu Siederdissen   Sneaking around concatMap: efficient
                                  combinators for dynamic programming  . . 215--226
            Noah M. Daniels and   
             Andrew Gallant and   
                  Norman Ramsey   Experience report: Haskell in
                                  computational biology  . . . . . . . . . 227--234
               Adam Foltzer and   
          Abhishek Kulkarni and   
             Rebecca Swords and   
          Sajith Sasidharan and   
                 Eric Jiang and   
                    Ryan Newton   A meta-scheduler for the par-monad:
                                  composable scheduling for the
                                  heterogeneous cloud  . . . . . . . . . . 235--246
             Lars Bergstrom and   
                     John Reppy   Nested data-parallelism on the GPU . . . 247--258
              Ben Lippmeier and   
   Manuel M. T. Chakravarty and   
            Gabriele Keller and   
         Roman Leshchinskiy and   
             Simon Peyton Jones   Work efficient higher-order
                                  vectorisation  . . . . . . . . . . . . . 259--270
                   Peter Sewell   Tales from the jungle  . . . . . . . . . 271--272
                  Philip Wadler   Propositions as sessions . . . . . . . . 273--286
      Grégoire Henry and   
               Michel Mauny and   
         Emmanuel Chailloux and   
                 Pascal Manoury   Typing unmarshalling without marshalling
                                  types  . . . . . . . . . . . . . . . . . 287--298
                 Will Jones and   
                 Tony Field and   
                Tristan Allwood   Deconstraining DSLs  . . . . . . . . . . 299--310
              Geoffrey Mainland   Explicitly heterogeneous metaprogramming
                                  with MetaHaskell . . . . . . . . . . . . 311--322
                  Emil Axelsson   A generic abstract syntax model for
                                  embedded languages . . . . . . . . . . . 323--334
                   Lee Pike and   
                Nis Wegmann and   
           Sebastian Niller and   
                  Alwyn Goodloe   Experience report: a do-it-yourself
                                  high-assurance compiler  . . . . . . . . 335--340
       Dimitrios Vytiniotis and   
         Simon Peyton Jones and   
José Pedro Magalhães   Equality proofs and deferred type
                                  errors: a compiler pearl . . . . . . . . 341--352
        Robin P. Neatherway and   
           Steven J. Ramsay and   
              Chih-Hao Luke Ong   A traversal-based algorithm for
                                  higher-order model checking  . . . . . . 353--364
                Roly Perera and   
               Umut A. Acar and   
               James Cheney and   
                Paul Blain Levy   Functional programs that explain their
                                  work . . . . . . . . . . . . . . . . . . 365--376

ACM SIG{}PLAN Notices
Volume 47, Number 10, October, 2012

              Kohei Suenaga and   
               Ryota Fukuda and   
               Atsushi Igarashi   Type-based safe resource deallocation
                                  for shared-memory concurrency  . . . . . 1--20
            Colin S. Gordon and   
       Matthew J. Parkinson and   
              Jared Parsons and   
            Aleks Bromfield and   
                      Joe Duffy   Uniqueness and reference immutability
                                  for safe parallelism . . . . . . . . . . 21--40
           Jaswanth Sreeram and   
                  Santosh Pande   Safe compiler-driven transaction
                                  checkpointing and recovery . . . . . . . 41--56
              Stefan Muller and   
                  Stephen Chong   Towards a practical secure concurrent
                                  language . . . . . . . . . . . . . . . . 57--74
       Pavel Parízek and   
           OndYej Lhoták   Predicate abstraction of Java programs
                                  with collections . . . . . . . . . . . . 75--94
           Todd W. Schiller and   
               Michael D. Ernst   Reducing the barriers to writing
                                  verified specifications  . . . . . . . . 95--112
                 Adam Betts and   
               Nathan Chong and   
         Alastair Donaldson and   
                Shaz Qadeer and   
                   Paul Thomson   GPUVerify: a verifier for GPU kernels    113--132
          Francesco Logozzo and   
                    Thomas Ball   Modular and verified automatic program
                                  repair . . . . . . . . . . . . . . . . . 133--146
            Sameer Kulkarni and   
                   John Cavazos   Mitigating the compiler optimization
                                  phase-ordering problem using machine
                                  learning . . . . . . . . . . . . . . . . 147--162
           Vincent St-Amour and   
        Sam Tobin-Hochstadt and   
             Matthias Felleisen   Optimization coaching: optimizers learn
                                  to communicate with programmers  . . . . 163--178
              Hiroshi Inoue and   
      Hiroshige Hayashizaki and   
                    Peng Wu and   
                Toshio Nakatani   Adaptive multi-level compilation in a
                                  trace-based Java JIT compiler  . . . . . 179--194
              Jose Castanos and   
             David Edelsohn and   
           Kazuaki Ishizaki and   
            Priya Nagpurkar and   
            Toshio Nakatani and   
          Takeshi Ogasawara and   
                        Peng Wu   On the benefits and pitfalls of
                                  extending a statically typed language
                                  JIT compiler for dynamic scripting
                                  languages  . . . . . . . . . . . . . . . 195--212
          Patrick M. Cousot and   
              Radhia Cousot and   
          Francesco Logozzo and   
                Michael Barnett   An abstract interpretation framework for
                                  refactoring with application to extract
                                  methods with contracts . . . . . . . . . 213--232
                 Ying Zhang and   
                 Gang Huang and   
                Xuanzhe Liu and   
                  Wei Zhang and   
                   Hong Mei and   
                 Shunxiang Yang   Refactoring Android Java code for
                                  on-demand computation offloading . . . . 233--248
      Christopher M. Hayden and   
            Edward K. Smith and   
            Michail Denchev and   
              Michael Hicks and   
              Jeffrey S. Foster   Kitsune: efficient, general-purpose
                                  dynamic software updating for C  . . . . 249--264
             Stephen Magill and   
              Michael Hicks and   
         Suriya Subramanian and   
            Kathryn S. McKinley   Automating object transformations for
                                  dynamic software updating  . . . . . . . 265--280
          Jennfer B. Sartor and   
                Lieven Eeckhout   Exploring multi-threaded Java
                                  application performance on multicore
                                  hardware . . . . . . . . . . . . . . . . 281--296
                Vivek Kumar and   
            Daniel Frampton and   
       Stephen M. Blackburn and   
                David Grove and   
                Olivier Tardieu   Work-stealing without the baggage  . . . 297--314
      Sébastien Bocq and   
                    Koen Daenen   Molecule: using monadic and streaming
                                  I/O to compose process networks on the
                                  JVM  . . . . . . . . . . . . . . . . . . 315--334
             Tomas Kalibera and   
               Matthew Mole and   
              Richard Jones and   
                      Jan Vitek   A black-box approach to understanding
                                  concurrency in DaCapo  . . . . . . . . . 335--354
               Youngjoon Jo and   
                Milind Kulkarni   Automatically enhancing locality for
                                  tree traversals with traversal splicing  355--374
        Dimitrios Prountzos and   
             Roman Manevich and   
                 Keshav Pingali   Elixir: a system for synthesizing
                                  concurrent graph programs  . . . . . . . 375--394
             Yanhong A. Liu and   
           Scott D. Stoller and   
                     Bo Lin and   
            Michael Gorbovitski   From clarity to efficiency for
                                  distributed algorithms . . . . . . . . . 395--410
         K. Rustan M. Leino and   
           Aleksandar Milicevic   Program extrapolation with Jennisys  . . 411--430
              Michael Kling and   
            Sasa Misailovic and   
             Michael Carbin and   
                  Martin Rinard   Bolt: on-demand infinite loop escape in
                                  unmodified binaries  . . . . . . . . . . 431--450
                 Jeff Huang and   
                  Charles Zhang   LEAN: simplifying concurrency bug
                                  reproduction via replay-supported
                                  execution reduction  . . . . . . . . . . 451--466
        Laura Effinger-Dean and   
              Brandon Lucia and   
                  Luis Ceze and   
               Dan Grossman and   
                  Hans-J. Boehm   IFRit: interference-free regions for
                                  dynamic data-race detection  . . . . . . 467--484
                     Jie Yu and   
        Satish Narayanasamy and   
          Cristiano Pereira and   
                   Gilles Pokam   Maple: a coverage-driven testing tool
                                  for multithreaded programs . . . . . . . 485--502
         Anton Willy Dubrau and   
            Laurie Jane Hendren   Taming MATLAB  . . . . . . . . . . . . . 503--522
     Junaid Haroon Siddiqui and   
               Sarfraz Khurshid   Scaling symbolic execution using ranged
                                  analysis . . . . . . . . . . . . . . . . 523--536
        Sam Tobin-Hochstadt and   
                David Van Horno   Higher-order symbolic execution via
                                  contracts  . . . . . . . . . . . . . . . 537--554
               Grigore Rosu and   
              Andrei Stefanescu   Checking reachability using matching
                                  logic  . . . . . . . . . . . . . . . . . 555--574
               Haiping Zhao and   
               Iain Proctor and   
               Minghui Yang and   
                     Xin Qi and   
              Mark Williams and   
                     Qi Gao and   
           Guilherme Ottoni and   
             Andrew Paroski and   
             Scott MacVicar and   
                Jason Evans and   
                     Stephen Tu   The HipHop compiler for PHP  . . . . . . 575--586
                 Ravi Chugh and   
               David Herman and   
                   Ranjit Jhala   Dependent types for JavaScript . . . . . 587--606
                Fadi Meawad and   
            Gregor Richards and   
    Floréal Morandat and   
                      Jan Vitek   Eval begone!: semi-automated removal of
                                  \tt eval from JavaScript programs  . . . 607--620
             Seonghoon Kang and   
                   Sukyoung Ryu   Formal specification of a JavaScript
                                  module system  . . . . . . . . . . . . . 621--638
           Daniel W. Barowy and   
         Charlie Curtsinger and   
            Emery D. Berger and   
                Andrew McGregor   AutoMan: a platform for integrating
                                  human-based and digital computation  . . 639--654
             Subhajit Datta and   
          Renuka Sindhgatta and   
                Bikram Sengupta   Talk versus work: characteristics of
                                  developer collaboration on the Jazz
                                  platform . . . . . . . . . . . . . . . . 655--668
  Kivanç Muûlu and   
                 Yuriy Brun and   
                Reid Holmes and   
           Michael D. Ernst and   
                   David Notkin   Speculative analysis of integrated
                                  development environment recommendations  669--682
              Clemens Mayer and   
           Stefan Hanenberg and   
              Romain Robbes and   
         Éric Tanter and   
                 Andreas Stefik   An empirical study of the influence of
                                  static type systems on the usability of
                                  undocumented software  . . . . . . . . . 683--702
             Hung-Wei Tseng and   
           Dean Michael Tullsen   Software data-triggered threads  . . . . 703--716
               Zachary Anderson   Efficiently combining parallel software
                                  using fine-grained, language-level,
                                  hierarchical resource management
                                  policies . . . . . . . . . . . . . . . . 717--736
                 Jeff Huang and   
                  Charles Zhang   Execution privatization for
                                  scheduler-oblivious concurrent programs  737--752
              Shams M. Imam and   
                   Vivek Sarkar   Integrating task parallelism with actors 753--772
     Christian Kästner and   
            Klaus Ostermann and   
               Sebastian Erdweg   A variability-aware module system  . . . 773--792
             Asumu Takikawa and   
      T. Stephen Strickland and   
          Christos Dimoulas and   
        Sam Tobin-Hochstadt and   
             Matthias Felleisen   Gradual typing for first-class classes   793--810
            Olivier Tardieu and   
          Nathaniel Nystrom and   
             Igor Peshansky and   
                 Vijay Saraswat   Constrained kinds  . . . . . . . . . . . 811--830
              Michael Cohen and   
           Haitao Steve Zhu and   
           Emgin Ezgi Senem and   
                   Yu David Liu   Energy types . . . . . . . . . . . . . . 831--850
                      Bo Wu and   
                Zhijia Zhao and   
                Xipeng Shen and   
              Yunlian Jiang and   
                Yaoqing Gao and   
                   Raul Silvera   Exploiting inter-sequence correlations
                                  for program behavior prediction  . . . . 851--866
           Giorgio Ausiello and   
           Camil Demetrescu and   
             Irene Finocchi and   
              Donatella Firmani   $k$-Calling context profiling  . . . . . 867--878
                  Wei Huang and   
               Ana Milanova and   
               Werner Dietl and   
               Michael D. Ernst   Reim & ReImInfer: checking and inference
                                  of reference immutability and method
                                  purity . . . . . . . . . . . . . . . . . 879--896
                    Tao Bao and   
               Yunhui Zheng and   
                  Xiangyu Zhang   White box sampling in uncertain data
                                  processing enabled by program analysis   897--914
              Charles Lucas and   
           Sebastian Elbaum and   
             David S. Rosenblum   Detecting problematic message sequences
                                  and frequencies in distributed systems   915--926
               Zhongxian Gu and   
               Earl T. Barr and   
               Drew Schleck and   
                    Zhendong Su   Reusing debugging knowledge via
                                  trace-based bug search . . . . . . . . . 927--942
      T. Stephen Strickland and   
        Sam Tobin-Hochstadt and   
       Robert Bruce Findler and   
                  Matthew Flatt   Chaperones and impersonators: run-time
                                  support for reasonable interposition . . 943--962
             Yuriy Solodkyy and   
           Gabriel Dos Reis and   
              Bjarne Stroustrup   Open and efficient type switch for C++   963--982
             Juan M. Tamayo and   
                 Alex Aiken and   
             Nathan Bronson and   
                    Mooly Sagiv   Understanding the behavior of database
                                  operations under program control . . . . 983--996
                Alon Mishne and   
              Sharon Shoham and   
                     Eran Yahav   Typestate-based semantic code search
                                  over partial programs  . . . . . . . . . 997--1016
                     Guoqing Xu   Finding reusable data structures . . . . 1017--1034

ACM SIG{}PLAN Notices
Volume 47, Number 11, November, 2012

              Robert O'Callahan   Why is your Web browser using so much
                                  memory?  . . . . . . . . . . . . . . . . 1--2
                   Jin Zhou and   
                   Brian Demsky   Memory management for many-core
                                  processors with software configurable
                                  locality policies  . . . . . . . . . . . 3--14
             Spyros Lyberis and   
        Polyvios Pratikakis and   
  Dimitrios S. Nikolopoulos and   
              Martin Schulz and   
               Todd Gamblin and   
          Bronis R. de Supinski   The Myrmics memory allocator:
                                  hierarchical, message-passing allocation
                                  for global address spaces  . . . . . . . 15--24
                Martin Maas and   
              Philip Reames and   
             Jeffrey Morlan and   
           Krste Asanovi\'c and   
          Anthony D. Joseph and   
               John Kubiatowicz   GPUs as an opportunity for offloading
                                  garbage collection . . . . . . . . . . . 25--36
                    Xi Yang and   
       Stephen M. Blackburn and   
            Daniel Frampton and   
              Antony L. Hosking   Barriers reconsidered, friendlier still! 37--48
        KC Sivaramakrishnan and   
              Lukasz Ziarek and   
             Suresh Jagannathan   Eliminating read barriers through
                                  procrastination and cleanliness  . . . . 49--60
             Balaji Iyengar and   
           Edward Gehringer and   
               Michael Wolf and   
         Karthikeyan Manivannan   Scalable concurrent and parallel mark    61--72
            Rifat Shahriyar and   
       Stephen M. Blackburn and   
                Daniel Frampton   Down for the count? Getting reference
                                  counting back in the ring  . . . . . . . 73--84
             Balaji Iyengar and   
                   Gil Tene and   
               Michael Wolf and   
               Edward Gehringer   The Collie: a wait-free compacting
                                  collector  . . . . . . . . . . . . . . . 85--96
               Andreas Sewe and   
                Mira Mezini and   
           Aibek Sarimbekov and   
            Danilo Ansaloni and   
              Walter Binder and   
               Nathan Ricci and   
                Samuel Z. Guyer   \tt New Scala() instanceof Java: a
                                  comparison of the memory behaviour of
                                  Java and Scala programs  . . . . . . . . 97--108
                Xiaoming Gu and   
                      Chen Ding   A generalized theory of collaborative
                                  caching  . . . . . . . . . . . . . . . . 109--120
                   Rupesh Nasre   Exploiting the structure of the
                                  constraint graph for efficient points-to
                                  analysis . . . . . . . . . . . . . . . . 121--132
              Hiroshi Inoue and   
                Toshio Nakatani   Identifying the sources of cache misses
                                  in Java programs without relying on
                                  hardware counters  . . . . . . . . . . . 133--142

ACM SIG{}PLAN Notices
Volume 47, Number 12, December, 2012

              Andrew Farmer and   
                  Andy Gill and   
                    Ed Komp and   
                Neil Sculthorpe   The HERMIT in the machine: a plugin for
                                  the interactive transformation of GHC
                                  core language programs . . . . . . . . . 1--12
           Michael D. Adams and   
            Thomas M. DuBuisson   Template your boilerplate: using
                                  Template Haskell for efficient generic
                                  programming  . . . . . . . . . . . . . . 13--24
              Ben Lippmeier and   
         Manuel Chakravarty and   
            Gabriele Keller and   
             Simon Peyton Jones   Guiding parallel array fusion with
                                  indexed types  . . . . . . . . . . . . . 25--36
            Gabriele Keller and   
   Manuel M. T. Chakravarty and   
         Roman Leshchinskiy and   
              Ben Lippmeier and   
             Simon Peyton Jones   Vectorisation avoidance  . . . . . . . . 37--48
              Johan Jeuring and   
             Patrik Jansson and   
          Cláudio Amaral   Testing type class laws  . . . . . . . . 49--60
       Jonas Duregård and   
             Patrik Jansson and   
                      Meng Wang   Feat: functional enumeration of
                                  algebraic types  . . . . . . . . . . . . 61--72
                  Koen Claessen   Shrinking and showing functions:
                                  (functional pearl) . . . . . . . . . . . 73--80
                Wyatt Allen and   
                   Martin Erwig   Surveyor: a DSEL for representing and
                                  analyzing strongly typed surveys . . . . 81--90
       Daniel Winograd-Cort and   
                     Paul Hudak   Wormholes: introducing effects to FRP    91--104
                Brent A. Yorgey   Monoids: theme and variations
                                  (functional pearl) . . . . . . . . . . . 105--116
       Richard A. Eisenberg and   
              Stephanie Weirich   Dependently typed programming with
                                  singletons . . . . . . . . . . . . . . . 117--130
               Wouter Swierstra   \tt xmonad in Coq (experience report):
                                  programming a window manager in a proof
                                  assistant  . . . . . . . . . . . . . . . 131--136
                David Terei and   
               Simon Marlow and   
         Simon Peyton Jones and   
               David Mazi\`eres   Safe Haskell . . . . . . . . . . . . . . 137--148
           Sebastian Erdweg and   
               Felix Rieger and   
            Tillmann Rendel and   
                Klaus Ostermann   Layout-sensitive language extensibility
                                  with SugarHaskell  . . . . . . . . . . . 149--160


ACM SIG{}PLAN Notices
Volume 48, Number 1, January, 2013

                  Radhia Cousot   Engineering mathematics: the odd order
                                  theorem proof  . . . . . . . . . . . . . 1--2
         Steffen Lösch and   
                Andrew M. Pitts   Full abstraction for nominal Scott
                                  domains  . . . . . . . . . . . . . . . . 3--14
                      Ross Tate   The sequential semantics of producer
                                  effect systems . . . . . . . . . . . . . 15--26
               Andreas Abel and   
           Brigitte Pientka and   
            David Thibodeau and   
                   Anton Setzer   Copatterns: programming infinite
                                  structures by observations . . . . . . . 27--38
            Guy E. Blelloch and   
                  Robert Harber   Cache and I/O efficient functional
                                  algorithms . . . . . . . . . . . . . . . 39--50
          Amir M. Ben-Amram and   
                   Samir Genaim   On the linear ranking problem for
                                  integer linear-constraint loops  . . . . 51--62
               Richard Mayr and   
               Lorenzo Clemente   Advanced automata minimization . . . . . 63--74
               Hiroshi Unno and   
            Tachio Terauchi and   
                Naoki Kobayashi   Automating relatively complete
                                  verification of higher-order functional
                                  programs . . . . . . . . . . . . . . . . 75--86
               Robert Atkey and   
            Patricia Johann and   
                 Andrew Kennedy   Abstraction and invariance for
                                  algebraically indexed types  . . . . . . 87--100
  Véronique Benzaken and   
          Giuseppe Castagna and   
                 Kim Nguyen and   
Jérôme Siméon   Static and dynamic semantics of NoSQL
                                  languages  . . . . . . . . . . . . . . . 101--114
                Pavol Cerny and   
        Thomas A. Henzinger and   
             Arjun Radhakrishna   Quantitative abstraction refinement  . . 115--128
              Azadeh Farzan and   
            Zachary Kincaid and   
               Andreas Podelski   Inductive data flow graphs . . . . . . . 129--142
              Vijay D'Silva and   
             Leopold Haller and   
                Daniel Kroening   Abstract conflict driven learning  . . . 143--154
                   Alexis Goyet   The Lambda Lambda-Bar calculus: a dual
                                  calculus for unconstrained strategies    155--166
               Ugo Dal lago and   
                  Barbara Petit   The geometry of types  . . . . . . . . . 167--178
                 Sam Staton and   
                Paul Blain Levy   Universal properties of impure
                                  programming languages  . . . . . . . . . 179--192
              Chung-Kil Hur and   
                 Georg Neis and   
               Derek Dreyer and   
               Viktor Vafeiadis   The power of parameterization in
                                  coinductive proof  . . . . . . . . . . . 193--206
          Benjamin Delaware and   
    Bruno C. d. S. Oliveira and   
                 Tom Schrijvers   Meta-theory \`a la carte . . . . . . . . 207--218
              Jonghyun Park and   
              Jeongbong Seo and   
                   Sungwoo Park   A theorem prover for Boolean BI  . . . . 219--232
          Shriram Krishnamurthi   From principles to programming languages
                                  (and back) . . . . . . . . . . . . . . . 233--234
                 Mark Batty and   
                 Mike Dodds and   
                 Alexey Gotsman   Library abstraction for C/C++
                                  concurrency  . . . . . . . . . . . . . . 235--248
         Ganesan Ramalingam and   
                  Kapil Vaswani   Fault tolerance via idempotence  . . . . 249--262
              Marco Carbone and   
               Fabrizio Montesi   Deadlock-freedom-by-design: multiparty
                                  asynchronous global programming  . . . . 263--274
         Luís Caires and   
            João C. Seco   The type discipline of behavioral
                                  separation . . . . . . . . . . . . . . . 275--286
      Thomas Dinsdale-Young and   
              Lars Birkedal and   
           Philippa Gardner and   
          Matthew Parkinson and   
                  Hongseok Yang   Views: compositional reasoning for
                                  concurrent programs  . . . . . . . . . . 287--300
            Jonas B. Jensen and   
                Nick Benton and   
                 Andrew Kennedy   High-level separation logic for
                                  low-level code . . . . . . . . . . . . . 301--314
                Andrew C. Myers   How languages can save distributed
                                  computing  . . . . . . . . . . . . . . . 315--316
        Thomas A. Henzinger and   
        Christoph M. Kirsch and   
               Hannes Payer and   
                 Ali Sezgin and   
                   Ana Sokolova   Quantitative relaxation of concurrent
                                  data structures  . . . . . . . . . . . . 317--328
           Delphine Demange and   
            Vincent Laporte and   
                   Lei Zhao and   
         Suresh Jagannathan and   
            David Pichardie and   
                      Jan Vitek   Plan B: a buffered memory model for Java 329--342
             Aaron J. Turon and   
            Jacob Thamsborg and   
                 Amal Ahmed and   
              Lars Birkedal and   
                   Derek Dreyer   Logical relations for fine-grained
                                  concurrency  . . . . . . . . . . . . . . 343--356
             Marco Gaboardi and   
          Andreas Haeberlen and   
                 Justin Hsu and   
              Arjun Narayan and   
             Benjamin C. Pierce   Linear dependent types for differential
                                  privacy  . . . . . . . . . . . . . . . . 357--370
             Cedric Fournet and   
               Nikhil Swamy and   
                  Juan Chen and   
     Pierre-Evariste Dagand and   
          Pierre-Yves Strub and   
              Benjamin Livshits   Fully abstract compilation to JavaScript 371--384
          Benjamin Livshits and   
                  Stephen Chong   Towards fully automatic placement of
                                  security sanitizers and declassifiers    385--398
                Noah D. Goodman   The principles and practice of
                                  probabilistic programming  . . . . . . . 399--402
           Andrew D. Gordon and   
          Mihhail Aizatulin and   
         Johannes Borgstrom and   
           Guillaume Claret and   
              Thore Graepel and   
             Aditya V. Nori and   
         Sriram K. Rajamani and   
                  Claudio Russo   A model-learner pattern for Bayesian
                                  reasoning  . . . . . . . . . . . . . . . 403--416
              Kohei Suenaga and   
           Hiroyoshi Sekine and   
                   Ichiro Hasuo   Hyperstream processing systems:
                                  nonstandard modeling of continuous-time
                                  signals  . . . . . . . . . . . . . . . . 417--430
       Dimitrios Vytiniotis and   
         Simon Peyton Jones and   
              Koen Claessen and   
               Dan Rosén   HALO: Haskell to logic through
                                  denotational semantics . . . . . . . . . 431--442
             Matko Botincan and   
                Domagoj Babi\'c   Sigma*: symbolic learning of
                                  input-output specifications  . . . . . . 443--456
             Filippo Bonchi and   
                    Damien Pous   Checking NFA equivalence with
                                  bisimulations up to congruence . . . . . 457--468
           Ali Sinan Koksal and   
                   Yewen Pu and   
         Saurabh Srivastava and   
            Rastislav Bodik and   
              Jasmin Fisher and   
                   Nir Piterman   Synthesis of biological models from
                                  mutation experiments . . . . . . . . . . 469--482
      Ramakrishna Upadrasta and   
                   Albert Cohen   Sub-polyhedral scheduling using
                                  (unit-)two-variable-per-inequality
                                  polyhedra  . . . . . . . . . . . . . . . 483--496
                Tiark Rompf and   
          Arvind K. Sujeeth and   
                  Nada Amin and   
             Kevin J. Brown and   
            Vojin Jovanovic and   
             HyoukJoong Lee and   
       Manohar Jonnalagedda and   
             Kunle Olukotun and   
                 Martin Odersky   Optimizing data structures in high-level
                                  programs: new directions for extensible
                                  compilers based on staging . . . . . . . 497--510
               Michael D. Adams   Principled parsing for
                                  indentation-sensitive languages:
                                  revisiting Landin's offside rule . . . . 511--522
              Aquinas Hobor and   
                  Jules Villard   The ramifications of sharing in data
                                  structures . . . . . . . . . . . . . . . 523--536
              Nishant Totla and   
                    Thomas Wies   Complete instantiation-based
                                  interpolation  . . . . . . . . . . . . . 537--548
               Earl T. Barr and   
                   Thanh Vo and   
                      Vu Le and   
                    Zhendong Su   Automatic detection of floating-point
                                  exceptions . . . . . . . . . . . . . . . 549--560
               Ruy Ley-Wild and   
            Aleksandar Nanevski   Subjective auxiliary state for
                                  coarse-grained concurrency . . . . . . . 561--574

ACM SIG{}PLAN Notices
Volume 48, Number 2, February, 2013

                    Mark Miller   A tested semantics for getters, setters,
                                  and eval in JavaScript . . . . . . . . . 1--16
              Michael Homer and   
                James Noble and   
               Kim B. Bruce and   
            Andrew P. Black and   
                David J. Pearce   Patterns as objects in Grace . . . . . . 17--28
                 Bard Bloom and   
               Martin J. Hirzel   Robust scripting via patterns  . . . . . 29--40
        Kurt Nòrmark and   
          Lone Leth Thomsen and   
                   Bent Thomsen   Object-oriented programming with gradual
                                  abstraction  . . . . . . . . . . . . . . 41--52
        Alessandro Pignotti and   
                  Adam Welc and   
                 Bernd Mathiske   Adaptive data parallelism for Internet
                                  clients on heterogeneous platforms . . . 53--62
      Håkan Ardö and   
        Carl Friedrich Bolz and   
            Maciej Fija\lkowski   Loop-aware optimizations in PyPy's
                                  tracing JIT  . . . . . . . . . . . . . . 63--72
     Thomas Würthinger and   
     Andreas Wöß and   
              Lukas Stadler and   
             Gilles Duboscq and   
                 Doug Simon and   
               Christian Wimmer   Self-optimizing AST interpreters . . . . 73--82
              Erwann Wernli and   
              Pascal Maerki and   
               Oscar Nierstrasz   Ownership, filters and crossing
                                  handlers: flexible ownership in dynamic
                                  languages  . . . . . . . . . . . . . . . 83--94
         Benjamin S. Lerner and   
                   Dan Grossman   Detecting conflicts among declarative UI
                                  extensions . . . . . . . . . . . . . . . 95--106
           Bastian Steinert and   
              Damien Cassou and   
              Robert Hirschfeld   CoExist: overcoming aversion to change   107--118

ACM SIG{}PLAN Notices
Volume 48, Number 3, March, 2013

          Ferruccio Damiani and   
              Luca Padovani and   
                   Ina Schaefer   A formal foundation for dynamic
                                  delta-oriented software product lines    1--10
           Thomas Thüm and   
               Ina Schaefer and   
                  Sven Apel and   
               Martin Hentschel   Family-based deductive verification of
                                  software product lines . . . . . . . . . 11--20
                 Uwe Ryssel and   
            Joern Ploennigs and   
                Klaus Kabitzsch   Reasoning of feature models from derived
                                  features . . . . . . . . . . . . . . . . 21--30
              Derek Rayside and   
      Vajihollah Montaghami and   
            Francesca Leung and   
                Albert Yuen and   
                   Kevin Xu and   
                 Daniel Jackson   Synthesizing iterators from abstraction
                                  functions  . . . . . . . . . . . . . . . 31--40
        Geoffrey C. Hulette and   
            Matthew Sottile and   
                Allen D. Malony   Composing typemaps in Twig . . . . . . . 41--49
          Eyvind W. Axelsen and   
                 Stein Krogdahl   Package Templates: a definition by
                                  semantics-preserving source-to-source
                                  transformations to efficient Java code   50--59
                Petr Spacek and   
            Christophe Dony and   
         Chouki Tibermacine and   
                   Luc Fabresse   An inheritance system for structural &
                                  behavioral reuse in component-based
                                  software programming . . . . . . . . . . 60--69
        Huaxi (Yulin) Zhang and   
                  Lei Zhang and   
          Christelle Urtado and   
           Sylvain Vauttier and   
               Marianne Huchard   A three-level component model in
                                  component based software development . . 70--79
               John Freeman and   
          Jaakko Järvi and   
                  Gabriel Foust   HotDrink: a library for Web user
                                  interfaces . . . . . . . . . . . . . . . 80--83
         T. L. Riché and   
        R. Gonçalves and   
                  B. Marker and   
                      D. Batory   Pushouts in software architecture design 84--92
              Hamid Bagheri and   
                 Kevin Sullivan   Pol: specification-driven synthesis of
                                  architectural code frameworks for
                                  platform-based applications  . . . . . . 93--102
                  Tim Bauer and   
               Martin Erwig and   
                  Alan Fern and   
                   Jervis Pinto   Faster program adaptation through reward
                                  attribution inference  . . . . . . . . . 103--111
              Sven Efftinge and   
            Moritz Eysholdt and   
          Jan Köhnlein and   
         Sebastian Zarnekow and   
          Robert von Massow and   
        Wilhelm Hasselbring and   
                  Michael Hanus   Xbase: implementing domain-specific
                                  languages for Java . . . . . . . . . . . 112--121
                Jon Rafkind and   
                  Matthew Flatt   Honu: syntactic extension for algebraic
                                  notation through enforestation . . . . . 122--131
           Eric Walkingshaw and   
                   Martin Erwig   A calculus for modeling and implementing
                                  variation  . . . . . . . . . . . . . . . 132--140

ACM SIG{}PLAN Notices
Volume 48, Number 4, April, 2013

                   Michael Bond   GPUDet: a deterministic GPU architecture 1--12
                Hyojin Sung and   
         Rakesh Komuravelli and   
                 Sarita V. Adve   DeNovoND: efficient hardware support for
                                  disciplined non-determinism  . . . . . . 13--26
            Benjamin Wester and   
            David Devecsery and   
              Peter M. Chen and   
                Jason Flinn and   
            Satish Narayanasamy   Parallelizing data race detection  . . . 27--38
              Brandon Lucia and   
                      Luis Ceze   Cooperative empirical failure avoidance
                                  for multithreaded programs . . . . . . . 39--50
  Íñigo Goiri and   
             William Katsak and   
                    Kien Le and   
              Thu D. Nguyen and   
              Ricardo Bianchini   Parasol and GreenSwitch: managing
                                  datacenters powered by renewable energy  51--64
                   Kai Shen and   
         Arrvindh Shriraman and   
          Sandhya Dwarkadas and   
                 Xiao Zhang and   
                     Zhuan Chen   Power containers: an OS facility for
                                  fine-grained power and energy management
                                  on multicore servers . . . . . . . . . . 65--76
       Christina Delimitrou and   
             Christos Kozyrakis   Paragon: QoS-aware scheduling for
                                  heterogeneous datacenters  . . . . . . . 77--88
               Lingjia Tang and   
                 Jason Mars and   
                   Wei Wang and   
                 Tanima Dey and   
                 Mary Lou Soffa   ReQoS: reactive static/dynamic
                                  compilation for QoS in warehouse scale
                                  computers  . . . . . . . . . . . . . . . 89--100
                Joy Arulraj and   
              Po-Chun Chang and   
               Guoliang Jin and   
                        Shan Lu   Production-run software failure
                                  diagnosis via hardware performance
                                  counters . . . . . . . . . . . . . . . . 101--112
                  Wei Zhang and   
             Marc de Kruijf and   
                     Ang Li and   
                    Shan Lu and   
      Karthikeyan Sankaralingam   ConAir: featherweight concurrency bug
                                  recovery via single-threaded idempotent
                                  execution  . . . . . . . . . . . . . . . 113--126
            Nicolas Viennot and   
             Siddharth Nair and   
                     Jason Nieh   Transparent mutable replay for multicore
                                  debugging and patch validation . . . . . 127--138
         Swarup Kumar Sahoo and   
              John Criswell and   
               Chase Geigle and   
                    Vikram Adve   Using likely invariants for automated
                                  software fault localization  . . . . . . 139--152
                    Eric Paulos   The rise of the expert amateur: DIY
                                  culture and the evolution of computer
                                  science  . . . . . . . . . . . . . . . . 153--154
              Arun Raghavan and   
             Laurel Emurian and   
                   Lei Shao and   
       Marios Papaefthymiou and   
              Kevin P. Pipe and   
          Thomas F. Wenisch and   
              Milo M. K. Martin   Computational sprinting on a
                                  hardware/software testbed  . . . . . . . 155--166
                 Wonsun Ahn and   
                 Yuelu Duan and   
                Josep Torrellas   DeAliaser: alias speculation using
                                  atomic region support  . . . . . . . . . 167--180
               Heekwon Park and   
              Seungjae Baek and   
               Jongmoo Choi and   
                Donghee Lee and   
                     Sam H. Noh   Regularities considered harmful: forcing
                                  randomness to memory accesses to reduce
                                  row buffer conflicts for multi-core,
                                  multi-bank systems . . . . . . . . . . . 181--192
             Nima Honarmand and   
          Nathan Dautenhahn and   
            Josep Torrellas and   
             Samuel T. King and   
               Gilles Pokam and   
              Cristiano Pereira   Cyrus: unintrusive application-level
                                  record-replay for replay parallelism . . 193--206
   Augusto Born de Oliveira and   
     Sebastian Fischmeister and   
                 Amer Diwan and   
         Matthias Hauswirth and   
               Peter F. Sweeney   Why you should care about quantile
                                  regression . . . . . . . . . . . . . . . 207--218
         Charlie Curtsinger and   
                Emery D. Berger   STABILIZER: statistically sound
                                  performance evaluation . . . . . . . . . 219--228
               Lokesh Gidra and   
           Gaël Thomas and   
              Julien Sopena and   
                   Marc Shapiro   A study of the scalability of
                                  stop-the-world garbage collectors on
                                  multicores . . . . . . . . . . . . . . . 229--240
         Daniel S. McFarlin and   
             Charles Tucker and   
                   Craig Zilles   Discerning the dominant out-of-order
                                  performance advantage: is it speculation
                                  or dynamism? . . . . . . . . . . . . . . 241--252
          Stephen Checkoway and   
                  Hovav Shacham   Iago attacks: why the system call API is
                                  a bad untrusted RPC interface  . . . . . 253--264
            Owen S. Hofmann and   
                Sangman Kim and   
               Alan M. Dunn and   
             Michael Z. Lee and   
                 Emmett Witchel   InkTag: secure applications on an
                                  untrusted operating system . . . . . . . 265--278
        Cristiano Giuffrida and   
             Anton Kuijsten and   
            Andrew S. Tanenbaum   Safe and automatic live update for
                                  operating systems  . . . . . . . . . . . 279--292
                 Haohui Mai and   
                  Edgar Pek and   
                    Hui Xue and   
       Samuel Talmadge King and   
       Parthasarathy Madhusudan   Verifying security invariants in
                                  ExpressOS  . . . . . . . . . . . . . . . 293--304
              Eric Schkufza and   
               Rahul Sharma and   
                     Alex Aiken   Stochastic superoptimization . . . . . . 305--316
               Eric Schulte and   
         Jonathan DiLorenzo and   
             Westley Weimer and   
              Stephanie Forrest   Automated repair of binary and assembly
                                  programs for cooperating embedded
                                  devices  . . . . . . . . . . . . . . . . 317--328
                 Heming Cui and   
                    Gang Hu and   
                 Jingyue Wu and   
                   Junfeng Yang   Verifying systems rules using
                                  rule-directed symbolic execution . . . . 329--342
               Xiaoya Xiang and   
                  Chen Ding and   
                    Hao Luo and   
                        Bin Bao   HOTL: a higher order theory of locality  343--356
                   Hui Kang and   
               Jennifer L. Wong   To hardware prefetch or not to
                                  prefetch?: a virtualized environment
                                  study and core binding approach  . . . . 357--368
                 Hwanju Kim and   
               Sangwook Kim and   
               Jinkyu Jeong and   
                Joonwon Lee and   
               Seungryoul Maeng   Demand-based coordinated scheduling for
                                  SMP VMs  . . . . . . . . . . . . . . . . 369--380
            Mohammad Dashti and   
         Alexandra Fedorova and   
             Justin Funston and   
                Fabien Gaud and   
            Renaud Lachaize and   
            Baptiste Lepers and   
               Vivien Quema and   
                      Mark Roth   Traffic management: a holistic approach
                                  to memory placement on NUMA systems  . . 381--394
                 Adwait Jog and   
               Onur Kayiran and   
Nachiappan Chidambaram Nachiappan and   
             Asit K. Mishra and   
         Mahmut T. Kandemir and   
                 Onur Mutlu and   
           Ravishankar Iyer and   
                   Chita R. Das   OWL: cooperative thread array aware
                                  scheduling techniques for improving
                                  GPGPU performance  . . . . . . . . . . . 395--406
              Sreepathi Pai and   
 Matthew J. Thazhuthaveetil and   
                R. Govindarajan   Improving GPGPU concurrency with elastic
                                  kernels  . . . . . . . . . . . . . . . . 407--418
                 Taewook Oh and   
                 Hanjun Kim and   
            Nick P. Johnson and   
                 Jae W. Lee and   
                David I. August   Practical automatic loop specialization  419--430
Phitchaya Mangpo Phothilimthana and   
                Jason Ansel and   
      Jonathan Ragan-Kelley and   
              Saman Amarasinghe   Portable performance on heterogeneous
                                  architectures  . . . . . . . . . . . . . 431--444
             Aashish Mittal and   
            Dushyant Bansal and   
               Sorav Bansal and   
                    Varun Sethi   Efficient virtualization on embedded
                                  Power Architecture\reg platforms . . . . 445--458
                   Mark D. Hill   Research directions for 21st Century
                                  computer systems: ASPLOS 2013 panel  . . 459--460
          Anil Madhavapeddy and   
            Richard Mortier and   
         Charalampos Rotsos and   
                David Scott and   
               Balraj Singh and   
          Thomas Gazagnaire and   
               Steven Smith and   
                Steven Hand and   
                  Jon Crowcroft   Unikernels: library operating systems
                                  for the cloud  . . . . . . . . . . . . . 461--472
                 Asim Kadav and   
      Matthew J. Renzelmann and   
               Michael M. Swift   Fine-grained fault tolerance using
                                  device checkpoints . . . . . . . . . . . 473--484
           Mark Silberstein and   
                 Bryan Ford and   
                Idit Keidar and   
                 Emmett Witchel   GPUfs: integrating a file system with
                                  GPUs . . . . . . . . . . . . . . . . . . 485--498
              Nicholas Hunt and   
                 Tom Bergan and   
                  Luis Ceze and   
              Steven D. Gribble   DDOS: taming nondeterminism in
                                  distributed systems  . . . . . . . . . . 499--508
                 Cheng Wang and   
                     Youfeng Wu   TSO\_ATOMICITY: efficient hardware
                                  primitive for TSO-preserving region
                                  optimizations  . . . . . . . . . . . . . 509--520
        Syed Ali Raza Jafri and   
        Gwendolyn Voskuilen and   
               T. N. Vijaykumar   Wait-n-GoTM: improving HTM performance
                                  by serializing cyclic dependencies . . . 521--534
                Xuehai Qian and   
            Josep Torrellas and   
         Benjamin Sahelices and   
                     Depei Qian   Volition: scalable and precise
                                  sequential consistency violation
                                  detection  . . . . . . . . . . . . . . . 535--548
             J. P. Grossman and   
          Jeffrey S. Kuskin and   
             Joseph A. Bank and   
           Michael Theobald and   
                Ron O. Dror and   
         Douglas J. Ierardi and   
          Richard H. Larson and   
             U. Ben Schafer and   
               Brian Towles and   
                Cliff Young and   
                  David E. Shaw   Hardware support for fine-grained
                                  event-driven computation in Anton 2  . . 549--560

ACM SIG{}PLAN Notices
Volume 48, Number 4S, April, 2013

                      Jan Vitek   SIGPLAN Chair's report . . . . . . . . . 1--2
                 Jeremy Gibbons   ACM SIGPLAN Vice-Chair's report  . . . . 3--3
                Andrew P. Black   SIGPLAN Secretary's report . . . . . . . 4--5
              Cristina V. Lopes   SIGPLAN Treasurer's report . . . . . . . 6--6
                   Derek Dreyer   SIGPLAN most influential paper awards    7--8
               Julia Lawall and   
              Cristina V. Lopes   SIGPLAN Professional Activities
                                  Committee report . . . . . . . . . . . . 9--9
                   Michael Hind   CACM research highlights annual report   10--11
               Derek Dreyer and   
                 John Field and   
         Roberto Giacobazzi and   
              Michael Hicks and   
         Suresh Jagannathan and   
                Mooly Sagiv and   
               Peter Sewell and   
                    Phil Wadler   Principles of POPL . . . . . . . . . . . 12--16
          Shriram Krishnamurthi   Artifact evaluation for software
                                  conferences  . . . . . . . . . . . . . . 17--21
            Cormac Flanagan and   
         K. Rustan M. Leino and   
           Mark Lillibridge and   
                Greg Nelson and   
              James B. Saxe and   
                   Raymie Stata   PLDI 2002: Extended static checking for
                                  Java . . . . . . . . . . . . . . . . . . 22--33
       Robert Bruce Findler and   
             Matthias Felleisen   ICFP 2002: Contracts for higher-order
                                  functions  . . . . . . . . . . . . . . . 34--45
            Emery D. Berger and   
           Benjamin G. Zorn and   
            Kathryn S. McKinley   OOPSLA 2002: Reconsidering custom memory
                                  allocation . . . . . . . . . . . . . . . 46--57
             David F. Bacon and   
                Perry Cheng and   
                    V. T. Rajan   POPL 2003: a real-time garbage collector
                                  with low overhead and consistent
                                  utilization  . . . . . . . . . . . . . . 58--71

ACM SIG{}PLAN Notices
Volume 48, Number 5, May, 2013

                     Youfeng Wu   HW/SW co-designed acceleration of
                                  dynamic languages  . . . . . . . . . . . 1--2
        Daya Shanker Khudia and   
                   Scott Mahlke   Low cost control flow protection using
                                  abstract control signatures  . . . . . . 3--12
                   Hao Chen and   
                   Chengmo Yang   Boosting efficiency of fault detection
                                  and recovery through
                                  application-specific comparison and
                                  checkpointing  . . . . . . . . . . . . . 13--20
        Isabella Stilkerich and   
             Michael Strotz and   
          Christoph Erhardt and   
            Martin Hoffmann and   
             Daniel Lohmann and   
             Fabian Scheler and   
Wolfgang Schröder-Preikschat   A JVM for soft-error-prone embedded
                                  systems  . . . . . . . . . . . . . . . . 21--32
              Ian Finlayson and   
              Brandon Davis and   
                Peter Gavin and   
              Gang-Ryung Uh and   
              David Whalley and   
      Magnus Själander and   
                     Gary Tyson   Improving processor efficiency by
                                  statically pipelining instructions . . . 33--44
         Vasileios Porpodas and   
                 Marcelo Cintra   LUCAS: latency-adaptive unified cluster
                                  assignment and instruction scheduling    45--54
               Hakbeom Jang and   
                Channoh Kim and   
                     Jae W. Lee   Practical speculative parallelization of
                                  variable-length decompression algorithms 55--64
      Sudipta Chattopadhyay and   
              Lee Kee Chong and   
             Abhik Roychoudhury   Program performance spectrum . . . . . . 65--76
              Carlos Moreno and   
     Sebastian Fischmeister and   
                 M. Anwar Hasan   Non-intrusive program tracing and
                                  debugging of deployed embedded systems
                                  through side-channel analysis  . . . . . 77--88
                Marcel Beemster   The role of C in the dark ages of
                                  multi-core . . . . . . . . . . . . . . . 89--90
             Tianzheng Wang and   
                    Duo Liu and   
                    Yi Wang and   
                      Zili Shao   FTL 2: a hybrid \em flash \em
                                  translation \em layer with logging for
                                  write reduction in flash memory  . . . . 91--100
                  Qingan Li and   
                  Lei Jiang and   
               Youtao Zhang and   
                Yanxiang He and   
                 Chun Jason Xue   Compiler directed write-mode selection
                                  for high performance low power volatile
                                  PCM  . . . . . . . . . . . . . . . . . . 101--110
                  Yong Guan and   
                Guohui Wang and   
                    Yi Wang and   
                Renhai Chen and   
                      Zili Shao   BLog: block-level log-block management
                                  for NAND flash memory storage systems    111--120
              Asma Mehiaoui and   
             Ernest Wozniak and   
    Sara Tucci-Piergiovanni and   
             Chokri Mraidha and   
            Marco Di Natale and   
                 Haibo Zeng and   
        Jean-Philippe Babau and   
         Laurent Lemarchand and   
        Sébastien Gerard   A two-step optimization technique for
                                  functions placement, partitioning, and
                                  priority assignment in distributed
                                  systems  . . . . . . . . . . . . . . . . 121--132
              Adnan Bouakaz and   
             Jean-Pierre Talpin   Buffer minimization in earliest-deadline
                                  first scheduling of dataflow graphs  . . 133--142
            Stefan J. Geuns and   
    Joost P. H. M. Hausmans and   
            Marco J. G. Bekooij   Automatic dataflow model extraction from
                                  modal real-time stream processing
                                  applications . . . . . . . . . . . . . . 143--152
                 Cheng Wang and   
      Sunita Chandrasekaran and   
                   Peng Sun and   
            Barbara Chapman and   
                       Jim Holt   Portable mapping of openMP to multicore
                                  embedded systems using MCA APIs  . . . . 153--162
             Benedikt Huber and   
            Daniel Prokesch and   
                 Peter Puschner   Combined WCET analysis of bitcode and
                                  machine code using control-flow relation
                                  graphs . . . . . . . . . . . . . . . . . 163--172

ACM SIG{}PLAN Notices
Volume 48, Number 6, June, 2013

             Yannis Smaragdakis   Look up!: your future is in the cloud    1--2
               Alvin Cheung and   
       Armando Solar-Lezama and   
                  Samuel Madden   Optimizing database-backed applications
                                  with query synthesis . . . . . . . . . . 3--14
              Rishabh Singh and   
              Sumit Gulwani and   
           Armando Solar-Lezama   Automated feedback generation for
                                  introductory programming assignments . . 15--26
              Tihomir Gvero and   
              Viktor Kuncak and   
                 Ivan Kuraj and   
                  Ruzica Piskac   Complete completion using types and
                                  weights  . . . . . . . . . . . . . . . . 27--38
            Nick P. Johnson and   
                 Taewook Oh and   
                  Ayal Zaks and   
                David I. August   Fast condensation of the program
                                  dependence graph . . . . . . . . . . . . 39--50
            Khaled ElWazeer and   
                Kapil Anand and   
               Aparna Kotha and   
           Matthew Smithson and   
                   Rajeev Barua   Scalable variable and data type
                                  detection in a binary rewriter . . . . . 51--60
          Bharghava Rajaram and   
            Vijay Nagarajan and   
              Susmit Sarkar and   
                    Marco Elver   Fast RMWs for TSO: semantics and
                                  implementation . . . . . . . . . . . . . 61--72
            Colin S. Gordon and   
           Michael D. Ernst and   
                   Dan Grossman   Rely-guarantee references for refinement
                                  types over aliased mutable data  . . . . 73--84
                  Ben L. Titzer   Harmonizing classes, functions, tuples,
                                  and type parameters in Virgil III  . . . 85--94
       Sebastian Burckhardt and   
           Manuel Fahndrich and   
            Peli de Halleux and   
              Sean McDirmid and   
              Michal Moskal and   
           Nikolai Tillmann and   
                       Jun Kato   It's alive! Continuous feedback in UI
                                  programming  . . . . . . . . . . . . . . 95--104
             Zachary DeVito and   
              James Hegarty and   
                 Alex Aiken and   
               Pat Hanrahan and   
                      Jan Vitek   Terra: a multi-stage language for
                                  high-performance computing . . . . . . . 105--116
                  Jiajia Li and   
              Guangming Tan and   
                Mingyu Chen and   
                    Ninghui Sun   SMAT: an input adaptive auto-tuner for
                                  sparse matrix-vector multiplication  . . 117--126
                Martin Kong and   
              Richard Veras and   
                Kevin Stock and   
           Franz Franchetti and   
    Louis-Noël Pouchet and   
                  P. Sadayappan   When polyhedral transformations meet
                                  SIMD code generation . . . . . . . . . . 127--138
              Fred B. Schneider   Programming languages in security:
                                  keynote  . . . . . . . . . . . . . . . . 139--140
                 Jeff Huang and   
              Charles Zhang and   
                   Julian Dolby   CLAP: recording local executions to
                                  reproduce concurrency failures . . . . . 141--152
               Tayfun Elmas and   
               Jacob Burnim and   
              George Necula and   
                    Koushik Sen   CONCURRIT: a domain specific language
                                  for reproducing concurrency bugs . . . . 153--164
          Max Schäefer and   
             Manu Sridharan and   
               Julian Dolby and   
                      Frank Tip   Dynamic determinacy analysis . . . . . . 165--174
              Jianzhou Zhao and   
        Santosh Nagarakatte and   
          Milo M. K. Martin and   
                Steve Zdancewic   Formal verification of SSA-based
                                  optimizations for LLVM . . . . . . . . . 175--186
             Robin Morisset and   
               Pankaj Pawan and   
       Francesco Zappa Nardelli   Compiler testing via a theory of sound
                                  optimisations in the C11/C++11 memory
                                  model  . . . . . . . . . . . . . . . . . 187--196
                  Yang Chen and   
                 Alex Groce and   
            Chaoqiang Zhang and   
             Weng-Keen Wong and   
                Xiaoli Fern and   
                  Eric Eide and   
                    John Regehr   Taming compiler fuzzers  . . . . . . . . 197--208
             Sam Blackshear and   
             Shuvendu K. Lahiri   Almost-correct specifications: a modular
                                  semantic framework for assigning
                                  confidence to warnings . . . . . . . . . 209--218
                 Byron Cook and   
                  Eric Koskinen   Reasoning about nondeterminism in
                                  programs . . . . . . . . . . . . . . . . 219--230
               Xiaokang Qiu and   
                Pranav Garg and   
          Andrei Stefanescu and   
       Parthasarathy Madhusudan   Natural proofs for structure, data, and
                                  separation . . . . . . . . . . . . . . . 231--242
                 Hongtao Yu and   
                 Hou-Jen Ko and   
                     Zhiyuan Li   General data structure expansion for
                                  multi-threading  . . . . . . . . . . . . 243--252
               Wei-Lun Hung and   
                  Vijay K. Garg   AutoSynch: an automatic-signal monitor
                                  based on predicate tagging . . . . . . . 253--262
            Guy Golan-Gueta and   
              G. Ramalingam and   
                Mooly Sagiv and   
                     Eran Yahav   Concurrent libraries with foresight  . . 263--274
             Sam Blackshear and   
         Bor-Yuh Evan Chang and   
                 Manu Sridharan   Thresher: precise refutations for heap
                                  reachability . . . . . . . . . . . . . . 275--286
             Abhishek Udupa and   
              Arun Raghavan and   
      Jyotirmoy V. Deshmukh and   
            Sela Mador-Haim and   
          Milo M. K. Martin and   
                    Rajeev Alur   TRANSIT: specifying protocols with
                                  concolic snippets  . . . . . . . . . . . 287--296
                 Tiejun Gao and   
              Karin Strauss and   
       Stephen M. Blackburn and   
        Kathryn S. McKinley and   
                Doug Burger and   
                    James Larus   Using managed runtime systems to
                                  tolerate holes in wearable memories  . . 297--308
             Nachshon Cohen and   
                   Erez Petrank   Limitations of partial compaction:
                                  towards practical bounds . . . . . . . . 309--320
               Ankush Desai and   
                Vivek Gupta and   
              Ethan Jackson and   
                Shaz Qadeer and   
            Sriram Rajamani and   
                Damien Zufferey   P: safe asynchronous event-driven
                                  programming  . . . . . . . . . . . . . . 321--332
         Alexander S. Green and   
     Peter LeFanu Lumsdaine and   
               Neil J. Ross and   
             Peter Selinger and   
              Beno\^\it Valiron   Quipper: a scalable quantum programming
                                  language . . . . . . . . . . . . . . . . 333--342
      Chinawat Isradisaikul and   
                Andrew C. Myers   Reconciling exhaustive pattern matching
                                  with objects . . . . . . . . . . . . . . 343--354
                Eric Bodden and   
 Társis Tolêdo and   
      Márcio Ribeiro and   
             Claus Brabrand and   
                Paulo Borba and   
                    Mira Mezini   SPL LIFT: statically analyzing software
                                  product lines in minutes instead of
                                  years  . . . . . . . . . . . . . . . . . 355--364
                  Xin Zhang and   
                 Mayur Naik and   
                  Hongseok Yang   Finding optimum abstractions in
                                  parametric dataflow analysis . . . . . . 365--376
              Kalmer Apinis and   
               Helmut Seidl and   
                  Vesal Vojdani   How to combine widening and narrowing
                                  for non-monotonic systems of equations   377--386
               Nikhil Swamy and   
            Joel Weinberger and   
           Cole Schlesinger and   
                  Juan Chen and   
              Benjamin Livshits   Verifying higher-order programs with the
                                  Dijkstra monad . . . . . . . . . . . . . 387--398
                Ilya Sergey and   
         Dominique Devriese and   
              Matthew Might and   
              Jan Midtgaard and   
               David Darais and   
                Dave Clarke and   
                 Frank Piessens   Monadic abstract interpreters  . . . . . 399--410
             Evan Czaplicki and   
                  Stephen Chong   Asynchronous functional reactive
                                  programming for GUIs . . . . . . . . . . 411--422
           George Kastrinis and   
             Yannis Smaragdakis   Hybrid context-sensitivity for points-to
                                  analysis . . . . . . . . . . . . . . . . 423--434
                Qirun Zhang and   
             Michael R. Lyu and   
                   Hao Yuan and   
                    Zhendong Su   Fast algorithms for
                                  Dyck--CFL-reachability with applications
                                  to alias analysis  . . . . . . . . . . . 435--446
    Sriram Sankaranarayanan and   
        Aleksandar Chakarov and   
                  Sumit Gulwani   Static analysis for probabilistic
                                  programs: inferring whole program
                                  properties from finitely many paths  . . 447--458
              Hongjin Liang and   
                     Xinyu Feng   Modular verification of linearizability
                                  with non-fixed linearization points  . . 459--470
  Thomas Arthur Leck Sewell and   
           Magnus O. Myreen and   
                   Gerwin Klein   Translation validation for a verified OS
                                  kernel . . . . . . . . . . . . . . . . . 471--482
                 Arjun Guha and   
             Mark Reitblatt and   
                    Nate Foster   Machine-verified network controllers . . 483--494
              Tony Nowatzki and   
        Michael Sartin-Tarm and   
           Lorenzo De Carli and   
  Karthikeyan Sankaralingam and   
             Cristian Estan and   
               Behnam Robatmili   A general constraint-centric scheduling
                                  framework for spatial architectures  . . 495--506
        Jonathan Lifflander and   
      Sriram Krishnamoorthy and   
              Laxmikant V. Kale   Steal Tree: low-overhead tracing of work
                                  stealing schedulers  . . . . . . . . . . 507--518
      Jonathan Ragan-Kelley and   
            Connelly Barnes and   
               Andrew Adams and   
              Sylvain Paris and   
        Frédo Durand and   
              Saman Amarasinghe   Halide: a language and compiler for
                                  optimizing parallelism, locality, and
                                  recomputation in image processing
                                  pipelines  . . . . . . . . . . . . . . . 519--530

ACM SIG{}PLAN Notices
Volume 48, Number 7, July, 2013

                   Ning Jia and   
                  Chun Yang and   
                  Jing Wang and   
                  Dong Tong and   
                      Keyi Wang   SPIRE: improving dynamic binary
                                  translation through SPC-indexed indirect
                                  branch redirecting . . . . . . . . . . . 1--12
Tobias J. K. Edler von Koch and   
              Björn Franke   Limits of region-based dynamic binary
                                  parallelization  . . . . . . . . . . . . 13--22
              Chun-Chen Hsu and   
               Pangfeng Liu and   
                 Jan-Jan Wu and   
              Pen-Chung Yew and   
             Ding-Yong Hong and   
              Wei-Chung Hsu and   
                 Chien-Min Wang   Improving dynamic binary optimization
                                  through early-exit guided code region
                                  formation  . . . . . . . . . . . . . . . 23--32
             Marco Kaufmann and   
              Rainer G. Spallek   Superblock compilation and other
                                  optimization techniques for a Java-based
                                  DBT machine emulator . . . . . . . . . . 33--40
               Changyeon Jo and   
            Erik Gustafsson and   
              Jeongseok Son and   
                 Bernhard Egger   Efficient live migration of virtual
                                  machines using shared storage  . . . . . 41--50
             Jui-Hao Chiang and   
                 Han-Lin Li and   
                Tzi-cker Chiueh   Introspection-based memory
                                  de-duplication and migration . . . . . . 51--62
                    Lei Cui and   
                 Jianxin Li and   
                      Bo Li and   
               Jinpeng Huai and   
                Chunming Hu and   
                  Tianyu Wo and   
          Hussain Al-Aqrabi and   
                         Lu Liu   VMScatter: migrate virtual machines to
                                  many hosts . . . . . . . . . . . . . . . 63--72
                Ruijin Zhou and   
                   Fang Liu and   
                    Chao Li and   
                         Tao Li   Optimizing virtual machine live storage
                                  migration in heterogeneous storage
                                  environment  . . . . . . . . . . . . . . 73--84
                 Xiang Song and   
                Jicheng Shi and   
                    Ran Liu and   
                  Jian Yang and   
                     Haibo Chen   Parallelizing live migration of virtual
                                  machines . . . . . . . . . . . . . . . . 85--96
                Yangchun Fu and   
                   Zhiqiang Lin   EXTERIOR: using a dual-VM based external
                                  shell for guest-OS introspection,
                                  configuration, and recovery  . . . . . . 97--110
                 Yuehua Dai and   
                    Yong Qi and   
                Jianbao Ren and   
                     Yi Shi and   
             Xiaoguang Wang and   
                        Xuan Yu   A lightweight VMM on many core for high
                                  performance computing  . . . . . . . . . 111--120
             Hiroshi Yamada and   
                     Kenji Kono   Traveling forward in time to newer
                                  operating systems using ShadowReboot . . 121--130
           Michael R. Jantz and   
             Prasad A. Kulkarni   Performance potential of optimization
                                  phase selection during dynamic JIT
                                  compilation  . . . . . . . . . . . . . . 131--142
         Nurudeen A. Lameed and   
              Laurie J. Hendren   A modular approach to on-stack
                                  replacement in LLVM  . . . . . . . . . . 143--154
           Michael R. Jantz and   
            Carl Strickland and   
              Karthik Kumar and   
            Martin Dimitrov and   
               Kshitij A. Doshi   A framework for application guidance in
                                  virtual memory systems . . . . . . . . . 155--166
                  Chen Chen and   
            Petros Maniatis and   
              Adrian Perrig and   
             Amit Vasudevan and   
                     Vyas Sekar   Towards verifiable resource accounting
                                  for outsourced computation . . . . . . . 167--178
                Ruijin Zhou and   
                         Tao Li   Leveraging phase change memory to
                                  achieve efficient virtual machine
                                  execution  . . . . . . . . . . . . . . . 179--190
             Jiannan Ouyang and   
                  John R. Lange   Preemptable ticket spinlocks: improving
                                  consolidated performance in the cloud    191--200

ACM SIG{}PLAN Notices
Volume 48, Number 8, August, 2013

                  Chao Yang and   
                    Wei Xue and   
                 Haohuan Fu and   
                    Lin Gan and   
                 Linfeng Li and   
                Yangtong Xu and   
                  Yutong Lu and   
               Jiachang Sun and   
              Guangwen Yang and   
                   Weimin Zheng   A peta-scalable CPU-GPU algorithm for
                                  global atmospheric simulations . . . . . 1--12
        Jonathan Lifflander and   
                Phil Miller and   
                 Laxmikant Kale   Adoption protocols for fanout-optimal
                                  fault-tolerant termination detection . . 13--22
              Tomofumi Yuki and   
             Paul Feautrier and   
          Sanjay Rajopadhye and   
                 Vijay Saraswat   Array dataflow analysis for polyhedral
                                  X10 programs . . . . . . . . . . . . . . 23--34
        Dimitrios Prountzos and   
                 Keshav Pingali   Betweenness centrality: algorithms and
                                  implementations  . . . . . . . . . . . . 35--46
            Lingxiang Xiang and   
              Michael Lee Scott   Compiler aided manual speculation for
                                  high performance concurrent data
                                  structures . . . . . . . . . . . . . . . 47--56
                      Bo Wu and   
                Zhijia Zhao and   
           Eddy Zheng Zhang and   
              Yunlian Jiang and   
                    Xipeng Shen   Complexity analysis and algorithm design
                                  for reorganizing data to minimize
                                  non-coalesced memory accesses on GPU . . 57--68
         Nhat Minh Lê and   
                Antoniu Pop and   
               Albert Cohen and   
       Francesco Zappa Nardelli   Correct and efficient work-stealing for
                                  weak memory models . . . . . . . . . . . 69--80
             Lars Bergstrom and   
              Matthew Fluet and   
                Mike Rainey and   
                 John Reppy and   
              Stephen Rosen and   
                      Adam Shaw   Data-only flattening for nested data
                                  parallelism  . . . . . . . . . . . . . . 81--92
            Dmitriy Morozov and   
                  Gunther Weber   Distributed merge trees  . . . . . . . . 93--102
              Adam Morrison and   
                    Yehuda Afek   Fast concurrent queues for x86
                                  processors . . . . . . . . . . . . . . . 103--112
        Jons-Tobias Wamhoff and   
            Christof Fetzer and   
              Pascal Felber and   
          Etienne Rivi\`ere and   
                  Gilles Muller   FastLane: improving performance of
                                  software transactional memory for low
                                  thread counts  . . . . . . . . . . . . . 113--122
              Gilles Barthe and   
         Juan Manuel Crespo and   
              Sumit Gulwani and   
                 Cesar Kunz and   
                    Mark Marron   From relational verification to SIMD
                                  loop synthesis . . . . . . . . . . . . . 123--134
                Julian Shun and   
                Guy E. Blelloch   Ligra: a lightweight graph processing
                                  framework for shared memory  . . . . . . 135--146
               Rupesh Nasre and   
           Martin Burtscher and   
                 Keshav Pingali   Morph algorithms on GPUs . . . . . . . . 147--156
               Irina Calciu and   
                  Dave Dice and   
                  Yossi Lev and   
           Victor Luchangco and   
        Virendra J. Marathe and   
                     Nir Shavit   NUMA-aware reader-writer locks . . . . . 157--166
                   Zizhong Chen   Online-ABFT: an online algorithm based
                                  fault tolerance scheme for soft error
                                  detection in iterative methods . . . . . 167--176
            Andrew Friedley and   
            Torsten Hoefler and   
           Greg Bronevetsky and   
           Andrew Lumsdaine and   
                  Ching-Chen Ma   Ownership passing: efficient distributed
                                  memory programming on multi-core systems 177--186
          Leo A. Meyerovich and   
           Matthew E. Torok and   
              Eric Atkinson and   
                Rastislav Bodik   Parallel schedule synthesis for
                                  attribute grammars . . . . . . . . . . . 187--196
                 Mrinal Deo and   
                     Sean Keely   Parallel suffix array and least common
                                  prefix for the GPU . . . . . . . . . . . 197--206
                 Yufei Chen and   
                     Haibo Chen   Scalable deterministic replay in a
                                  parallel full-system emulator  . . . . . 207--218
               Umut A. Acar and   
         Arthur Chargueraud and   
                    Mike Rainey   Scheduling parallel programs by work
                                  stealing with private deques . . . . . . 219--228
                Shengen Yan and   
               Guoping Long and   
                  Yunquan Zhang   StreamScan: fast scan algorithms for
                                  GPUs without global barrier
                                  synchronization  . . . . . . . . . . . . 229--238
         Stephen T. Heumann and   
             Vikram S. Adve and   
                  Shengjie Wang   The tasks with effects model for safe
                                  concurrency  . . . . . . . . . . . . . . 239--250
            Daniele Bonetta and   
              Walter Binder and   
                Cesare Pautasso   TigerQuoll: parallel event-based
                                  JavaScript . . . . . . . . . . . . . . . 251--260
                  Dave Dice and   
                  Yossi Lev and   
                  Yujie Liu and   
           Victor Luchangco and   
                      Mark Moir   Using hardware transactional memory to
                                  correct and simplify and readers-writer
                                  lock algorithm . . . . . . . . . . . . . 261--270
             Calin Cascaval and   
                Seth Fowler and   
    Pablo Montesinos-Ortego and   
            Wayne Piekarski and   
            Mehrdad Reshadi and   
           Behnam Robatmili and   
              Michael Weber and   
                Vrajesh Bhavsar   ZOOMM: a parallel Web browser engine for
                                  multicore mobile devices . . . . . . . . 271--280
                Ivan Grasso and   
               Klaus Kofler and   
             Biagio Cosenza and   
               Thomas Fahringer   Automatic problem size sensitive task
                                  partitioning on heterogeneous parallel
                                  systems  . . . . . . . . . . . . . . . . 281--282
                    Jun Liu and   
                   Wei Ding and   
               Ohyoung Jang and   
                Mahmut Kandemir   Data layout optimization for GPGPU
                                  architectures  . . . . . . . . . . . . . 283--284
        Shobana Padmanabhan and   
                 Yixin Chen and   
           Roger D. Chamberlain   Decomposition techniques for optimal
                                  design-space exploration of streaming
                                  applications . . . . . . . . . . . . . . 285--286
                Xiaodong Yu and   
                 Michela Becchi   Exploring different automata
                                  representations for efficient regular
                                  expression matching on GPUs  . . . . . . 287--288
               Nick Edmonds and   
          Jeremiah Willcock and   
               Andrew Lumsdaine   Expressing graph algorithms using
                                  generalized active messages  . . . . . . 289--290
                  Ligang Lu and   
                Karen Magerlein   Multi-level parallel computing of
                                  reverse time migration for seismic
                                  imaging on Blue Gene/Q . . . . . . . . . 291--292
              Changhee Park and   
         Guy L. Steele, Jr. and   
          Jean-Baptiste Tristan   Parallel programming with big operators  293--294
                Yehuda Afek and   
                  Amir Levy and   
                  Adam Morrison   Programming with hardware lock elision   295--296
                     Kai Lu and   
                    Xu Zhou and   
              Xiaoping Wang and   
               Wenzhe Zhang and   
                         Gen Li   RaceFree: an efficient multi-threading
                                  model for determinism  . . . . . . . . . 297--298
                Julian Shun and   
            Guy E. Blelloch and   
          Jeremy T. Fineman and   
             Phillip B. Gibbons   Reducing contention through priority
                                  updates  . . . . . . . . . . . . . . . . 299--300
             Gregory Diamos and   
                Haicheng Wu and   
                   Jin Wang and   
                Ashwin Lele and   
          Sudhakar Yalamanchili   Relational algorithms for
                                  multi-bulk-synchronous processors  . . . 301--302
   Fernando Miguel Carvalho and   
            João Cachopo   Runtime elision of transactional
                                  barriers for captured memory . . . . . . 303--304
             Chang-Seo Park and   
                Koushik Sen and   
                   Costin Iancu   Scalable data race detection for
                                  partitioned global address space
                                  programs . . . . . . . . . . . . . . . . 305--306
                  Dave Dice and   
                  Yossi Lev and   
                      Mark Moir   Scalable statistics counters . . . . . . 307--308
          Justin M. Wozniak and   
       Timothy G. Armstrong and   
              Michael Wilde and   
             Daniel S. Katz and   
                 Ewing Lusk and   
                  Ian T. Foster   Swift/T: scalable data flow programming
                                  for many-task applications . . . . . . . 309--310
                    Yan Cai and   
                    Ke Zhai and   
                 Shangru Wu and   
                     W. K. Chan   TeamWork: synchronizing threads globally
                                  to detect real deadlocks for
                                  multithreaded programs . . . . . . . . . 311--312
   Mohammed El Mehdi Diouri and   
         Olivier Glück and   
          Laurent Lef\`evre and   
                Franck Cappello   Towards an energy estimator for fault
                                  tolerance protocols  . . . . . . . . . . 313--314
              Martin Wimmer and   
            Daniel Cederman and   
  Jesper Larsson Träff and   
               Philippas Tsigas   Work-stealing with configurable
                                  scheduling strategies  . . . . . . . . . 315--316
                 Bowen Zhou and   
            Milind Kulkarni and   
                 Saurabh Bagchi   WuKong: effective diagnosis of bugs at
                                  large system scales  . . . . . . . . . . 317--318

ACM SIG{}PLAN Notices
Volume 48, Number 9, September, 2013

                     Ulf Norell   Interactive programming with dependent
                                  types  . . . . . . . . . . . . . . . . . 1--2
            Dmitriy Traytel and   
                  Tobias Nipkow   Verified decision procedures for MSO on
                                  words based on derivatives of regular
                                  expressions  . . . . . . . . . . . . . . 3--12
      Christopher Broadbent and   
             Arnaud Carayol and   
              Matthew Hague and   
                  Olivier Serre   C-SHORe: a collapsible approach to
                                  higher-order verification  . . . . . . . 13--24
              Leaf Petersen and   
            Dominic Orchard and   
                      Neal Glew   Automatic SIMD vectorization for Haskell 25--36
          Geoffrey Mainland and   
         Roman Leshchinskiy and   
             Simon Peyton Jones   Exploiting vector instructions with
                                  generalized stream fusion  . . . . . . . 37--48
         Trevor L. McDonell and   
   Manuel M. T. Chakravarty and   
            Gabriele Keller and   
                  Ben Lippmeier   Optimising purely functional GPU
                                  programs . . . . . . . . . . . . . . . . 49--60
     Jean-Philippe Bernardy and   
                 Moulin Guilhem   Type-theory in color . . . . . . . . . . 61--72
         Dominique Devriese and   
                 Frank Piessens   Typed syntactic meta-programming . . . . 73--86
               Beta Ziliani and   
               Derek Dreyer and   
Neelakantan R. Krishnaswami and   
        Aleksandar Nanevski and   
               Viktor Vafeiadis   Mtac: a monad for typed tactic
                                  programming in Coq . . . . . . . . . . . 87--100
                  Stephen Dolan   Fun with semirings: a functional pearl
                                  on the abuse of linear algebra . . . . . 101--110
     Jean-Philippe Bernardy and   
                  Koen Claessen   Efficient divide-and-conquer parsing of
                                  practical context-free languages . . . . 111--122
           Harry George Mairson   Functional geometry and the Traité de
                                  Lutherie: functional pearl . . . . . . . 123--132
                    Edwin Brady   Programming and reasoning with algebraic
                                  effects and dependent types  . . . . . . 133--144
                Ohad Kammar and   
                Sam Lindley and   
                   Nicolas Oury   Handlers in action . . . . . . . . . . . 145--158
             Simon Peyton Jones   Computer science as a school subject . . 159--160
Manfred Schmidt-Schauß and   
                    David Sabel   Correctness of an STM Haskell
                                  implementation . . . . . . . . . . . . . 161--172
    François Pottier and   
             Jonathan Protzenko   Programming with permissions in Mezzo    173--184
            Andreas M. Abel and   
               Brigitte Pientka   Wellfounded recursion with copatterns: a
                                  unified approach to termination and
                                  productivity . . . . . . . . . . . . . . 185--196
               Robert Atkey and   
                  Conor McBride   Productive coprogramming with guarded
                                  recursion  . . . . . . . . . . . . . . . 197--208
                 Ralf Hinze and   
                 Nicolas Wu and   
                 Jeremy Gibbons   Unifying structured recursion schemes    209--220
    Neelakantan R. Krishnaswami   Higher-order functional reactive
                                  programming without spacetime leaks  . . 221--232
                   Alan Jeffrey   Functional reactive programming with
                                  liveness guarantees  . . . . . . . . . . 233--244
               Akimasa Morihata   A short cut to parallelization theorems  245--256
              Emil Axelsson and   
                  Koen Claessen   Using circular programs for higher-order
                                  syntax: functional pearl . . . . . . . . 257--262
             Thibaut Balabonski   Weak optimality, and the meaning of
                                  sharing  . . . . . . . . . . . . . . . . 263--274
          Stephanie Weirich and   
                 Justin Hsu and   
           Richard A. Eisenberg   System FC with explicit kind equality    275--286
            Neil Sculthorpe and   
                Jan Bracker and   
           George Giorgidze and   
                      Andy Gill   The constrained-monad problem  . . . . . 287--298
   Josef David Svenningsson and   
               Bo Joel Svensson   Simple and compositional reification of
                                  monadic embedded languages . . . . . . . 299--304
            Soichiro Hidaka and   
             Kazuyuki Asada and   
               Zhenjiang Hu and   
              Hiroyuki Kato and   
                 Keisuke Nakano   Structural recursion for querying
                                  ordered graphs . . . . . . . . . . . . . 305--318
          Benjamin Delaware and   
             Steven Keuchel and   
             Tom Schrijvers and   
          Bruno C.d.S. Oliveira   Modular monadic meta-theory  . . . . . . 319--330
           Florian Lorenzen and   
               Sebastian Erdweg   Modular and automated type-soundness
                                  verification for language extensions . . 331--342
             Andrew W. Keep and   
                 R. Kent Dybvig   A nanopass framework for commercial
                                  compiler development . . . . . . . . . . 343--350
           Vincent St-Amour and   
                   Neil Toronto   Experience report: applying random
                                  testing to a base type environment . . . 351--356
      Christian L. Petersen and   
            Matthias Gorges and   
            Dustin Dunsmuir and   
             Mark Ansermino and   
                  Guy A. Dumont   Experience report: functional
                                  programming of mHealth applications  . . 357--362
Germán Andrés Delbianco and   
            Aleksandar Nanevski   Hoare-style reasoning with (algebraic)
                                  continuations  . . . . . . . . . . . . . 363--376
                Aaron Turon and   
               Derek Dreyer and   
                  Lars Birkedal   Unifying refinement and Hoare-style
                                  reasoning in a logic for higher-order
                                  concurrency  . . . . . . . . . . . . . . 377--390
                  Adam Chlipala   The bedrock structured programming
                                  system: combining generative
                                  metaprogramming and Hoare logic in an
                                  extensible program verifier  . . . . . . 391--402
               James Cheney and   
                Sam Lindley and   
                  Philip Wadler   A practical theory of
                                  language-integrated query  . . . . . . . 403--416
                  Ronald Garcia   Calculating threesomes, with blame . . . 417--428
            Joshua Dunfield and   
    Neelakantan R. Krishnaswami   Complete and easy bidirectional
                                  typechecking for higher-rank
                                  polymorphism . . . . . . . . . . . . . . 429--442
             J. Ian Johnson and   
            Nicholas Labich and   
              Matthew Might and   
                 David Van Horn   Optimizing abstract abstract machines    443--454
             Catalin Hritcu and   
                John Hughes and   
         Benjamin C. Pierce and   
      Antal Spector-Zabusky and   
       Dimitrios Vytiniotis and   
   Arthur Azevedo de Amorim and   
          Leonidas Lampropoulos   Testing noninterference, quickly . . . . 455--468

ACM SIG{}PLAN Notices
Volume 48, Number 10, October, 2013

              Cristina V. Lopes   Empirical analysis of programming
                                  language adoption  . . . . . . . . . . . 1--18
                     You Li and   
                Zhendong Su and   
              Linzhang Wang and   
                    Xuandong Li   Steering symbolic execution to less
                                  traveled paths . . . . . . . . . . . . . 19--32
             Michael Carbin and   
            Sasa Misailovic and   
               Martin C. Rinard   Verifying quantitative reliability for
                                  programs that execute on unreliable
                                  hardware . . . . . . . . . . . . . . . . 33--52
               Jipeng Huang and   
                Michael D. Bond   Efficient context sensitivity for
                                  dynamic analyses via calling context
                                  uptrees and customized memory management 53--72
                Vlad Ureche and   
             Cristian Talau and   
                 Martin Odersky   Miniboxing: improving the speed to code
                                  size tradeoff in parametric polymorphism
                                  translations . . . . . . . . . . . . . . 73--92
            Rifat Shahriyar and   
  Stephen Michael Blackburn and   
                    Xi Yang and   
            Kathryn S. McKinley   Taking off the gloves with reference
                                  counting Immix . . . . . . . . . . . . . 93--110
                     Guoqing Xu   Resurrector: a tunable object lifetime
                                  profiling technique for optimizing
                                  real-world programs  . . . . . . . . . . 111--130
               Brian Norris and   
                   Brian Demsky   CDSChecker: checking concurrent data
                                  structures written with C/C++ atomics    131--150
            Veselin Raychev and   
              Martin Vechev and   
                 Manu Sridharan   Effective race detection for
                                  event-driven programs  . . . . . . . . . 151--166
        Carl Friedrich Bolz and   
             Lukas Diekmann and   
                 Laurence Tratt   Storage strategies for collections in
                                  dynamically typed languages  . . . . . . 167--182
             Heather Miller and   
             Philipp Haller and   
             Eugene Burmako and   
                 Martin Odersky   Instant pickles: generating
                                  object-oriented pickler combinators for
                                  fast and extensible serialization  . . . 183--202
              Robin Salkeld and   
                Gregor Kiczales   Interacting with dead objects  . . . . . 203--216
           Joe Gibbs Politz and   
         Alejandro Martinez and   
             Matthew Milano and   
              Sumner Warren and   
           Daniel Patterson and   
                 Junsong Li and   
           Anand Chitipothu and   
          Shriram Krishnamurthi   Python: the full monty . . . . . . . . . 217--232
         Prodromos Gerakios and   
           Aggelos Biboudis and   
             Yannis Smaragdakis   Forsaking inheritance: supercharged
                                  delegation in DelphJ . . . . . . . . . . 233--252
         Yannis Smaragdakis and   
         George Balatsouras and   
               George Kastrinis   Set-based pre-processing for points-to
                                  analysis . . . . . . . . . . . . . . . . 253--270
            Sai Deep Tetali and   
              Mohsen Lesani and   
             Rupak Majumdar and   
                 Todd Millstein   MrCrypt: static analysis for secure
                                  cloud computations . . . . . . . . . . . 271--286
         Christian DeLozier and   
          Richard Eisenberg and   
        Santosh Nagarakatte and   
        Peter-Michael Osera and   
          Milo M. K. Martin and   
                Steve Zdancewic   Ironclad C++: a library-augmented
                                  type-safe subset of C++  . . . . . . . . 287--304
            Gregor Richards and   
           Christian Hammer and   
   Francesco Zappa Nardelli and   
         Suresh Jagannathan and   
                      Jan Vitek   Flexible access control for JavaScript   305--322
            Asger Feldthaus and   
           Anders Mòller   Semi-automatic rename refactoring for
                                  JavaScript . . . . . . . . . . . . . . . 323--338
            Veselin Raychev and   
           Max Schäfer and   
             Manu Sridharan and   
                  Martin Vechev   Refactoring with synthesis . . . . . . . 339--354
            Kristof Du Bois and   
         Jennifer B. Sartor and   
              Stijn Eyerman and   
                Lieven Eeckhout   Bottle graphs: visualizing scalability
                                  bottlenecks in multi-threaded
                                  applications . . . . . . . . . . . . . . 355--372
        Daniele Cono D'Elia and   
               Camil Demetrescu   Ball--Larus path profiling across
                                  multiple loop iterations . . . . . . . . 373--390
               Rahul Sharma and   
              Eric Schkufza and   
         Berkeley Churchill and   
                     Alex Aiken   Data-driven equivalence checking . . . . 391--406
             Etienne Kneuss and   
                 Ivan Kuraj and   
              Viktor Kuncak and   
                 Philippe Suter   Synthesis modulo recursive functions . . 407--426
                    Yao Shi and   
           Bernard Blackham and   
                  Gernot Heiser   Code optimizations using formally
                                  verified properties  . . . . . . . . . . 427--442
                Isil Dillig and   
              Thomas Dillig and   
                  Boyang Li and   
                   Ken McMillan   Inductive invariant generation via
                                  abductive inference  . . . . . . . . . . 443--456
              Michael Hoppe and   
               Stefan Hanenberg   Do developers benefit from generic
                                  types?: an empirical comparison of
                                  generic and raw types in Java  . . . . . 457--474
          Christos Dimoulas and   
       Robert Bruce Findler and   
             Matthias Felleisen   Option contracts . . . . . . . . . . . . 475--494
             Sean Treichler and   
              Michael Bauer and   
                     Alex Aiken   Language support for dynamic,
                                  hierarchical data partitioning . . . . . 495--514
         George Balatsouras and   
             Yannis Smaragdakis   Class hierarchy complementation: soundly
                                  completing a partial type graph  . . . . 515--532
       Kaushik Ravichandran and   
                  Santosh Pande   Multiverse: efficiently supporting
                                  distributed high-level speculation . . . 533--552
             Sylvan Clebsch and   
            Sophia Drossopoulou   Fully concurrent garbage collection of
                                  actors on many-core machines . . . . . . 553--570
               Jisheng Zhao and   
        Roberto Lublinerman and   
           Zoran Budimli\'c and   
           Swarat Chaudhuri and   
                   Vivek Sarkar   Isolation for nested task parallelism    571--588
                 Omer Tripp and   
              Eric Koskinen and   
                    Mooly Sagiv   Turning nondeterminism into parallelism  589--604
               Nathan Chong and   
      Alastair F. Donaldson and   
           Paul H. J. Kelly and   
              Jeroen Ketema and   
                    Shaz Qadeer   Barrier invariants: a shared state
                                  abstraction for the analysis of
                                  data-dependent GPU kernels . . . . . . . 605--622
                Wontae Choi and   
              George Necula and   
                    Koushik Sen   Guided GUI testing of Android apps with
                                  minimal restart and approximate learning 623--640
              Tanzirul Azim and   
                 Iulian Neamtiu   Targeted and depth-first exploration for
                                  systematic testing of Android apps . . . 641--660
                Aman Kansal and   
              Scott Saponas and   
       A. J. Bernheim Brush and   
        Kathryn S. McKinley and   
             Todd Mytkowicz and   
                    Ryder Ziola   The latency, accuracy, and battery (LAB)
                                  abstraction: programmer productivity and
                                  energy efficiency for continuous mobile
                                  context sensing  . . . . . . . . . . . . 661--676
                 Tom Bergan and   
                  Luis Ceze and   
                   Dan Grossman   Input-covering schedules for
                                  multithreaded programs . . . . . . . . . 677--692
            Michael D. Bond and   
            Milind Kulkarni and   
                    Man Cao and   
               Minjia Zhang and   
         Meisam Fathi Salmi and   
           Swarnendu Biswas and   
            Aritra Sengupta and   
                   Jipeng Huang   OCTET: capturing and controlling
                                  cross-thread dependences efficiently . . 693--712
                Albert Noll and   
                   Thomas Gross   Online feedback-directed optimizations
                                  for parallel Java code . . . . . . . . . 713--728
             Stephan Herhut and   
          Richard L. Hudson and   
          Tatiana Shpeisman and   
               Jaswanth Sreeram   River Trail: a path to parallelism in
                                  JavaScript . . . . . . . . . . . . . . . 729--744
       Suparna Bhattacharya and   
            Kanchi Gopinath and   
            Mangala Gowri Nanda   Combining concern input with program
                                  analysis for bloat detection . . . . . . 745--764
             Lingming Zhang and   
                   Lu Zhang and   
               Sarfraz Khurshid   Injecting mechanical faults to localize
                                  developer faults for evolving software   765--784
              Dongdong Deng and   
                  Wei Zhang and   
                        Shan Lu   Efficient concurrency-bug detection
                                  across inputs  . . . . . . . . . . . . . 785--802
                  Hao Zhong and   
                    Zhendong Su   Detecting API documentation errors . . . 803--816
                    Tao Bao and   
                  Xiangyu Zhang   On-the-fly detection of instability
                                  problems in floating-point program
                                  execution  . . . . . . . . . . . . . . . 817--832
         Katherine E. Coons and   
            Madan Musuvathi and   
            Kathryn S. McKinley   Bounded partial-order reduction  . . . . 833--848
              Nick Mitchell and   
               Peter F. Sweeney   On-the-fly capacity planning . . . . . . 849--866
           Viktor Vafeiadis and   
                Chinmay Narayan   Relaxed separation logic: a program
                                  logic for C11 concurrency  . . . . . . . 867--884

ACM SIG{}PLAN Notices
Volume 48, Number 11, November, 2013

                   Erez Petrank   Safety-first approach to memory
                                  consistency models . . . . . . . . . . . 1--2
              Philip Reames and   
                  George Necula   Towards hinted collection: annotations
                                  for decreasing garbage collector pause
                                  times  . . . . . . . . . . . . . . . . . 3--14
            Kazuya Morikawa and   
             Tomoharu Ugawa and   
                 Hideya Iwasaki   Adaptive scanning reduces sweep time for
                                  the Lisp2 mark-compact garbage collector 15--26
             David R. White and   
              Jeremy Singer and   
         Jonathan M. Aitken and   
               Richard E. Jones   Control theory for principled heap
                                  sizing . . . . . . . . . . . . . . . . . 27--38
                Jacob Brock and   
                Xiaoming Gu and   
                    Bin Bao and   
                      Chen Ding   Pacman: program-assisted cache
                                  management . . . . . . . . . . . . . . . 39--50
                   Yan Wang and   
             Iulian Neamtiu and   
                    Rajiv Gupta   Generating sound and effective memory
                                  debuggers  . . . . . . . . . . . . . . . 51--62
             Tomas Kalibera and   
                  Richard Jones   Rigorous benchmarking in reasonable time 63--74
              Martin Aigner and   
            Christoph M. Kirsch   ACDC: towards a universal mutator for
                                  benchmarking heap management systems . . 75--84
                    Lian Li and   
         Cristina Cifuentes and   
                  Nathan Keynes   Precise and scalable context-sensitive
                                  pointer analysis via value flow graph    85--96
            Tristan Ravitch and   
                     Ben Liblit   Analyzing memory ownership patterns in C
                                  libraries  . . . . . . . . . . . . . . . 97--108
            Nathan P. Ricci and   
            Samuel Z. Guyer and   
               J. Eliot B. Moss   Elephant Tracks: portable production of
                                  complete and precise GC traces . . . . . 109--118
                  Yingyi Bu and   
             Vinayak Borkar and   
                 Guoqing Xu and   
               Michael J. Carey   A bloat-aware design for big data
                                  applications . . . . . . . . . . . . . . 119--130

ACM SIG{}PLAN Notices
Volume 48, Number 12, December, 2013

               Johan Ankner and   
       Josef David Svenningsson   An EDSL approach to high performance
                                  Haskell programming  . . . . . . . . . . 1--12
     Jean-Philippe Bernardy and   
              Nicolas Pouillard   Names for free: polymorphic views of
                                  names and binders  . . . . . . . . . . . 13--24
               Richard Bird and   
             Jeremy Gibbons and   
              Stefan Mehner and   
     Janis Voigtländer and   
                 Tom Schrijvers   Understanding idiomatic traversals
                                  backwards and forwards . . . . . . . . . 25--36
             Mario Bla\vzevi\'c   Adding structure to monoids: thus
                                  hopefully ending Haskell's string type
                                  confusion  . . . . . . . . . . . . . . . 37--46
              Koen Claessen and   
                Michal H. Palka   Splittable pseudorandom number
                                  generators using cryptographic hashing   47--58
              Oleg Kiselyov and   
                  Amr Sabry and   
                 Cameron Swords   Extensible effects: an alternative to
                                  monad transformers . . . . . . . . . . . 59--70
                Joe Leslie-Hurd   Maintaining verified software  . . . . . 71--80
                Sam Lindley and   
                  Conor McBride   Hasochism: the pleasure and pain of
                                  dependently typed Haskell programming    81--92
              Ben Lippmeier and   
   Manuel M. T. Chakravarty and   
            Gabriele Keller and   
                  Amos Robinson   Data flow fusion with series expressions
                                  in Haskell . . . . . . . . . . . . . . . 93--104
                    Hai Liu and   
                  Neal Glew and   
              Leaf Petersen and   
               Todd A. Anderson   The Intel labs Haskell research compiler 105--116
             Atze van der Ploeg   Monadic functional reactive programming  117--128
    Andreas Richard Voellmy and   
              Junchang Wang and   
                 Paul Hudak and   
              Kazuhiko Yamamoto   Mio: a high-performance multicore IO
                                  manager for GHC  . . . . . . . . . . . . 129--140
          Peter M. Wortmann and   
                     David Duke   Causality of optimized Haskell: what is
                                  burning our cycles?  . . . . . . . . . . 141--152


ACM SIG{}PLAN Notices
Volume 49, Number 1, January, 2014

                  Lars Birkedal   Modular reasoning about concurrent
                                  higher-order imperative programs . . . . 1--1
            Patrick` Cousot and   
                  Radhia Cousot   A Galois connection calculus for
                                  abstract interpretation  . . . . . . . . 3--4
          Giuseppe Castagna and   
                 Kim Nguyen and   
                   Zhiwu Xu and   
              Hyeonseung Im and   
         Sergue\"\i Lenglet and   
                  Luca Padovani   Polymorphic functions with set-theoretic
                                  types: part 1: syntax, semantics, and
                                  evaluation . . . . . . . . . . . . . . . 5--17
           Scott Kilpatrick and   
               Derek Dreyer and   
         Simon Peyton Jones and   
                   Simon Marlow   Backpack: retrofitting Haskell with
                                  interfaces . . . . . . . . . . . . . . . 19--31
           Chris Casinghino and   
       Vilhelm Sjöberg and   
              Stephanie Weirich   Combining proofs and programs in a
                                  dependently typed language . . . . . . . 33--45
           Stefano Dissegna and   
          Francesco Logozzo and   
              Francesco Ranzato   Tracing compilation by abstract
                                  interpretation . . . . . . . . . . . . . 47--59
           Steven J. Ramsay and   
        Robin P. Neatherway and   
                 C.-H. Luke Ong   A type-directed abstraction refinement
                                  approach to higher-order model checking  61--72
             Devin Coughlin and   
             Bor-Yuh Evan Chang   Fissile type analysis: modular checking
                                  of almost everywhere invariants  . . . . 73--85
               Martin Bodin and   
         Arthur Chargueraud and   
          Daniele Filaretti and   
           Philippa Gardner and   
             Sergio Maffeis and   
         Daiva Naudziuniene and   
               Alan Schmitt and   
                   Gareth Smith   A trusted mechanised JavaScript
                                  specification  . . . . . . . . . . . . . 87--100
               Robbert Krebbers   An operational and axiomatic semantics
                                  for non-determinism and sequence points
                                  in C . . . . . . . . . . . . . . . . . . 101--112
      Carolyn Jane Anderson and   
                Nate Foster and   
                 Arjun Guha and   
      Jean-Baptiste Jeannin and   
               Dexter Kozen and   
           Cole Schlesinger and   
                   David Walker   NetKAT: semantic foundations for
                                  networks . . . . . . . . . . . . . . . . 113--126
               Rahul Sharma and   
             Aditya V. Nori and   
                     Alex Aiken   Bias-variance tradeoffs in program
                                  analysis . . . . . . . . . . . . . . . . 127--137
              Vijay D'Silva and   
             Leopold Haller and   
                Daniel Kroening   Abstract satisfaction  . . . . . . . . . 139--150
              Azadeh Farzan and   
            Zachary Kincaid and   
               Andreas Podelski   Proofs that count  . . . . . . . . . . . 151--164
   Arthur Azevedo de Amorim and   
             Nathan Collins and   
         André DeHon and   
           Delphine Demange and   
             Catalin Hritcu and   
            David Pichardie and   
         Benjamin C. Pierce and   
              Randy Pollack and   
                 Andrew Tolmach   A verified information-flow architecture 165--178
               Ramana Kumar and   
           Magnus O. Myreen and   
            Michael Norrish and   
                    Scott Owens   CakeML: a verified implementation of ML  179--191
              Gilles Barthe and   
      Cédric Fournet and   
   Benjamin Grégoire and   
          Pierre-Yves Strub and   
               Nikhil Swamy and   
Santiago Zanella-Béguelin   Probabilistic relational verification
                                  for cryptographic implementations  . . . 193--205
           Swarat Chaudhuri and   
            Martin Clochard and   
           Armando Solar-Lezama   Bridging boolean and quantitative
                                  synthesis using smoothed proof search    207--220
            Tewodros Beyene and   
           Swarat Chaudhuri and   
            Corneliu Popeea and   
             Andrey Rybalchenko   A constraint-based approach to solving
                                  games on infinite graphs . . . . . . . . 221--233
               Eva Darulova and   
                  Viktor Kuncak   Sound compilation of reals . . . . . . . 235--248
         Gérard Huet and   
                  Hugo Herbelin   30 years of research and development
                                  around Coq . . . . . . . . . . . . . . . 249--249
            Stephen Brookes and   
           Peter W. O'Hearn and   
                     Uday Reddy   The essence of Reynolds  . . . . . . . . 251--255
              Lindsey Kuper and   
                Aaron Turon and   
Neelakantan R. Krishnaswami and   
                 Ryan R. Newton   Freeze after writing:
                                  quasi-deterministic parallel programming
                                  with LVars . . . . . . . . . . . . . . . 257--270
       Sebastian Burckhardt and   
             Alexey Gotsman and   
              Hongseok Yang and   
                 Marek Zawirski   Replicated data types: specification,
                                  verification, optimality . . . . . . . . 271--284
            Ahmed Bouajjani and   
            Constantin Enea and   
                      Jad Hamza   Verifying eventual consistency of
                                  optimistic replication systems . . . . . 285--296
               Ugo Dal Lago and   
           Davide Sangiorgi and   
                Michele Alberti   On coinductive equivalences for
                                  higher-order probabilistic functional
                                  programs . . . . . . . . . . . . . . . . 297--308
             Thomas Ehrhard and   
           Christine Tasson and   
                 Michele Pagani   Probabilistic coherence spaces are fully
                                  abstract for probabilistic PCF . . . . . 309--320
           Andrew D. Gordon and   
              Thore Graepel and   
            Nicolas Rolland and   
              Claudio Russo and   
         Johannes Borgstrom and   
                    John Guiver   Tabular: a schema-driven probabilistic
                                  programming language . . . . . . . . . . 321--334
                Ilya Sergey and   
       Dimitrios Vytiniotis and   
             Simon Peyton Jones   Modular, higher-order cardinality
                                  analysis in theory and practice  . . . . 335--347
              Stephen Chang and   
             Matthias Felleisen   Profiling for laziness . . . . . . . . . 349--360
                Andrew Cave and   
         Francisco Ferreira and   
         Prakash Panangaden and   
               Brigitte Pientka   Fair reactive programming  . . . . . . . 361--372
             Parosh Abdulla and   
             Stavros Aronis and   
              Bengt Jonsson and   
           Konstantinos Sagonas   Optimal dynamic partial order reduction  373--384
            Shachar Itzhaky and   
           Anindya Banerjee and   
              Neil Immerman and   
                  Ori Lahav and   
        Aleksandar Nanevski and   
                    Mooly Sagiv   Modular reasoning about heap paths via
                                  effectively propositional formulas . . . 385--396
               Nathan Chong and   
      Alastair F. Donaldson and   
                  Jeroen Ketema   A sound and complete abstraction for
                                  reasoning about parallel prefix sums . . 397--409
              Andrew Miller and   
              Michael Hicks and   
              Jonathan Katz and   
                     Elaine Shi   Authenticated data structures,
                                  generically  . . . . . . . . . . . . . . 411--423
               Nikhil Swamy and   
             Cedric Fournet and   
              Aseem Rastogi and   
      Karthikeyan Bhargavan and   
                  Juan Chen and   
          Pierre-Yves Strub and   
                  Gavin Bierman   Gradual typing embedded securely in
                                  JavaScript . . . . . . . . . . . . . . . 425--437
                   Fan Long and   
 Stelios Sidiroglou-Douskos and   
               Deokhwan Kim and   
                  Martin Rinard   Sound input filter generation for
                                  integer overflow errors  . . . . . . . . 439--452
          James Brotherston and   
                  Jules Villard   Parametric completeness for separation
                                  theories . . . . . . . . . . . . . . . . 453--464
      Zhé Hóu and   
            Ranald Clouston and   
         Rajeev Goré and   
                      Alwen Tiu   Proof search for propositional abstract
                                  separation logics via labelled sequents  465--476
                Wonyeol Lee and   
                   Sungwoo Park   A proof system for separation logic with
                                  magic wand . . . . . . . . . . . . . . . 477--490
                   Robert Atkey   From parametricity to conservation laws,
                                  via Noether's theorem  . . . . . . . . . 491--502
               Robert Atkey and   
                 Neil Ghani and   
                Patricia Johann   A relationally parametric model of
                                  dependent type theory  . . . . . . . . . 503--515
        Andrzej S. Murawski and   
               Nikos Tzevelekos   Game semantics for interface
                                  middleweight Java  . . . . . . . . . . . 517--528
           Bertrand Jeannet and   
            Peter Schrammel and   
        Sriram Sankaranarayanan   Abstract acceleration of general linear
                                  loops  . . . . . . . . . . . . . . . . . 529--540
             Loris D'Antoni and   
                  Margus Veanes   Minimization of symbolic automata  . . . 541--553
           Swarat Chaudhuri and   
              Azadeh Farzan and   
                Zachary Kincaid   Consistency analysis of decision-making
                                  programs . . . . . . . . . . . . . . . . 555--567
              Danfeng Zhang and   
                Andrew C. Myers   Toward general diagnosis of static
                                  errors . . . . . . . . . . . . . . . . . 569--581
                 Sheng Chen and   
                   Martin Erwig   Counter-factual typing for debugging
                                  type errors  . . . . . . . . . . . . . . 583--594
                  Udi Boker and   
        Thomas A. Henzinger and   
             Arjun Radhakrishna   Battery transition systems . . . . . . . 595--606
                      Yi Li and   
           Aws Albarghouthi and   
            Zachary Kincaid and   
             Arie Gurfinkel and   
                 Marsha Chechik   Symbolic optimization with SMT solvers   607--618
                Nick Benton and   
             Martin Hofmann and   
                    Vivek Nigam   Abstract effects and proof-relevant
                                  logical relations  . . . . . . . . . . . 619--631
              Shin-ya Katsumata   Parametric effect monads and semantics
                                  of effect systems  . . . . . . . . . . . 633--645
             Michele Pagani and   
             Peter Selinger and   
              Beno\^\it Valiron   Applying quantitative semantics to
                                  higher-order quantum computing . . . . . 647--658
        Beniamino Accattoli and   
            Eduardo Bonelli and   
               Delia Kesner and   
                Carlos Lombardi   A nonstandard standardization theorem    659--670
       Richard A. Eisenberg and   
       Dimitrios Vytiniotis and   
         Simon Peyton Jones and   
              Stephanie Weirich   Closed type families with overlapping
                                  equations  . . . . . . . . . . . . . . . 671--683

ACM SIG{}PLAN Notices
Volume 49, Number 2, February, 2014

         Benjamin S. Lerner and   
           Joe Gibbs Politz and   
                 Arjun Guha and   
          Shriram Krishnamurthi   TeJaS: retrofitting type systems for
                                  JavaScript . . . . . . . . . . . . . . . 1--16
            Vineeth Kashyap and   
             John Sarracino and   
                John Wagner and   
             Ben Wiedermann and   
                  Ben Hardekopf   Type refinement for static analysis of
                                  JavaScript . . . . . . . . . . . . . . . 17--26
            Esteban Allende and   
                Johan Fabry and   
             Éric Tanter   Cast insertion strategies for
                                  gradually-typed objects  . . . . . . . . 27--36
        Madhukar N. Kedlaya and   
               Jared Roesch and   
           Behnam Robatmili and   
            Mehrdad Reshadi and   
                  Ben Hardekopf   Improved type specialization for dynamic
                                  scripting languages  . . . . . . . . . . 37--48
              Matthias Keil and   
                 Peter Thiemann   Efficient dynamic access analysis using
                                  JavaScript proxies . . . . . . . . . . . 49--60
              Marcel Weiher and   
              Robert Hirschfeld   Polymorphic identifiers: uniform
                                  resource access in Objective-Smalltalk   61--72
              Changhee Park and   
                 Hongki Lee and   
                   Sukyoung Ryu   All about the with statement in
                                  JavaScript: removing with statements in
                                  JavaScript applications  . . . . . . . . 73--84
         Nurudeen A. Lameed and   
              Laurie J. Hendren   Optimizing MATLAB \tt feval with dynamic
                                  techniques . . . . . . . . . . . . . . . 85--96
                  Danny Yoo and   
          Shriram Krishnamurthi   Whalesong: running Racket in the browser 97--108

ACM SIG{}PLAN Notices
Volume 49, Number 3, March, 2014

                Rastislav Bodik   Modeling biology with solver-aided
                                  programming languages  . . . . . . . . . 1--2
           Sebastian Erdweg and   
                   Felix Rieger   A framework for extensible languages . . 3--12
                  Matthew Flatt   Submodules in Racket: you want it when,
                                  again? . . . . . . . . . . . . . . . . . 13--22
                Robert Dyer and   
              Hridesh Rajan and   
                 Tien N. Nguyen   Declarative visitors to ease
                                  fine-grained source code mining with
                                  full history on billions of AST nodes    23--32
             Yuriy Solodkyy and   
           Gabriel Dos Reis and   
              Bjarne Stroustrup   Open pattern matching for C++  . . . . . 33--42
               Marko Martin and   
                Mira Mezini and   
               Sebastian Erdweg   Template constructors for reusable
                                  object initialization  . . . . . . . . . 43--52
         Julien Richard-Foy and   
             Olivier Barais and   
Jean-Marc Jézéquel   Efficient high-level abstractions for
                                  Web programming  . . . . . . . . . . . . 53--60
         Prodromos Gerakios and   
           Aggelos Biboudis and   
             Yannis Smaragdakis   Reified type parameters using Java
                                  annotations  . . . . . . . . . . . . . . 61--64
             Sandro Schulze and   
           Jörg Liebig and   
             Janet Siegmund and   
                      Sven Apel   Does the discipline of preprocessor
                                  annotations matter?: a controlled
                                  experiment . . . . . . . . . . . . . . . 65--74
     Flávio Medeiros and   
      Márcio Ribeiro and   
                    Rohit Gheyi   Investigating preprocessor-based syntax
                                  errors . . . . . . . . . . . . . . . . . 75--84
                Dean Kramer and   
              Samia Oussena and   
          Peter Komisarczuk and   
                     Tony Clark   Using document-oriented GUIs in dynamic
                                  software product lines . . . . . . . . . 85--94
           Norbert Siegmund and   
        Alexander von Rhein and   
                      Sven Apel   Family-based performance measurement . . 95--104
         Lukás Marek and   
               Stephen Kell and   
                 Yudi Zheng and   
       Lubomír Bulej and   
              Walter Binder and   
                  Petr Tuma and   
            Danilo Ansaloni and   
           Aibek Sarimbekov and   
                   Andreas Sewe   ShadowVM: robust and comprehensive
                                  dynamic program analysis for the Java
                                  platform . . . . . . . . . . . . . . . . 105--114
          Sergiy Kolesnikov and   
        Alexander von Rhein and   
               Claus Hunsen and   
                      Sven Apel   A comparison of product-based,
                                  feature-based, and family-based type
                                  checking . . . . . . . . . . . . . . . . 115--124
             Georg Ofenbeck and   
                Tiark Rompf and   
              Alen Stojanov and   
             Martin Odersky and   
            Markus Püschel   Spiral in Scala: towards the systematic
                                  construction of generators for
                                  performance libraries  . . . . . . . . . 125--134
               Peter Chapin and   
           Christian Skalka and   
                Scott Smith and   
                 Michael Watson   Scalaness/nesT: type specialized staged
                                  programming for sensor networks  . . . . 135--144
          Arvind K. Sujeeth and   
             Austin Gibbons and   
             Kevin J. Brown and   
             HyoukJoong Lee and   
                Tiark Rompf and   
             Martin Odersky and   
                 Kunle Olukotun   Forge: generating a high performance DSL
                                  implementation from a declarative
                                  specification  . . . . . . . . . . . . . 145--154
             Darya Kurilova and   
                  Derek Rayside   On the simplicity of synthesizing linked
                                  data structure operations  . . . . . . . 155--158
            Deepak Dhungana and   
            Andreas Falkner and   
           Alois Haselböck   Generation of conjoint domain models for
                                  system-of-systems  . . . . . . . . . . . 159--168
   Fábio Paulo Basso and   
     Raquel Mainardi Pillat and   
  Toacy Cavalcante Oliveira and   
            Leandro Buss Becker   Supporting large scale model
                                  transformation reuse . . . . . . . . . . 169--178
                Kyoungho An and   
            Takayuki Kuroda and   
          Aniroddha Gokhale and   
               Sumant Tambe and   
                 Andrea Sorbini   Model-driven generative framework for
                                  automated OMG DDS performance testing in
                                  the cloud  . . . . . . . . . . . . . . . 179--182

ACM SIG{}PLAN Notices
Volume 49, Number 4S, April, 2014

                      Jan Vitek   SIGPLAN Chair's report . . . . . . . . . 1--1
                 Jeremy Gibbons   SIGPLAN Vice-Chair's report  . . . . . . 2--2
                   Andrew Black   SIGPLAN Secretary's report . . . . . . . 3--3
              Cristina V. Lopes   SIGPLAN Treasurer's report . . . . . . . 4--4
                   Derek Dreyer   SIGPLAN awards . . . . . . . . . . . . . 5--7
               Julia Lawall and   
              Cristina V. Lopes   SIGPLAN Professional Activities
                                  Committee Report . . . . . . . . . . . . 8--8
                   Michael Hind   SIGPLAN Research Highlights Annual
                                  Report . . . . . . . . . . . . . . . . . 9--9
                   Peter Sewell   POPL 2014 Program Chair's report . . . . 10--26
              Cristina V. Lopes   The OOPSLA two-phase review process  . . 27--32
                 Hans Boehm and   
              Jack Davidson and   
            Kathleen Fisher and   
            Cormac Flanagan and   
             Jeremy Gibbons and   
                  Mary Hall and   
              Graham Hutton and   
                David Padua and   
                  Frank Tip and   
                  Jan Vitek and   
                  Philip Wadler   Practices of PLDI  . . . . . . . . . . . 33--38
      Manuel Fähndrich and   
              Francesco Logozzo   SAS2013 artifact submission experience
                                  report . . . . . . . . . . . . . . . . . 39--40
                  David Gay and   
               Philip Levis and   
          Robert von Behren and   
                 Matt Welsh and   
                Eric Brewer and   
                   David Culler   The nesC language: a holistic approach
                                  to networked embedded systems  . . . . . 41--51
           Didier Le Botlan and   
             Didier Rémy   MLF: raising ML to the power of System F 52--63
                 Tim Harris and   
                    Keir Fraser   Language support for lightweight
                                  transactions . . . . . . . . . . . . . . 64--78
        Thomas A. Henzinger and   
               Ranjit Jhala and   
             Rupak Majumdar and   
            Kenneth L. McMillan   Abstractions from proofs . . . . . . . . 79--91

ACM SIG{}PLAN Notices
Volume 49, Number 5, May, 2014

             Prasad A. Kulkarni   Energy efficient data access techniques  1--1
                  Tom Spink and   
             Harry Wagstaff and   
          Björn Franke and   
                   Nigel Topham   Efficient code generation in a
                                  region-based dynamic binary translator   3--12
               Roland Lezuo and   
          Philipp Paulweber and   
                  Andreas Krall   CASM: optimized compilation of abstract
                                  state machines . . . . . . . . . . . . . 13--22
Roberto Castañeda Lozano and   
              Mats Carlsson and   
     Gabriel Hjort Blindell and   
              Christian Schulte   Combinatorial spill code optimization
                                  and ultimate coalescing  . . . . . . . . 23--32
  Clément Ballabriga and   
              Lee Kee Chong and   
             Abhik Roychoudhury   Cache-related preemption delay analysis
                                  for FIFO caches  . . . . . . . . . . . . 33--42
               Julien Henry and   
             Mihail Asavoae and   
             David Monniaux and   
                Claire Ma\"\iza   How to compute worst-case execution time
                                  by optimization modulo theory and a
                                  clever encoding of program semantics . . 43--52
             Wenguang Zheng and   
                         Hui Wu   WCET: aware dynamic instruction cache
                                  locking  . . . . . . . . . . . . . . . . 53--62
         Luiz G. A. Martins and   
              Ricardo Nobre and   
     Alexandre C. B. Delbem and   
            Eduardo Marques and   
      João M. P. Cardoso   Exploration of compiler optimization
                                  sequences using clustering-based
                                  selection  . . . . . . . . . . . . . . . 63--72
         Kiran Chandramohan and   
          Michael F. P. O'Boyle   Partitioning data-parallel programs for
                                  heterogeneous MPSoCs: time and energy
                                  design space exploration . . . . . . . . 73--82
                      Minyi Guo   Energy efficient data access and storage
                                  through HW/SW co-design  . . . . . . . . 83--83
Tobias J. K. Edler von Koch and   
          Björn Franke and   
          Pranav Bhandarkar and   
              Anshuman Dasgupta   Exploiting function similarity for code
                                  size reduction . . . . . . . . . . . . . 85--94
                  Pooja Roy and   
               Rajarshi Ray and   
              Chundong Wang and   
                  Weng Fai Wong   ASAC: automatic sensitivity analysis for
                                  approximate computing  . . . . . . . . . 95--104
          Sandeep Chaudhary and   
     Sebastian Fischmeister and   
                        Lin Tan   em-SPADE: a compiler extension for
                                  checking rules extracted from processor
                                  specifications . . . . . . . . . . . . . 105--114
            Ulysse Beaugnon and   
             Alexey Kravets and   
         Sven van Haastregt and   
            Riyadh Baghdadi and   
                David Tweed and   
                Javed Absar and   
                Anton Lokhmotov   VOBLA: a vehicle for optimized basic
                                  linear algebra . . . . . . . . . . . . . 115--124
            Vagelis Bebelis and   
              Pascal Fradet and   
                  Alain Girault   A framework to schedule parametric
                                  dataflow applications on many-core
                                  platforms  . . . . . . . . . . . . . . . 125--134
                Jinyong Lee and   
                Jongwon Lee and   
                Jongeun Lee and   
                  Yunheung Paek   Improving performance of loops on
                                  DIAM-based VLIW architectures  . . . . . 135--144
    Joseph G. Wingbermuehle and   
              Ron K. Cytron and   
           Roger D. Chamberlain   Superoptimization of memory subsystems   145--154
               Hongjune Kim and   
             Seonmyeong Bak and   
                     Jaejin Lee   Lightweight and block-level concurrent
                                  sweeping for JavaScript garbage
                                  collection . . . . . . . . . . . . . . . 155--164

ACM SIG{}PLAN Notices
Volume 49, Number 6, June, 2014

                    David Padua   What exactly is inexact computation good
                                  for? . . . . . . . . . . . . . . . . . . 1--1
              Lindsey Kuper and   
                 Aaron Todd and   
        Sam Tobin-Hochstadt and   
                 Ryan R. Newton   Taming the parallel effect zoo:
                                  extensible deterministic parallelism
                                  with LVish . . . . . . . . . . . . . . . 2--14
            Rishi Surendran and   
             Raghavan Raman and   
           Swarat Chaudhuri and   
        John Mellor-Crummey and   
                   Vivek Sarkar   Test-driven repair of data races in
                                  structured parallel programs . . . . . . 15--25
                 Sven Stork and   
                 Karl Naden and   
            Joshua Sunshine and   
                Manual Mohr and   
            Alcides Fonseca and   
              Paulo Marques and   
               Jonathan Aldrich   Æminium: a permission based
                                  concurrent-by-default programming
                                  language approach  . . . . . . . . . . . 26--26
         Suresh Jagannathan and   
            Vincent Laporte and   
              Gustavo Petri and   
            David Pichardie and   
                      Jan Vitek   Atomicity refinement for verified
                                  compilation  . . . . . . . . . . . . . . 27--27
           Swarnendu Biswas and   
               Jipeng Huang and   
            Aritra Sengupta and   
                Michael D. Bond   DoubleChecker: efficient sound and
                                  precise atomicity checking . . . . . . . 28--39
               Jade Alglave and   
               Luc Maranget and   
             Michael Tautschnig   Herding cats: modelling, simulation,
                                  testing, and data-mining for weak memory 40--40
                Tiark Rompf and   
          Arvind K. Sujeeth and   
             Kevin J. Brown and   
             HyoukJoong Lee and   
               Hassan Chafi and   
                 Kunle Olukotun   Surgical precision JIT compilers . . . . 41--52
              Eric Schkufza and   
               Rahul Sharma and   
                     Alex Aiken   Stochastic optimization of
                                  floating-point programs with tunable
                                  precision  . . . . . . . . . . . . . . . 53--64
                Kevin Stock and   
                Martin Kong and   
             Tobias Grosser and   
    Louis-Noël Pouchet and   
           Fabrice Rastello and   
               J. Ramanujam and   
                  P. Sadayappan   A framework for enhancing data reuse via
                                  associative reordering . . . . . . . . . 65--76
             Zachary DeVito and   
             Daniel Ritchie and   
                Matt Fisher and   
                 Alex Aiken and   
                   Pat Hanrahan   First-class runtime generation of
                                  high-performance types using exotypes    77--88
               Ben Greenman and   
          Fabian Muehlboeck and   
                      Ross Tate   Getting F-bounded polymorphism into
                                  shape  . . . . . . . . . . . . . . . . . 89--99
                     Axel Simon   Optimal inference of fields in
                                  row-polymorphic records  . . . . . . . . 100--111
             Adrian Sampson and   
            Pavel Panchekha and   
             Todd Mytkowicz and   
        Kathryn S. McKinley and   
               Dan Grossman and   
                      Luis Ceze   Expressing and verifying probabilistic
                                  assertions . . . . . . . . . . . . . . . 112--122
              Mateus Borges and   
            Antonio Filieri and   
           Marcelo d'Amorim and   
        Corina S. Pasareanu and   
                  Willem Visser   Compositional solution space
                                  quantification for probabilistic
                                  software analysis  . . . . . . . . . . . 123--132
              Chung-Kil Hur and   
             Aditya V. Nori and   
         Sriram K. Rajamani and   
                   Selva Samuel   Slicing probabilistic programs . . . . . 133--144
                  Yufei Cai and   
         Paolo G. Giarrusso and   
            Tillmann Rendel and   
                Klaus Ostermann   A theory of changes for higher-order
                                  languages: incrementalizing $ \lambda
                                  $-calculi by static differentiation  . . 145--155
          Matthew A. Hammer and   
             Khoo Yit Phang and   
              Michael Hicks and   
              Jeffrey S. Foster   Adapton: composable, demand-driven
                                  incremental computation  . . . . . . . . 156--166
                   Min Aung and   
              Susan Horwitz and   
                Rich Joiner and   
                    Thomas Reps   Specialization slicing . . . . . . . . . 167--167
                     Tony Hoare   Laws of concurrent programming . . . . . 168--168
          Srinath Sridharan and   
                Gagan Gupta and   
               Gurindar S. Sohi   Adaptive, efficient, parallel execution
                                  of parallel programs . . . . . . . . . . 169--180
                Gagan Gupta and   
          Srinath Sridharan and   
               Gurindar S. Sohi   Globally precise-restartable execution
                                  of parallel programs . . . . . . . . . . 181--192
              Subrata Mitra and   
             Ignacio Laguna and   
                Dong H. Ahn and   
             Saurabh Bagchi and   
              Martin Schulz and   
                   Todd Gamblin   Accurate application progress analysis
                                  for large-scale parallel debugging . . . 193--203
          Sanket Tavarageri and   
      Sriram Krishnamoorthy and   
                  P. Sadayappan   Compiler-assisted detection of transient
                                  memory errors  . . . . . . . . . . . . . 204--215
                      Vu Le and   
            Mehrdad Afshari and   
                    Zhendong Su   Compiler validation via equivalence
                                  modulo inputs  . . . . . . . . . . . . . 216--226
                   Fan Long and   
 Stelios Sidiroglou-Douskos and   
                  Martin Rinard   Automatic runtime error repair and
                                  containment via recovery shepherding . . 227--238
                  Xin Zhang and   
                Ravi Mangal and   
               Radu Grigore and   
                 Mayur Naik and   
                  Hongseok Yang   On abstraction refinement for program
                                  analyses in Datalog  . . . . . . . . . . 239--248
                  Xin Zhang and   
                Ravi Mangal and   
                 Mayur Naik and   
                  Hongseok Yang   Hybrid top-down and bottom-up
                                  interprocedural analysis . . . . . . . . 249--258
                Steven Arzt and   
        Siegfried Rasthofer and   
            Christian Fritz and   
                Eric Bodden and   
           Alexandre Bartel and   
              Jacques Klein and   
              Yves Le Traon and   
              Damien Octeau and   
               Patrick McDaniel   FlowDroid: precise context, flow, field,
                                  object-sensitive and lifecycle-aware
                                  taint analysis for Android apps  . . . . 259--269
        Quentin Carbonneaux and   
               Jan Hoffmann and   
        Tahina Ramananandro and   
                     Zhong Shao   End-to-end verification of stack-space
                                  bounds for C programs  . . . . . . . . . 270--281
                Thomas Ball and   
     Nikolaj Bjòrner and   
               Aaron Gember and   
            Shachar Itzhaky and   
        Aleksandr Karbyshev and   
                Mooly Sagiv and   
           Michael Schapira and   
                Asaf Valadarsky   VeriCon: towards verifying controller
                                  programs in software-defined networks    282--293
          Francesco Logozzo and   
         Shuvendu K. Lahiri and   
      Manuel Fähndrich and   
                 Sam Blackshear   Verification modulo versions: towards
                                  usable verification  . . . . . . . . . . 294--304
           Dimitar Dimitrov and   
            Veselin Raychev and   
              Martin Vechev and   
                  Eric Koskinen   Commutativity race detection . . . . . . 305--315
              Pallavi Maiya and   
              Aditya Kanade and   
                 Rupak Majumdar   Race detection for Android applications  316--325
            Chun-Hung Hsiao and   
                     Jie Yu and   
        Satish Narayanasamy and   
                 Ziyun Kong and   
       Cristiano L. Pereira and   
            Gilles A. Pokam and   
              Peter M. Chen and   
                    Jason Flinn   Race detection for event-driven mobile
                                  applications . . . . . . . . . . . . . . 326--336
                 Jeff Huang and   
    Patrick O'Neil Meredith and   
                   Grigore Rosu   Maximal sound predictive race detection
                                  with control flow abstraction  . . . . . 337--348
                Yaniv David and   
                     Eran Yahav   Tracelet-based code search in
                                  executables  . . . . . . . . . . . . . . 349--360
             Justin Pombrio and   
          Shriram Krishnamurthi   Resugaring: lifting evaluation sequences
                                  through syntactic sugar  . . . . . . . . 361--371
     Reinhard von Hanxleden and   
      Björn Duderstadt and   
           Christian Motika and   
               Steven Smyth and   
            Michael Mendler and   
      Joaquín Aguado and   
             Stephen Mercer and   
                   Owen O'Brien   SCCharts: sequentially constructive
                                  statecharts for safety-critical
                                  applications: HW/SW-synthesis for a
                                  conservative extension of synchronous
                                  statecharts  . . . . . . . . . . . . . . 372--383
             Loris D'Antoni and   
              Margus Veanes and   
          Benjamin Livshits and   
                   David Molnar   Fast: a transducer-based language for
                                  tree manipulation  . . . . . . . . . . . 384--394
                  Jayadev Misra   A personal perspective on concurrency    395--395
Phitchaya Mangpo Phothilimthana and   
              Tikhon Jelvis and   
                 Rohin Shah and   
              Nishant Totla and   
              Sarah Chasins and   
                Rastislav Bodik   Chlorophyll: synthesis-aided compiler
                                  for low-power spatial architectures  . . 396--407
            Daniel Perelman and   
              Sumit Gulwani and   
               Dan Grossman and   
                  Peter Provost   Test-driven synthesis  . . . . . . . . . 408--418
            Veselin Raychev and   
              Martin Vechev and   
                     Eran Yahav   Code completion with statistical
                                  language models  . . . . . . . . . . . . 419--428
            David Greenaway and   
                Japheth Lim and   
             June Andronick and   
                   Gerwin Klein   Don't sweat the small stuff: formal
                                  verification of C code without the pain  429--439
                  Edgar Pek and   
               Xiaokang Qiu and   
                  P. Madhusudan   Natural proofs for data structure
                                  manipulation in C using separation logic 440--451
            Daniel Ricketts and   
            Valentin Robert and   
              Dongseok Jang and   
            Zachary Tatlock and   
                   Sorin Lerner   Automating formal proofs for reactive
                                  systems  . . . . . . . . . . . . . . . . 452--462
                  Xiao Xiao and   
                Qirun Zhang and   
                Jinguo Zhou and   
                  Charles Zhang   Persistent pointer information . . . . . 463--474
                  Hakjoo Oh and   
                Wonchan Lee and   
                 Kihong Heo and   
              Hongseok Yang and   
                   Kwangkeun Yi   Selective context-sensitivity guided by
                                  impact pre-analysis  . . . . . . . . . . 475--484
         Yannis Smaragdakis and   
           George Kastrinis and   
             George Balatsouras   Introspective analysis:
                                  context-sensitivity, across the board    485--495
                 Wonsun Ahn and   
                  Jiho Choi and   
               Thomas Shull and   
María J. Garzarán and   
                Josep Torrellas   Improving JavaScript performance by
                                  deconstructing the type system . . . . . 496--507
                  John Vilk and   
                Emery D. Berger   Doppio: breaking the browser language
                                  barrier  . . . . . . . . . . . . . . . . 508--518
                      Li Lu and   
                 Weixing Ji and   
               Michael L. Scott   Dynamic enforcement of determinism in a
                                  parallel scripting language  . . . . . . 519--529
               Emina Torlak and   
                Rastislav Bodik   A lightweight symbolic virtual machine
                                  for solver-aided host languages  . . . . 530--541
                      Vu Le and   
                  Sumit Gulwani   FlashExtract: a framework for data
                                  extraction by examples . . . . . . . . . 542--553
              Marcelo Sousa and   
                Isil Dillig and   
       Dimitrios Vytiniotis and   
              Thomas Dillig and   
            Christos Gkantsidis   Consolidation of queries with
                                  user-defined functions . . . . . . . . . 554--564
                    Loi Luu and   
              Shweta Shinde and   
             Prateek Saxena and   
                   Brian Demsky   A model counter for constraints over
                                  unbounded strings  . . . . . . . . . . . 565--576
                    Ben Niu and   
                       Gang Tan   Modular control-flow integrity . . . . . 577--587
             Edward Z. Yang and   
               David Mazi\`eres   Dynamic space limits for Haskell . . . . 588--598

ACM SIG{}PLAN Notices
Volume 49, Number 7, July, 2014

                    Dan Tsafrir   Experiences in the land of virtual
                                  abstractions . . . . . . . . . . . . . . 1--2
              Jennia Hizver and   
                Tzi-cker Chiueh   Real-time deep virtual machine
                                  introspection and its applications . . . 3--14
                 Kapil Arya and   
              Yury Baskakov and   
                Alex Garthwaite   Tesseract: reconciling guest I/O and
                                  hypervisor swapping in a VM  . . . . . . 15--28
                 Hwanju Kim and   
               Sangwook Kim and   
               Jinkyu Jeong and   
                    Joonwon Lee   Virtual asymmetric multiprocessor for
                                  interactive performance of consolidated
                                  desktops . . . . . . . . . . . . . . . . 29--40
      Orna Agmon Ben-Yehuda and   
               Eyal Posener and   
            Muli Ben-Yehuda and   
             Assaf Schuster and   
                  Ahuva Mu'alem   Ginseng: market-driven memory allocation 41--52
                Jinho Hwang and   
                Ahsen Uppal and   
               Timothy Wood and   
                    Howie Huang   Mortar: filling the gaps in data center
                                  memory . . . . . . . . . . . . . . . . . 53--64
               Licheng Chen and   
                Zhipeng Wei and   
                  Zehan Cui and   
                Mingyu Chen and   
                Haiyang Pan and   
                    Yungang Bao   CMD: classification-based memory
                                  deduplication through page access
                                  characteristics  . . . . . . . . . . . . 65--76
           Behnam Robatmili and   
             Calin Cascaval and   
            Mehrdad Reshadi and   
        Madhukar N. Kedlaya and   
                Seth Fowler and   
            Vrajesh Bhavsar and   
              Michael Weber and   
                  Ben Hardekopf   MuscalietJS: rethinking layered dynamic
                                  web runtimes . . . . . . . . . . . . . . 77--88
             Tomas Kalibera and   
                   Petr Maj and   
           Floreal Morandat and   
                      Jan Vitek   A fast abstract syntax tree interpreter
                                  for R  . . . . . . . . . . . . . . . . . 89--102
        Madhukar N. Kedlaya and   
           Behnam Robatmili and   
             Cglin Cascaval and   
                  Ben Hardekopf   Deoptimization for dynamic language JITs
                                  on typed, stack-based virtual machines   103--114
                      Jan Vitek   The case for the three R's of systems
                                  research: repeatability, reproducibility
                                  and rigor  . . . . . . . . . . . . . . . 115--116
             Chao-Jui Chang and   
                 Jan-Jan Wu and   
              Wei-Chung Hsu and   
               Pangfeng Liu and   
                  Pen-Chung Yew   Efficient memory virtualization for
                                  Cross-ISA system mode emulation  . . . . 117--128
              Mingwei Zhang and   
                   Rui Qiao and   
          Niranjan Hasabnis and   
                       R. Sekar   A platform for secure static binary
                                  instrumentation  . . . . . . . . . . . . 129--140
                Yi-Hong Lyu and   
             Ding-Yong Hong and   
                  Tai-Yi Wu and   
                 Jan-Jan Wu and   
              Wei-Chung Hsu and   
               Pangfeng Liu and   
                  Pen-Chung Yew   DBILL: an efficient and retargetable
                                  dynamic binary instrumentation framework
                                  using LLVM backend . . . . . . . . . . . 141--152
                  Jie Zheng and   
         Tze Sing Eugene Ng and   
   Kunwadee Sripanidkulchai and   
                    Zhaolei Liu   COMMA: coordinating the migration of
                                  multi-tier applications  . . . . . . . . 153--164
                Vivek Kumar and   
       Stephen M. Blackburn and   
                    David Grove   Friendly barriers: efficient
                                  work-stealing with return barriers . . . 165--176
            Michihiro Horie and   
             Kazunori Ogata and   
         Kiyokuni Kawachiya and   
                 Tamiya Onodera   String deduplication for Java-based
                                  middleware in virtualized environments   177--188
               Julian Stecklina   Shrinking the hypervisor one subsystem
                                  at a time: a userspace packet switch for
                                  virtual machines . . . . . . . . . . . . 189--200
                      Ye Li and   
               Richard West and   
                  Eric Missimer   A virtualized separation kernel for
                                  mixed criticality systems  . . . . . . . 201--212
              David Johnson and   
                Mike Hibler and   
                      Eric Eric   Composable multi-level debugging with
                                  Stackdb  . . . . . . . . . . . . . . . . 213--226

ACM SIG{}PLAN Notices
Volume 49, Number 8, August, 2014

                   Mark D. Hill   21st century computer architecture . . . 1--2
               Tongping Liu and   
                  Chen Tian and   
                   Ziang Hu and   
                Emery D. Berger   PREDATOR: predictive false sharing
                                  detection  . . . . . . . . . . . . . . . 3--14
               Paul Thomson and   
      Alastair F. Donaldson and   
                     Adam Betts   Concurrency testing using schedule
                                  bounding: an empirical study . . . . . . 15--28
             Malavika Samak and   
      Murali Krishna Ramanathan   Trace driven dynamic deadlock detection
                                  and reproduction . . . . . . . . . . . . 29--42
             Wei-Fan Chiang and   
      Ganesh Gopalakrishnan and   
         Zvonimir Rakamaric and   
                Alexey Solovyev   Efficient search for inputs causing high
                                  floating-point errors  . . . . . . . . . 43--52
            Olivier Tardieu and   
             Benjamin Herta and   
           David Cunningham and   
                David Grove and   
        Prabhanjan Kambadur and   
             Vijay Saraswat and   
            Avraham Shinnar and   
             Mikio Takeuchi and   
                 Mandana Vaziri   X10 and APGAS at Petascale . . . . . . . 53--66
           David Cunningham and   
                David Grove and   
             Benjamin Herta and   
               Arun Iyengar and   
         Kiyokuni Kawachiya and   
              Hiroki Murata and   
             Vijay Saraswat and   
             Mikio Takeuchi and   
                Olivier Tardieu   Resilient X10: efficient failure-aware
                                  programming  . . . . . . . . . . . . . . 67--80
               Chaoran Yang and   
               Wesley Bland and   
        John Mellor-Crummey and   
                   Pavan Balaji   Portable, MPI-interoperable Coarray
                                  Fortran  . . . . . . . . . . . . . . . . 81--92
                    Yi Yang and   
                   Huiyang Zhou   CUDA-NP: realizing nested thread-level
                                  parallelism in GPGPU applications  . . . 93--106
                Shengen Yan and   
                    Chao Li and   
              Yunquan Zhang and   
                   Huiyang Zhou   yaSpMV: yet another SpMV framework on
                                  GPUs . . . . . . . . . . . . . . . . . . 107--118
              Michael Bauer and   
             Sean Treichler and   
                     Alex Aiken   Singe: leveraging warp specialization
                                  for high performance on GPUs . . . . . . 119--130
                 Rei Odaira and   
           Jose G. Castanos and   
                Hisanobu Tomari   Eliminating global interpreter locks in
                                  Ruby through hardware transactional
                                  memory . . . . . . . . . . . . . . . . . 131--142
           Darko Petrovi\'c and   
              Thomas Ropars and   
           André Schiper   Leveraging hardware message passing for
                                  efficient thread synchronization . . . . 143--154
            Maurice Herlihy and   
                      Zhiyu Liu   Well-structured futures and cache
                                  locality . . . . . . . . . . . . . . . . 155--166
               Nuno Diegues and   
                   Paolo Romano   Time-Warp: lightweight abort
                                  minimization in transactional memory . . 167--178
                 Kunle Olukotun   Beyond parallel programming with domain
                                  specific languages . . . . . . . . . . . 179--180
               Sukhyun Song and   
       Jeffrey K. Hollingsworth   Designing and auto-tuning parallel $3$-D
                                  FFT for computation-communication
                                  overlap  . . . . . . . . . . . . . . . . 181--192
            Bryan Catanzaro and   
           Alexander Keller and   
                Michael Garland   A decomposition for in-place matrix
                                  transposition  . . . . . . . . . . . . . 193--206
                 I-Jui Sung and   
     Juan Gómez-Luna and   
José María González-Linares and   
        Nicolás Guil and   
                 Wen-Mei W. Hwu   In-place transposition of rectangular
                                  matrices on accelerators . . . . . . . . 207--218
               Saeed Maleki and   
         Madanlal Musuvathi and   
                 Todd Mytkowicz   Parallelizing dynamic programming
                                  through rank convergence . . . . . . . . 219--232
               Sanyam Mehta and   
               Pei-Hung Lin and   
                  Pen-Chung Yew   Revisiting loop fusion in the polyhedral
                                  framework  . . . . . . . . . . . . . . . 233--246
      Christopher Rodrigues and   
              Thomas Jablin and   
               Abdul Dakkak and   
                    Wen-Mei Hwu   Triolet: a programming system that
                                  unifies algorithmic skeleton interfaces
                                  for high-performance cluster computing   247--258
                     Xu Liu and   
            John Mellor-Crummey   A tool to analyze the performance of
                                  multithreaded programs on NUMA
                                  architectures  . . . . . . . . . . . . . 259--272
                    Jia Rao and   
                    Xiaobo Zhou   Towards fair and efficient SMP virtual
                                  machine scheduling . . . . . . . . . . . 273--286
                     Kai Lu and   
                    Xu Zhou and   
                 Tom Bergan and   
                  Xiaoping Wang   Efficient deterministic multithreading
                                  without global barriers  . . . . . . . . 287--300
           Mahdi Eslamimehr and   
                  Jens Palsberg   Race directed scheduling of concurrent
                                  programs . . . . . . . . . . . . . . . . 301--314
                     Norm Rubin   Heterogeneous computing: what does it
                                  mean for compiler research?  . . . . . . 315--316
          Aravind Natarajan and   
                  Neeraj Mittal   Fast concurrent lock-free binary search
                                  trees  . . . . . . . . . . . . . . . . . 317--328
               Trevor Brown and   
                Faith Ellen and   
                   Eric Ruppert   A general technique for non-blocking
                                  trees  . . . . . . . . . . . . . . . . . 329--342
             Dana Drachsler and   
              Martin Vechev and   
                     Eran Yahav   Practical concurrent binary search trees
                                  via logical ordering . . . . . . . . . . 343--356
              Shahar Timnat and   
                   Erez Petrank   A practical wait-free simulation for
                                  lock-free data structures  . . . . . . . 357--368
     Kishore Kumar Pusukuri and   
                Rajiv Gupta and   
           Laxmi Narayan Bhuyan   Lock contention aware thread migrations  369--370
              Kyu Hyung Lee and   
               Dohyeong Kim and   
                  Xiangyu Zhang   Infrastructure-free logging and replay
                                  of concurrent execution on multiple
                                  cores  . . . . . . . . . . . . . . . . . 371--372
               Cfir Aguston and   
             Yosi Ben Asher and   
                     Gadi Haber   Parallelization hints via code
                                  skeletonization  . . . . . . . . . . . . 373--374
                Wenwen Wang and   
               Chenggang Wu and   
              Pen-Chung Yew and   
                 Xiang Yuan and   
             Zhenjiang Wang and   
                 Jianjun Li and   
                  Xiaobing Feng   Concurrency bug localization using
                                  shared memory access pairs . . . . . . . 375--376
             Vitus J. Leung and   
             David P. Bunde and   
            Jonathan Ebbers and   
             Stefan P. Feer and   
          Nickolas W. Price and   
          Zachary D. Rhodes and   
                  Matthew Swank   Task mapping stencil computations for
                                  non-contiguous allocations . . . . . . . 377--378
              Martin Wimmer and   
          Francesco Versaci and   
  Jesper Larsson Träff and   
            Daniel Cederman and   
               Philippas Tsigas   Data structures for task-based priority
                                  scheduling . . . . . . . . . . . . . . . 379--380
    Leonardo Bautista Gomez and   
                Franck Cappello   Detecting silent data corruption through
                                  data dynamic monitoring for scientific
                                  applications . . . . . . . . . . . . . . 381--382
      Edans F. de O. Sandes and   
          Guillermo Miranda and   
         Alba C. M. A. Melo and   
           Xavier Martorell and   
                 Eduard Ayguade   Fine-grain parallel megabase sequence
                                  comparison with multiple heterogeneous
                                  GPUs . . . . . . . . . . . . . . . . . . 383--384
            Guy Golan-Gueta and   
              G. Ramalingam and   
                Mooly Sagiv and   
                     Eran Yahav   Automatic semantic locking . . . . . . . 385--386
               Ahmed Hassan and   
           Roberto Palmieri and   
                Binoy Ravindran   Optimistic transactional boosting  . . . 387--388
              Kunal Agrawal and   
          Jeremy T. Fineman and   
           Brendan Sheridan and   
                  Jim Sukha and   
               Robert Utterback   Provably good scheduling for parallel
                                  programs that use data structures
                                  through implicit batching  . . . . . . . 389--390
                     Lin Ma and   
              Kunal Agrawal and   
           Roger D. Chamberlain   Theoretical analysis of classic
                                  algorithms on highly-threaded many-core
                                  GPUs . . . . . . . . . . . . . . . . . . 391--392
             Daniel Tomkins and   
               Timmie Smith and   
             Nancy M. Amato and   
           Lawrence Rauchwerger   SCCMulti: an improved parallel strongly
                                  connected components algorithm . . . . . 393--394
                   Miao Luo and   
                  Xiaoyi Lu and   
          Khaled Hamidouche and   
           Krishna Kandalla and   
           Dhabaleswar K. Panda   Initial study of multi-endpoint runtime
                                  for MPI + OpenMP hybrid programming
                                  model on multi-core systems  . . . . . . 395--396
        Katherine E. Isaacs and   
               Todd Gamblin and   
            Abhinav Bhatele and   
           Peer-Timo Bremer and   
              Martin Schulz and   
                   Bernd Hamann   Extracting logical structure and
                                  identifying stragglers in parallel
                                  execution traces . . . . . . . . . . . . 397--398

ACM SIG{}PLAN Notices
Volume 49, Number 9, September, 2014

                Kathleen Fisher   Using formal methods to enable more
                                  secure vehicles: DARPA's HACMS program   1--1
          Patrick C. Hickey and   
                   Lee Pike and   
             Trevor Elliott and   
              James Bielman and   
                John Launchbury   Building embedded systems with embedded
                                  DSLs . . . . . . . . . . . . . . . . . . 3--9
           Cole Schlesinger and   
          Michael Greenberg and   
                   David Walker   Concurrent NetCore: from policies to
                                  pipelines  . . . . . . . . . . . . . . . 11--24
             Daniel Schoepe and   
               Daniel Hedin and   
               Andrei Sabelfeld   SeLINQ: tracking information across
                                  application-database boundaries  . . . . 25--38
                 Sheng Chen and   
                   Martin Erwig   Type-based parametric analysis of
                                  program families . . . . . . . . . . . . 39--51
             Paul Stansifer and   
                  Mitchell Wand   Romeo: a system for more flexible
                                  binding-safe programming . . . . . . . . 53--65
          Clemens Grabmayer and   
                     Jan Rochel   Maximal sharing in the Lambda calculus
                                  with letrec  . . . . . . . . . . . . . . 67--80
             Lars Bergstrom and   
              Matthew Fluet and   
                 Matthew Le and   
                 John Reppy and   
                   Nora Sandler   Practical and effective higher-order
                                  optimizations  . . . . . . . . . . . . . 81--93
           Jennifer Hackett and   
                  Graham Hutton   Worker/wrapper/makes it/faster . . . . . 95--107
                Paul Downen and   
                 Zena M. Ariola   Compositional semantics for composable
                                  continuations: from abortive to
                                  delimited control  . . . . . . . . . . . 109--122
             Tomas Petricek and   
            Dominic Orchard and   
                   Alan Mycroft   Coeffects: a calculus of
                                  context-dependent computation  . . . . . 123--135
           Robert Bruce Findler   Behavioral software contracts  . . . . . 137--138
      Phúc C. Nguyen and   
        Sam Tobin-Hochstadt and   
                 David Van Horn   Soft contract verification . . . . . . . 139--152
                  Norman Ramsey   On teaching *how to design programs*:
                                  observations from a newcomer . . . . . . 153--166
              Atsushi Ohori and   
             Katsuhiro Ueno and   
             Kazunori Hoshi and   
              Shinji Nozaki and   
               Takashi Sato and   
              Tasuku Makabe and   
                       Yuki Ito   SML# in industry: a practical ERP system
                                  development  . . . . . . . . . . . . . . 167--173
        Dominic P. Mulligan and   
                Scott Owens and   
            Kathryn E. Gray and   
                  Tom Ridge and   
                   Peter Sewell   Lem: reusable engineering of real-world
                                  semantics  . . . . . . . . . . . . . . . 175--188
           Joachim Breitner and   
       Richard A. Eisenberg and   
         Simon Peyton Jones and   
              Stephanie Weirich   Safe zero-cost coercions for Haskell . . 189--202
        François Pottier   Hindley--Milner elaboration in
                                  applicative style: functional pearl  . . 203--212
       Daniel Winograd-Cort and   
                     Paul Hudak   Settable and non-interfering signal
                                  functions for FRP: how a first-order
                                  switch is more than enough . . . . . . . 213--225
                   Yan Chen and   
               Umut A. Acar and   
              Kanat Tangwongsan   Functional programming for dynamic and
                                  large data with self-adjusting
                                  computation  . . . . . . . . . . . . . . 227--240
              Stephanie Weirich   Depending on types . . . . . . . . . . . 241--241
              Carlo Angiuli and   
           Edward Morehouse and   
           Daniel R. Licata and   
                  Robert Harper   Homotopical patch theory . . . . . . . . 243--256
               Jesper Cockx and   
         Dominique Devriese and   
                 Frank Piessens   Pattern matching without K . . . . . . . 257--268
                 Niki Vazou and   
             Eric L. Seidel and   
               Ranjit Jhala and   
       Dimitrios Vytiniotis and   
             Simon Peyton-Jones   Refinement types for Haskell . . . . . . 269--282
Felipe Bañados Schwerter and   
              Ronald Garcia and   
             Éric Tanter   A theory of gradual effect systems . . . 283--295
           Conor Thomas McBride   How to keep your neighbours in order . . 297--309
               Gowtham Kaki and   
             Suresh Jagannathan   A relational framework for higher-order
                                  shape analysis . . . . . . . . . . . . . 311--324
               Simon Marlow and   
               Louis Brandy and   
             Jonathan Coens and   
                      Jon Purdy   There is no fork: an abstraction for
                                  efficient, concurrent, and concise data
                                  access . . . . . . . . . . . . . . . . . 325--337
             Jeremy Gibbons and   
                     Nicolas Wu   Folding domain-specific languages: deep
                                  and shallow embeddings (functional
                                  Pearl) . . . . . . . . . . . . . . . . . 339--347
           Olle Fredriksson and   
                   Dan R. Ghica   Krivine nets: a semantic foundation for
                                  distributed execution  . . . . . . . . . 349--361
        Beniamino Accattoli and   
            Pablo Barenbaum and   
                  Damiano Mazza   Distilling abstract machines . . . . . . 363--376

ACM SIG{}PLAN Notices
Volume 49, Number 10, October, 2014

                  Stephen Chong   Checking correctness of TypeScript
                                  interfaces for JavaScript libraries  . . 1--16
            Esben Andreasen and   
           Anders Mòller   Determinacy in static analysis for
                                  jQuery . . . . . . . . . . . . . . . . . 17--31
             Michael Pradel and   
               Parker Schuh and   
              George Necula and   
                    Koushik Sen   EventBreak: analyzing the responsiveness
                                  of user interfaces through
                                  performance-guided test generation . . . 33--47
            Chun-Hung Hsiao and   
          Michael Cafarella and   
            Satish Narayanasamy   Using web corpus statistics for program
                                  analysis . . . . . . . . . . . . . . . . 49--65
               Earl T. Barr and   
                    Mark Marron   Tardis: affordable time-travel debugging
                                  in managed runtimes  . . . . . . . . . . 67--82
              Jonathan Bell and   
                    Gail Kaiser   Phosphor: illuminating dynamic data flow
                                  in commodity JVMs  . . . . . . . . . . . 83--101
           Luís Pina and   
          Luís Veiga and   
                  Michael Hicks   Rubah: DSU for Java on a stock JVM . . . 103--119
            Rifat Shahriyar and   
       Stephen M. Blackburn and   
            Kathryn S. McKinley   Fast conservative garbage collection . . 121--139
                  Eric Holk and   
                Ryan Newton and   
                Jeremy Siek and   
               Andrew Lumsdaine   Region-based memory management for GPU
                                  programming languages: enabling rich
                                  data structures on a spartan host  . . . 141--155
              Richard Uhler and   
                     Nirav Dave   Smten with satisfiability-based search   157--176
            Jeffrey Bosboom and   
      Sumanaruban Rajadurai and   
              Weng-Fai Wong and   
              Saman Amarasinghe   StreamJIT: a commensal compiler for
                                  high-performance stream programming  . . 177--195
                 Emma Tosch and   
                Emery D. Berger   SurveyMan: programming and automatically
                                  debugging surveys  . . . . . . . . . . . 197--211
      Thomas W. Bartenstein and   
                   Yu David Liu   Rate types for stream programs . . . . . 213--232
                  Nada Amin and   
                Tiark Rompf and   
                 Martin Odersky   Foundations of path-dependent types  . . 233--249
            Esteban Allende and   
                Johan Fabry and   
              Ronald Garcia and   
             Éric Tanter   Confined gradual typing  . . . . . . . . 251--270
               John Altidor and   
             Yannis Smaragdakis   Refactoring Java generics by inferring
                                  wildcards, in practice . . . . . . . . . 271--290
              Florian David and   
                Gael Thomas and   
               Julia Lawall and   
                  Gilles Muller   Continuously measuring critical section
                                  pressure with the free-lunch profiler    291--307
            Sasa Misailovic and   
             Michael Carbin and   
                Sara Achour and   
                  Zichao Qi and   
               Martin C. Rinard   Chisel: reliability- and accuracy-aware
                                  optimization of approximate
                                  computational kernels  . . . . . . . . . 309--328
           Melanie Kambadur and   
                  Martha A. Kim   An experimental survey of energy
                                  management across the stack  . . . . . . 329--344
              Gustavo Pinto and   
            Fernando Castor and   
                   Yu David Liu   Understanding energy behaviors of thread
                                  management constructs  . . . . . . . . . 345--360
           Joscha Drechsler and   
          Guido Salvaneschi and   
                Ragnar Mogk and   
                    Mira Mezini   Distributed REScala: an update algorithm
                                  for distributed reactive programming . . 361--376
            Tillmann Rendel and   
Jonathan Immanuel Brachthäuser and   
                Klaus Ostermann   From object algebras to attribute
                                  grammars . . . . . . . . . . . . . . . . 377--395
                Vlad Ureche and   
             Eugene Burmako and   
                 Martin Odersky   Late data layout: unifying data
                                  representation transformations . . . . . 397--416
              Ralf Mitschke and   
           Sebastian Erdweg and   
          Mirko Köhler and   
                Mira Mezini and   
              Guido Salvaneschi   i3QL: language-integrated live data
                                  views  . . . . . . . . . . . . . . . . . 417--432
      Dhruva R. Chakrabarti and   
              Hans-J. Boehm and   
                 Kumud Bhandari   Atlas: leveraging locks for non-volatile
                                  memory consistency . . . . . . . . . . . 433--452
         Guy L. Steele, Jr. and   
                   Doug Lea and   
             Christine H. Flood   Fast splittable pseudorandom number
                                  generators . . . . . . . . . . . . . . . 453--472
             Malavika Samak and   
      Murali Krishna Ramanathan   Multithreaded test synthesis for
                                  deadlock detection . . . . . . . . . . . 473--489
                 Tom Bergan and   
               Dan Grossman and   
                      Luis Ceze   Symbolic execution of multithreaded
                                  programs from arbitrary program contexts 491--506
           Daniel W. Barowy and   
             Dimitar Gochev and   
                Emery D. Berger   CheckCell: data debugging for
                                  spreadsheets . . . . . . . . . . . . . . 507--523
        Zvonimir Pavlinovic and   
                   Tim King and   
                    Thomas Wies   Finding minimum type error sources . . . 525--542
                   Peng Liu and   
                 Omer Tripp and   
                  Xiangyu Zhang   Flint: fixing linearizability violations 543--560
                Linhai Song and   
                        Shan Lu   Statistical debugging for real-world
                                  performance problems . . . . . . . . . . 561--578
               Terence Parr and   
                Sam Harwell and   
                Kathleen Fisher   Adaptive LL(*) parsing: the power of
                                  dynamic analysis . . . . . . . . . . . . 579--598
             Milos Gligoric and   
            Wolfram Schulte and   
             Chandra Prasad and   
           Danny van Velzen and   
            Iman Narasamdya and   
              Benjamin Livshits   Automated migration of build scripts
                                  using dynamic analysis and search-based
                                  refactoring  . . . . . . . . . . . . . . 599--616
               Vineet Kumar and   
                 Laurie Hendren   MIX10: compiling MATLAB to X10 for high
                                  performance  . . . . . . . . . . . . . . 617--636
       Manohar Jonnalagedda and   
             Thierry Coppey and   
              Sandro Stucki and   
                Tiark Rompf and   
                 Martin Odersky   Staged parser combinators for efficient
                                  data processing  . . . . . . . . . . . . 637--653
      Nicolás Rosner and   
           Valeria Bengolea and   
               Pablo Ponzio and   
         Shadi Abdul Khalek and   
           Nazareno Aguirre and   
           Marcelo F. Frias and   
               Sarfraz Khurshid   Bounded exhaustive test input generation
                                  from hybrid invariants . . . . . . . . . 655--674
                  Peng Wang and   
           Santiago Cuellar and   
                  Adam Chlipala   Compiler verification meets
                                  cross-language linking via data
                                  abstraction  . . . . . . . . . . . . . . 675--690
                Aaron Turon and   
           Viktor Vafeiadis and   
                   Derek Dreyer   GPS: navigating weak memory with ghosts,
                                  protocols, and separation  . . . . . . . 691--707
               Ankush Desai and   
                Pranav Garg and   
                  P. Madhusudan   Natural proofs for asynchronous programs
                                  using almost-synchronous reductions  . . 709--725
                  Wei Zhang and   
                 Per Larsen and   
          Stefan Brunthaler and   
                  Michael Franz   Accelerating iterators in optimizing AST
                                  interpreters . . . . . . . . . . . . . . 727--743
                Zhijia Zhao and   
                      Bo Wu and   
              Mingzhou Zhou and   
                 Yufei Ding and   
                Jianhua Sun and   
                Xipeng Shen and   
                     Youfeng Wu   Call sequence prediction through
                                  probabilistic calling automata . . . . . 745--762
              Mingzhou Zhou and   
                Xipeng Shen and   
                Yaoqing Gao and   
                     Graham Yiu   Space-efficient multi-versioning for
                                  input-adaptive feedback-driven program
                                  optimizations  . . . . . . . . . . . . . 763--776
                Keith Adams and   
                Jason Evans and   
             Bertrand Maher and   
           Guilherme Ottoni and   
             Andrew Paroski and   
              Brett Simmers and   
                Edwin Smith and   
                  Owen Yamauchi   The HipHop Virtual Machine . . . . . . . 777--790
     Henrique Nazaré and   
             Izabela Maffra and   
              Willer Santos and   
           Leonardo Barbosa and   
              Laure Gonnord and   
Fernando Magno Quintão Pereira   Validation of memory accesses through
                                  symbolic analyses  . . . . . . . . . . . 791--809
             Nimrod Partush and   
                     Eran Yahav   Abstract semantic differencing via
                                  speculative correlation  . . . . . . . . 811--828
                Qirun Zhang and   
                  Xiao Xiao and   
              Charles Zhang and   
                   Hao Yuan and   
                    Zhendong Su   Efficient subcubic alias analysis for C  829--845
             Lucas Brutschy and   
             Pietro Ferrara and   
              Peter Müller   Static analysis for independent app
                                  developers . . . . . . . . . . . . . . . 847--860
                 Keval Vora and   
          Sai Charan Koduru and   
                    Rajiv Gupta   ASPIRE: exploiting asynchronous
                                  parallelism in iterative algorithms
                                  using a relaxed consistency based DSM    861--878
               Brandon Holt and   
             Preston Briggs and   
                  Luis Ceze and   
                     Mark Oskin   Alembic: automatic locality extraction
                                  via migration  . . . . . . . . . . . . . 879--894
                  Tian Xiao and   
                 Zhenyu Guo and   
               Hucheng Zhou and   
              Jiaxing Zhang and   
                    Xu Zhao and   
               Chencheng Ye and   
                    Xi Wang and   
                    Wei Lin and   
              Wenguang Chen and   
                    Lidong Zhou   Cybertron: pushing the limit on I/O
                                  reduction in data-parallel programs  . . 895--908
               Cosmin Radoi and   
            Stephen J. Fink and   
              Rodric Rabbah and   
                 Manu Sridharan   Translating imperative code to MapReduce 909--927

ACM SIG{}PLAN Notices
Volume 49, Number 11, November, 2014

                Samuel Z. Guyer   Use of the JVM at Twitter: a bird's eye
                                  view . . . . . . . . . . . . . . . . . . 1--1
                David Terei and   
                 Alex Aiken and   
                      Jan Vitek   $ M^3 $: high-performance memory
                                  management from off-the-shelf components 3--13
            Daniel Clifford and   
               Hannes Payer and   
         Michael Starzinger and   
                  Ben L. Titzer   Allocation folding based on dominance    15--24
             Bollu Ratnakar and   
                   Rupesh Nasre   Push-pull constraint graph for efficient
                                  points-to analysis . . . . . . . . . . . 25--33
               Pramod G. Joisha   Sticky tries: fast insertions, fast
                                  lookups, no deletions for large key
                                  universes  . . . . . . . . . . . . . . . 35--46
           Steven R. Brandt and   
              Hari Krishnan and   
             Gokarna Sharma and   
                   Costas Busch   Concurrent, parallel garbage collection
                                  in linear time . . . . . . . . . . . . . 47--58
             Tomoharu Ugawa and   
           Richard E. Jones and   
                 Carl G. Ritson   Reference object processing in
                                  on-the-fly garbage collection  . . . . . 59--69
               Pengcheng Li and   
                  Chen Ding and   
                        Hao Luo   Modeling heap data growth using average
                                  liveness . . . . . . . . . . . . . . . . 71--82
           Foivos S. Zakkak and   
            Polyvios Pratikakis   JDMM: a Java memory model for
                                  non-cache-coherent memory architectures  83--92
            Ian J. Egielski and   
                Jesse Huang and   
                  Eddy Z. Zhang   Massive atomics for massive parallelism
                                  on GPUs  . . . . . . . . . . . . . . . . 93--103
             Carl G. Ritson and   
             Tomoharu Ugawa and   
               Richard E. Jones   Exploring garbage collection with
                                  Haswell hardware transactional memory    105--115
             David F. Bacon and   
                Perry Cheng and   
                   Sunil Shukla   Parallel real-time garbage collection of
                                  multiple heaps in reconfigurable
                                  hardware . . . . . . . . . . . . . . . . 117--127

ACM SIG{}PLAN Notices
Volume 49, Number 12, December, 2014

                 Nicolas Wu and   
             Tom Schrijvers and   
                     Ralf Hinze   Effect handlers in scope . . . . . . . . 1--12
            Dominic Orchard and   
                 Tomas Petricek   Embedding effect systems in Haskell  . . 13--24
Jasmin Christian Blanchette and   
                 Lars Hupel and   
              Tobias Nipkow and   
            Lars Noschinski and   
                Dmitriy Traytel   Experience report: the next 1100 Haskell
                                  programmers  . . . . . . . . . . . . . . 25--30
         Takayuki Muranushi and   
           Richard A. Eisenberg   Experience report: type-checking
                                  polymorphic units for astrophysics
                                  research in Haskell  . . . . . . . . . . 31--38
                 Niki Vazou and   
             Eric L. Seidel and   
                   Ranjit Jhala   LiquidHaskell: experience with
                                  refinement types in the real world . . . 39--51
                       Lee Pike   SmartCheck: automatic and efficient
                                  counterexample reduction and
                                  generalization . . . . . . . . . . . . . 53--64
              Patrick Maier and   
             Robert Stewart and   
                   Phil Trinder   The HdpH DSLs for scalable reliable
                                  computation  . . . . . . . . . . . . . . 65--76
               Kiwamu Okabe and   
             Takayuki Muranushi   Systems demonstration: writing NetBSD
                                  sound drivers in Haskell . . . . . . . . 77--78
               Anton Ekblad and   
                  Koen Claessen   A seamless, client-centric programming
                                  model for type safe web applications . . 79--89
               Amit A. Levy and   
                David Terei and   
               Deian Stefan and   
          David Maziéres   Demo proposal: making web applications
                                  --- XSafe  . . . . . . . . . . . . . . . 91--91
               Deian Stefan and   
                  Amit Levy and   
            Alejandro Russo and   
          David Maziéres   Building secure systems with LIO (demo)  93--94
       Richard A. Eisenberg and   
                   Jan Stolarek   Promoting functions to type families in
                                  Haskell  . . . . . . . . . . . . . . . . 95--106
              J. Garrett Morris   A simple semantics for Haskell
                                  overloading  . . . . . . . . . . . . . . 107--118
       Manuel M. T. Chakravarty   Foreign inline code: systems
                                  demonstration  . . . . . . . . . . . . . 119--120
           Michael D. Adams and   
            Ömer S. Agacan   Indentation-sensitive parsing for Parsec 121--132
         Atze van der Ploeg and   
                  Oleg Kiselyov   Reflection without remorse: revealing a
                                  hidden sequence to speed up monadic
                                  reflection . . . . . . . . . . . . . . . 133--144


ACM SIG{}PLAN Notices
Volume 50, Number 1, January, 2015

                Sriram Rajamani   Automating Repetitive Tasks for the
                                  Masses . . . . . . . . . . . . . . . . . 1--2
Paul-André Melli\`es and   
                Noam Zeilberger   Functors are Type Refinement Systems . . 3--16
Neelakantan R. Krishnaswami and   
              Pierre Pradic and   
                    Nick Benton   Integrating Linear and Dependent Types   17--30
              Kristina Sojakova   Higher Inductive Types as
                                  Homotopy-Initial Algebras  . . . . . . . 31--42
                   Minh Ngo and   
             Fabio Massacci and   
           Dimiter Milushev and   
                 Frank Piessens   Runtime Enforcement of Security Policies
                                  on Black Box Reactive Programs . . . . . 43--54
              Gilles Barthe and   
             Marco Gaboardi and   
Emilio Jesús Gallego Arias and   
                 Justin Hsu and   
                 Aaron Roth and   
              Pierre-Yves Strub   Higher-Order Approximate Relational
                                  Refinement Types for Mechanism Design
                                  and Differential Privacy . . . . . . . . 55--68
                Hamid Ebadi and   
                David Sands and   
              Gerardo Schneider   Differential Privacy: Now it's Getting
                                  Personal . . . . . . . . . . . . . . . . 69--81
                   Hao Tang and   
               Xiaoyin Wang and   
             Lingming Zhang and   
                   Bing Xie and   
                   Lu Zhang and   
                       Hong Mei   Summary-Based Context-Sensitive
                                  Data-Dependence Analysis in Presence of
                                  Callbacks  . . . . . . . . . . . . . . . 83--95
      Krishnendu Chatterjee and   
        Rasmus Ibsen-Jensen and   
       Andreas Pavlogiannis and   
                 Prateesh Goyal   Faster Algorithms for Algebraic Path
                                  Properties in Recursive State Machines
                                  with Constant Treewidth  . . . . . . . . 97--109
            Veselin Raychev and   
              Martin Vechev and   
                 Andreas Krause   Predicting Program Properties from ``Big
                                  Code'' . . . . . . . . . . . . . . . . . 111--124
                Rajeev Alur and   
             Loris D'Antoni and   
             Mukund Raghothaman   DReX: a Declarative Language for
                                  Efficiently Evaluating Regular String
                                  Transformations  . . . . . . . . . . . . 125--137
              Margus Veanes and   
             Todd Mytkowicz and   
               David Molnar and   
              Benjamin Livshits   Data-Parallel String-Manipulating
                                  Programs . . . . . . . . . . . . . . . . 139--152
                  Adam Chlipala   Ur/Web: a Simple Model for Programming
                                  the Web  . . . . . . . . . . . . . . . . 153--165
              Aseem Rastogi and   
               Nikhil Swamy and   
      Cédric Fournet and   
              Gavin Bierman and   
              Panagiotis Vekris   Safe & Efficient Gradual Typing for
                                  TypeScript . . . . . . . . . . . . . . . 167--180
              Michael Greenberg   Space-Efficient Manifest Contracts . . . 181--194
              Taro Sekiyama and   
               Yuki Nishida and   
               Atsushi Igarashi   Manifest Contracts for Datatypes . . . . 195--207
           Viktor Vafeiadis and   
         Thibaut Balabonski and   
          Soham Chakraborty and   
             Robin Morisset and   
       Francesco Zappa Nardelli   Common Compiler Optimisations are
                                  Invalid in the C11 Memory Model and what
                                  we can do about it . . . . . . . . . . . 209--220
               Julien Lange and   
              Emilio Tuosto and   
                 Nobuko Yoshida   From Communicating Machines to Graphical
                                  Choreographies . . . . . . . . . . . . . 221--232
                 Mike Dodds and   
               Andreas Haas and   
            Christoph M. Kirsch   A Scalable, Correct Time-Stamped Stack   233--246
      Jacques-Henri Jourdan and   
            Vincent Laporte and   
             Sandrine Blazy and   
               Xavier Leroy and   
                David Pichardie   A Formally-Verified C Static Analyzer    247--259
         Roberto Giacobazzi and   
          Francesco Logozzo and   
              Francesco Ranzato   Analyzing Program Analyses . . . . . . . 261--273
             Gordon Stewart and   
           Lennart Beringer and   
           Santiago Cuellar and   
                Andrew W. Appel   Compositional CompCert . . . . . . . . . 275--287
          Giuseppe Castagna and   
                 Kim Nguyen and   
                   Zhiwu Xu and   
                   Pietro Abate   Polymorphic Functions with Set-Theoretic
                                  Types: Part 2: Local Type Inference and
                                  Type Reconstruction  . . . . . . . . . . 289--302
              Ronald Garcia and   
                  Matteo Cimini   Principal Type Schemes for Gradual
                                  Programs . . . . . . . . . . . . . . . . 303--315
Luísa Lourenço and   
             Luís Caires   Dependent Information Flow Types . . . . 317--328
           Mila Dalla Preda and   
         Roberto Giacobazzi and   
              Arun Lakhotia and   
             Isabella Mastroeni   Abstract Symbolic Automata: Mixed
                                  syntactic/semantic similarity analysis
                                  of executables . . . . . . . . . . . . . 329--341
                Nate Foster and   
               Dexter Kozen and   
             Matthew Milano and   
            Alexandra Silva and   
                 Laure Thompson   A Coalgebraic Decision Procedure for
                                  NetKAT . . . . . . . . . . . . . . . . . 343--355
                    Damien Pous   Symbolic Algorithms for Language
                                  Equivalence and Kleene Algebra with
                                  Tests  . . . . . . . . . . . . . . . . . 357--368
       Vilhelm Sjöberg and   
              Stephanie Weirich   Programming up to Congruence . . . . . . 369--382
              Kazunori Tobisawa   A Meta Lambda Calculus with Cross-Level
                                  Computation  . . . . . . . . . . . . . . 383--393
                     Sam Staton   Algebraic Effects, Linearity, and
                                  Quantum Programming Languages  . . . . . 395--406
              Azadeh Farzan and   
            Zachary Kincaid and   
               Andreas Podelski   Proof Spaces for Unbounded Parallelism   407--420
               Davide Sangiorgi   Equations, Contractions, and Unique
                                  Solutions  . . . . . . . . . . . . . . . 421--432
             Ashutosh Gupta and   
        Thomas A. Henzinger and   
         Arjun Radhakrishna and   
            Roopsha Samanta and   
               Thorsten Tarrach   Succinct Representation of Concurrent
                                  Trace Sets . . . . . . . . . . . . . . . 433--444
             Denis Bogdanas and   
                   Grigore Rosu   K-Java: a Complete Semantics of Java . . 445--456
               Michael D. Adams   Towards the Essence of Hygiene . . . . . 457--469
                 Matt Brown and   
                  Jens Palsberg   Self-Representation in Girard's System U 471--484
                      Peter Lee   Coding by Everyone, Every Day  . . . . . 485--485
                  Peter Buneman   Databases and Programming: Two Subjects
                                  Divided by a Common Language?  . . . . . 487--487
Luis María Ferrer Fioriti and   
                Holger Hermanns   Probabilistic Termination: Soundness,
                                  Completeness, and Compositionality . . . 489--501
                     Fei He and   
                Xiaowei Gao and   
               Bow-Yaw Wang and   
                    Lijun Zhang   Leveraging Weighted Automata in
                                  Compositional Reasoning about Concurrent
                                  Probabilistic Systems  . . . . . . . . . 503--514
             Filippo Bonchi and   
           Pawel Sobocinski and   
                   Fabio Zanasi   Full Abstraction for Signal Flow Graphs  515--526
                 Ralf Hinze and   
                 Nicolas Wu and   
                 Jeremy Gibbons   Conjugate Hylomorphisms --- Or: The
                                  Mother of All Structured Recursion
                                  Schemes  . . . . . . . . . . . . . . . . 527--538
      Krishnendu Chatterjee and   
       Andreas Pavlogiannis and   
                   Yaron Velner   Quantitative Interprocedural Analysis    539--551
             Osbert Bastani and   
               Saswat Anand and   
                     Alex Aiken   Specification Inference Using
                                  Context-Free Language Reachability . . . 553--566
            Venmugil Elango and   
           Fabrice Rastello and   
    Louis-Noël Pouchet and   
               J. Ramanujam and   
                  P. Sadayappan   On Characterizing the Data Access
                                  Complexity of Programs . . . . . . . . . 567--580
               Pieter Agten and   
                Bart Jacobs and   
                 Frank Piessens   Sound Modular Verification of C Code
                                  Executing in an Unverified Context . . . 581--594
                 Ronghui Gu and   
Jérémie Koenig and   
        Tahina Ramananandro and   
                 Zhong Shao and   
       Xiongnan (Newman) Wu and   
              Shu-Chun Weng and   
             Haozhong Zhang and   
                         Yu Guo   Deep Specifications and Certified
                                  Abstraction Layers . . . . . . . . . . . 595--608
                  Adam Chlipala   From Network Interface to Multithreaded
                                  Web Applications: a Case Study in
                                  Modular Program Verification . . . . . . 609--622
                 Karl Crary and   
            Michael J. Sullivan   A Calculus for Relaxed Memory  . . . . . 623--636
                  Ralf Jung and   
               David Swasey and   
          Filip Sieczkowski and   
            Kasper Svendsen and   
                Aaron Turon and   
              Lars Birkedal and   
                   Derek Dreyer   Iris: Monoids and Invariants as an
                                  Orthogonal Basis for Concurrent
                                  Reasoning  . . . . . . . . . . . . . . . 637--650
            Ahmed Bouajjani and   
               Michael Emmi and   
            Constantin Enea and   
                      Jad Hamza   Tractable Refinement Checking for
                                  Concurrent Objects . . . . . . . . . . . 651--662
                 Oded Padon and   
              Neil Immerman and   
        Aleksandr Karbyshev and   
                  Ori Lahav and   
                Mooly Sagiv and   
                  Sharon Shoham   Decentralizing SDN Policies  . . . . . . 663--676
          Robert A. Cochran and   
             Loris D'Antoni and   
          Benjamin Livshits and   
               David Molnar and   
                  Margus Veanes   Program Boosting: Program Synthesis via
                                  Crowd-Sourcing . . . . . . . . . . . . . 677--688
          Benjamin Delaware and   
 Clément Pit-Claudel and   
                Jason Gross and   
                  Adam Chlipala   Fiat: Deductive Synthesis of Abstract
                                  Data Types in a Proof Assistant  . . . . 689--700

ACM SIG{}PLAN Notices
Volume 50, Number 2, February, 2015

               Stefan Hanenberg   Why do we know so little about
                                  programming languages, and what would
                                  have happened if we had known more?  . . 1--1
       Lourival Vieira Neto and   
      Roberto Ierusalimschy and   
  Ana Lúcia de Moura and   
                    Marc Balmer   Scriptable operating systems with Lua    2--10
          James Ian Johnson and   
                 David Van Horn   Abstracting abstract control . . . . . . 11--22
      T. Stephen Strickland and   
             Brianna M. Ren and   
              Jeffrey S. Foster   Contracts for domain-specific languages
                                  in Ruby  . . . . . . . . . . . . . . . . 23--34
                 Tim Disney and   
             Nathan Faubion and   
               David Herman and   
                Cormac Flanagan   Sweeten your JavaScript: hygienic macros
                                  for ES5  . . . . . . . . . . . . . . . . 35--44
        Michael M. Vitousek and   
             Andrew M. Kent and   
             Jeremy G. Siek and   
                      Jim Baker   Design and evaluation of gradual typing
                                  for Python . . . . . . . . . . . . . . . 45--56
           Bert Freudenberg and   
          Dan H. H. Ingalls and   
            Tim Felgentreff and   
                Tobias Pape and   
              Robert Hirschfeld   SqueakJS: a modern and practical
                                  smalltalk that runs in any browser . . . 57--66
              Martin Aigner and   
         Thomas Hütter and   
        Christoph M. Kirsch and   
           Alexander Miller and   
               Hannes Payer and   
               Mario Preishuber   ACDC-JS: explorative benchmarking of
                                  JavaScript memory management . . . . . . 67--78
            Helena Kotthaus and   
                  Ingo Korb and   
              Michael Engel and   
                 Peter Marwedel   Dynamic page sharing optimization for
                                  the R language . . . . . . . . . . . . . 79--90
                  Faiz Khan and   
      Vincent Foley-Bourgon and   
            Sujay Kathrotia and   
               Erick Lavoie and   
                 Laurie Hendren   Using JavaScript and WebCL for numerical
                                  computations: a comparative study of
                                  native and web technologies  . . . . . . 91--102
              Dustin Rhodes and   
                 Tim Disney and   
                Cormac Flanagan   Dynamic detection of object capability
                                  violations through model checking  . . . 103--112
           Bastian Steinert and   
            Lauritz Thamsen and   
            Tim Felgentreff and   
              Robert Hirschfeld   Object versioning to support recovery
                                  needs: using proxies to preserve
                                  previous development states in lively    113--124
       Nicholas D. Matsakis and   
               David Herman and   
                   Dmitry Lomov   Typed objects in JavaScript  . . . . . . 125--134
        Oscar Callaú and   
              Romain Robbes and   
         Éric Tanter and   
   David Röthlisberger and   
               Alexandre Bergel   On the use of type predicates in
                                  object-oriented software: the case of
                                  smalltalk  . . . . . . . . . . . . . . . 135--146

ACM SIG{}PLAN Notices
Volume 50, Number 3, March, 2015

          Jaakko Järvi and   
              Gabriel Foust and   
                Magne Haveraaen   Specializing planners for hierarchical
                                  multi-way dataflow constraint systems    1--10
     Michael J. Steindorfer and   
                Jurgen J. Vinju   Code specialization for memory efficient
                                  hash tries (short paper) . . . . . . . . 11--14
           Somayeh Malakuti and   
                   Mehmet Aksit   Emergent gummy modules: modular
                                  representation of emergent behavior  . . 15--24
              Maria Gouseti and   
               Chiel Peters and   
             Tijs van der Storm   Extensible language implementation with
                                  object algebras (short paper)  . . . . . 25--28
           Eric Walkingshaw and   
                Klaus Ostermann   Projectional editing of variational
                                  software . . . . . . . . . . . . . . . . 29--38
           Andreas Ruprecht and   
          Bernhard Heinloth and   
                 Daniel Lohmann   Automatic feature selection in
                                  large-scale system-software product
                                  lines  . . . . . . . . . . . . . . . . . 39--48
                     Lei Ma and   
              Cyrille Artho and   
                Cheng Zhang and   
                  Hiroyuki Sato   Efficient testing of software product
                                  lines via centralization (short paper)   49--52
              Karl Smeltzer and   
               Martin Erwig and   
                 Ronald Metoyer   A transformational approach to data
                                  visualization  . . . . . . . . . . . . . 53--62
              Masato Shioda and   
             Hideya Iwasaki and   
                 Shigeyuki Sato   LibDSL: a library for developing
                                  embedded domain specific languages in D
                                  via template metaprogramming . . . . . . 63--72
            Vojin Jovanovic and   
              Amir Shaikhha and   
              Sandro Stucki and   
          Vladimir Nikolaev and   
             Christoph Koch and   
                 Martin Odersky   Yin-Yang: concealing the deep embedding
                                  of DSLs  . . . . . . . . . . . . . . . . 73--82
              Benjamin Hess and   
            Thomas R. Gross and   
            Markus Püschel   Automatic locality-friendly interface
                                  extension of numerical functions . . . . 83--92
                  Sam Kamin and   
María Jesús Garzarán and   
              Baris Aktemur and   
                 Danqing Xu and   
                Buse Yilmaz and   
                   Zhongbo Chen   Optimization by runtime specialization
                                  for sparse matrix--vector multiplication 93--102
           Piotr Danilewski and   
         Marcel Köster and   
         Roland Leißa and   
           Richard Membarth and   
              Philipp Slusallek   Specialization through dynamic staging   103--112
                   Kenichi Asai   Compiling a reflective language using
                                  MetaOCaml  . . . . . . . . . . . . . . . 113--122
            Christian Humer and   
           Christian Wimmer and   
            Christian Wirth and   
     Andreas Wöß and   
         Thomas Würthinger   A domain-specific language for building
                                  self-optimizing AST interpreters . . . . 123--132
              James H. Hill and   
               Dennis C. Feiock   Pin++: an object-oriented framework for
                                  writing Pintools . . . . . . . . . . . . 133--141

ACM SIG{}PLAN Notices
Volume 50, Number 4, April, 2015

                   Ozcan Ozturk   Architectural Support for Cyber-Physical
                                  Systems  . . . . . . . . . . . . . . . . 1--1
               Yiying Zhang and   
                  Jian Yang and   
       Amirsaman Memaripour and   
                 Steven Swanson   Mojim: a Reliable and Highly-Available
                                  Non-Volatile Memory System . . . . . . . 3--18
                 Rujia Wang and   
                  Lei Jiang and   
               Youtao Zhang and   
                       Jun Yang   SD-PCM: Constructing Reliable Super
                                  Dense Phase Change Memory under Write
                                  Disturbance  . . . . . . . . . . . . . . 19--31
               Vinson Young and   
           Prashant J. Nair and   
           Moinuddin K. Qureshi   DEUCE: Write-Efficient Encryption for
                                  Non-Volatile Memories  . . . . . . . . . 33--44
              Adam Morrison and   
                    Yehuda Afek   Temporally Bounding TSO for Fence-Free
                                  Asymmetric Synchronization . . . . . . . 45--58
          Alexander Matveev and   
                     Nir Shavit   Reduced Hardware NOrec: a Safe and
                                  Scalable Hybrid Transactional Memory . . 59--71
                Marc S. Orr and   
                  Shuai Che and   
              Ayse Yilmazer and   
       Bradford M. Beckmann and   
               Mark D. Hill and   
                  David A. Wood   Synchronization Using Remote-Scope
                                  Promotion  . . . . . . . . . . . . . . . 73--86
                  Chang Liu and   
              Austin Harris and   
                Martin Maas and   
              Michael Hicks and   
               Mohit Tiwari and   
                     Elaine Shi   GhostRider: a Hardware-Software System
                                  for Memory Trace Oblivious Computation   87--101
    Christopher W. Fletcher and   
                   Ling Ren and   
                Albert Kwon and   
            Marten van Dijk and   
               Srinivas Devadas   Freecursive ORAM: [Nearly] Free
                                  Recursion and Integrity Verification for
                                  Position-based Oblivious RAM . . . . . . 103--116
             David Chisnall and   
             Colin Rothwell and   
        Robert N. M. Watson and   
          Jonathan Woodruff and   
              Munraj Vadera and   
             Simon W. Moore and   
                Michael Roe and   
               Brooks Davis and   
               Peter G. Neumann   Beyond the PDP-11: Architectural Support
                                  for a Memory-Safe C Abstract Machine . . 117--130
                  Jiuyue Ma and   
                Xiufeng Sui and   
                Ninghui Sun and   
                  Yupeng Li and   
                   Zihao Yu and   
                Bowen Huang and   
                  Tianni Xu and   
               Zhicheng Yao and   
                   Yun Chen and   
                Haibin Wang and   
                Lixin Zhang and   
                    Yungang Bao   Supporting Differentiated Services in
                                  Computers via Programmable Architecture
                                  for Resourcing-on-Demand (PARD)  . . . . 131--143
                Yushi Omote and   
         Takahiro Shinagawa and   
                  Kazuhiko Kato   Improving Agility and Elasticity in
                                  Bare-metal Clouds  . . . . . . . . . . . 145--159
                Md E. Haque and   
               Yong hun Eom and   
                 Yuxiong He and   
             Sameh Elnikety and   
          Ricardo Bianchini and   
            Kathryn S. McKinley   Few-to-Many: Incremental Parallelism for
                                  Reducing Tail Latency in Interactive
                                  Services . . . . . . . . . . . . . . . . 161--175
               Patrick Colp and   
               Jiawen Zhang and   
              James Gleeson and   
               Sahil Suneja and   
               Eyal de Lara and   
               Himanshu Raj and   
              Stefan Saroiu and   
                    Alec Wolman   Protecting Data on Smartphones and
                                  Tablets from Memory Attacks  . . . . . . 177--189
          Nathan Dautenhahn and   
       Theodoros Kasampalis and   
                 Will Dietz and   
              John Criswell and   
                    Vikram Adve   Nested Kernel: an Operating System
                                  Architecture for Intra-Kernel Privilege
                                  Separation . . . . . . . . . . . . . . . 191--206
                Zhangxi Tan and   
              Zhenghao Qian and   
                    Xi Chen and   
             Krste Asanovic and   
                David Patterson   DIABLO: a Warehouse-Scale Computer
                                  Network Simulator using FPGAs  . . . . . 207--221
            Johann Hauswald and   
      Michael A. Laurenzano and   
                Yunqi Zhang and   
                   Cheng Li and   
            Austin Rovinski and   
              Arjun Khurana and   
       Ronald G. Dreslinski and   
               Trevor Mudge and   
          Vinicius Petrucci and   
               Lingjia Tang and   
                     Jason Mars   Sirius: an Open End-to-End Voice and
                                  Vision Personal Assistant and Its
                                  Implications for Future Warehouse Scale
                                  Computers  . . . . . . . . . . . . . . . 223--238
                    Chao Xu and   
          Felix Xiaozhu Lin and   
                Yuyang Wang and   
                      Lin Zhong   Automated OS-level Device Runtime Power
                                  Management . . . . . . . . . . . . . . . 239--252
  Íñigo Goiri and   
              Thu D. Nguyen and   
              Ricardo Bianchini   CoolAir: Temperature- and
                                  Variation-Aware Management for
                                  Free-Cooled Datacenters  . . . . . . . . 253--265
              Nikita Mishra and   
               Huazhe Zhang and   
           John D. Lafferty and   
                 Henry Hoffmann   A Probabilistic Graphical Model-based
                                  Approach for Minimizing Energy Under
                                  Performance Constraints  . . . . . . . . 267--281
                   Jun Pang and   
                Chris Dwyer and   
                Alvin R. Lebeck   More is Less, Less is More:
                                  Molecular-Scale Photonic NoC Power
                                  Topologies . . . . . . . . . . . . . . . 283--296
            Vilas Sridharan and   
        Nathan DeBardeleben and   
             Sean Blanchard and   
           Kurt B. Ferreira and   
               Jon Stearley and   
                 John Shalf and   
            Sudhanva Gurumurthi   Memory Errors in Modern Systems: The
                                  Good, The Bad, and The Ugly  . . . . . . 297--310
                Yavuz Yetim and   
               Sharad Malik and   
             Margaret Martonosi   CommGuard: Mitigating Communication
                                  Errors in Error-Prone Parallel Execution 311--323
               Dohyeong Kim and   
               Yonghwi Kwon and   
          William N. Sumner and   
              Xiangyu Zhang and   
                     Dongyan Xu   Dual Execution for On-the-Fly Fine
                                  Grained Execution Comparison . . . . . . 325--338
                 Petr Hosek and   
                 Cristian Cadar   VARAN the Unbelievable: an Efficient
                                  $N$-version Execution Framework  . . . . 339--353
                Moshe Malka and   
                 Nadav Amit and   
            Muli Ben-Yehuda and   
                    Dan Tsafrir   rIOMMU: Efficient IOMMU for I/O Devices
                                  that Employ Ring Buffers . . . . . . . . 355--368
                  Daofu Liu and   
               Tianshi Chen and   
                 Shaoli Liu and   
               Jinhong Zhou and   
             Shengyuan Zhou and   
              Olivier Teman and   
              Xiaobing Feng and   
                Xuehai Zhou and   
                     Yunji Chen   PuDianNao: a Polyvalent Machine Learning
                                  Accelerator  . . . . . . . . . . . . . . 369--381
                Inigo Goiri and   
          Ricardo Bianchini and   
        Santosh Nagarakatte and   
                  Thu D. Nguyen   ApproxHadoop: Bringing Approximations to
                                  MapReduce Frameworks . . . . . . . . . . 383--397
         Michael Ringenburg and   
             Adrian Sampson and   
             Isaac Ackerman and   
                  Luis Ceze and   
                   Dan Grossman   Monitoring and Debugging the Quality of
                                  Results in Approximate Programs  . . . . 399--411
               Guruduth Banavar   Watson and the Era of Cognitive
                                  Computing  . . . . . . . . . . . . . . . 413--413
             Gordon Stewart and   
              Mahanth Gowda and   
          Geoffrey Mainland and   
          Bozidar Radunovic and   
       Dimitrios Vytiniotis and   
         Cristina Luengo Agullo   Ziria: a DSL for Wireless Systems
                                  Programming  . . . . . . . . . . . . . . 415--428
        Ravi Teja Mullapudi and   
              Vinay Vasista and   
                Uday Bondhugula   PolyMage: Automatic Optimization for
                                  Image Processing Pipelines . . . . . . . 429--443
                Jeff Heckey and   
               Shruti Patil and   
           Ali JavadiAbhari and   
                Adam Holmes and   
              Daniel Kudrow and   
           Kenneth R. Brown and   
             Diana Franklin and   
          Frederic T. Chong and   
             Margaret Martonosi   Compiler Management of Communication and
                                  Parallelism for Quantum Computation  . . 445--456
     Muhammad Amber Hassaan and   
           Donald D. Nguyen and   
              Keshav K. Pingali   Kinetic Dependence Graphs  . . . . . . . 457--471
 Stelios Sidiroglou-Douskos and   
              Eric Lahtinen and   
         Nathan Rittenhouse and   
              Paolo Piselli and   
                   Fan Long and   
               Deokhwan Kim and   
                  Martin Rinard   Targeted Automatic Integer Overflow
                                  Discovery Using Goal-Directed
                                  Conditional Branch Enforcement . . . . . 473--486
                Udit Dhawan and   
             Catalin Hritcu and   
              Raphael Rubin and   
            Nikos Vasilakis and   
          Silviu Chiricescu and   
          Jonathan M. Smith and   
      Thomas F. Knight, Jr. and   
         Benjamin C. Pierce and   
                    Andre DeHon   Architectural Support for
                                  Software-Defined Metadata Processing . . 487--502
              Danfeng Zhang and   
                   Yao Wang and   
              G. Edward Suh and   
                Andrew C. Myers   A Hardware Design Language for
                                  Timing-Sensitive Information-Flow
                                  Security . . . . . . . . . . . . . . . . 503--516
              Matthew Hicks and   
            Cynthia Sturton and   
             Samuel T. King and   
              Jonathan M. Smith   SPECS: a Lightweight Runtime Mechanism
                                  for Protecting Software from
                                  Security-Critical Processor Bugs . . . . 517--529
                 Yuelu Duan and   
             Nima Honarmand and   
                Josep Torrellas   Asymmetric Memory Fences: Optimizing
                                  Both Performance and Implementability    531--543
                Hyojin Sung and   
                 Sarita V. Adve   DeNovoSync: Efficient Support for
                                  Arbitrary Synchronization without
                                  Writer-Initiated Invalidations . . . . . 545--559
            Aritra Sengupta and   
           Swarnendu Biswas and   
               Minjia Zhang and   
            Michael D. Bond and   
                Milind Kulkarni   Hybrid Static-Dynamic Analysis for
                                  Statically Bounded Region
                                  Serializability  . . . . . . . . . . . . 561--575
               Jade Alglave and   
                 Mark Batty and   
      Alastair F. Donaldson and   
      Ganesh Gopalakrishnan and   
              Jeroen Ketema and   
              Daniel Poetzl and   
             Tyler Sorensen and   
                 John Wickerson   GPU Concurrency: Weak Behaviours and
                                  Programming Assumptions  . . . . . . . . 577--591
        Jason Jong Kyu Park and   
               Yongjun Park and   
                   Scott Mahlke   Chimera: Collaborative Preemption for
                                  Multitasking on a Shared GPU . . . . . . 593--606
               Neha Agarwal and   
              David Nellans and   
            Mark Stephenson and   
              Mike O'Connor and   
             Stephen W. Keckler   Page Placement Strategies for GPUs
                                  within Heterogeneous Memory Systems  . . 607--618
                Zhijia Zhao and   
                    Xipeng Shen   On-the-Fly Principled Speculation for
                                  FSM Parallelization  . . . . . . . . . . 619--630
                Tudor David and   
           Rachid Guerraoui and   
           Vasileios Trigonakis   Asynchronized Concurrency: The Secret to
                                  Scaling Concurrent Search Data
                                  Structures . . . . . . . . . . . . . . . 631--644
            Pramod Bhatotia and   
              Pedro Fonseca and   
               Umut A. Acar and   
  Björn B. Brandenburg and   
              Rodrigo Rodrigues   iThreads: a Threading Library for
                                  Parallel Incremental Computation . . . . 645--659
               Lokesh Gidra and   
           Gaël Thomas and   
              Julien Sopena and   
               Marc Shapiro and   
                    Nhan Nguyen   NumaGiC: a Garbage Collector for Big
                                  Data on Big NUMA Machines  . . . . . . . 661--673
               Khanh Nguyen and   
                   Kai Wang and   
                  Yingyi Bu and   
                    Lu Fang and   
                 Jianfei Hu and   
                     Guoqing Xu   FACADE: a Compiler and Runtime for
                                  (Almost) Object-Bounded Big Data
                                  Applications . . . . . . . . . . . . . . 675--690
              Varun Agrawal and   
            Abhiroop Dabral and   
                Tapti Palit and   
              Yongming Shen and   
                Michael Ferdman   Architectural Support for Dynamic
                                  Linking  . . . . . . . . . . . . . . . . 691--702

ACM SIG{}PLAN Notices
Volume 50, Number 5, May, 2015

                 Ryan Baird and   
                Peter Gavin and   
      Magnus Själander and   
              David Whalley and   
                  Gang-Ryung Uh   Optimizing Transfers of Control in the
                                  Static Pipeline Architecture . . . . . . 1:1--1:??
                Qingrui Liu and   
              Changhee Jung and   
               Dongyoon Lee and   
                  Devesh Tiwari   Clover: Compiler Directed Lightweight
                                  Soft Error Resilience  . . . . . . . . . 2:1--2:??
          Alen Bardizbanyan and   
      Magnus Själander and   
              David Whalley and   
            Per Larsson-Edefors   Improving Data Access Efficiency by
                                  Using Context-Aware Loads and Stores . . 3:1--3:??
        Isabella Stilkerich and   
               Clemens Lang and   
          Christoph Erhardt and   
             Michael Stilkerich   A Practical Getaway: Applications of
                                  Escape Analysis in Embedded Real-Time
                                  Systems  . . . . . . . . . . . . . . . . 4:1--4:??
          Stanislav Manilov and   
          Björn Franke and   
            Anthony Magrath and   
                 Cedric Andrieu   Free Rider: a Tool for Retargeting
                                  Platform-Specific Intrinsic Functions    5:1--5:??
         Christian Dietrich and   
            Martin Hoffmann and   
                 Daniel Lohmann   Cross-Kernel Control-Flow--Graph
                                  Analysis for Event-Driven Real-Time
                                  Systems  . . . . . . . . . . . . . . . . 6:1--6:??
           Soumyadeep Ghosh and   
               Yongjun Park and   
                     Arun Raman   Enabling Efficient Alias Speculation . . 7:1--7:??
             Wenguang Zheng and   
                         Hui Wu   WCET-Aware Dynamic D-cache Locking for a
                                  Single Task  . . . . . . . . . . . . . . 8:1--8:??
                 Yixiao Lin and   
                    Sayan Mitra   StarL: Towards a Unified Framework for
                                  Programming, Simulating and Verifying
                                  Distributed Robotic Systems  . . . . . . 9:1--9:??
              Zhenkai Zhang and   
             Xenofon Koutsoukos   Improving the Precision of Abstract
                                  Interpretation Based Cache Persistence
                                  Analysis . . . . . . . . . . . . . . . . 10:1--10:??
  Kamyar Mirzazad Barijough and   
              Matin Hashemi and   
           Volodymyr Khibin and   
                  Soheil Ghiasi   Implementation-Aware Model Analysis: The
                                  Case of Buffer-Throughput Tradeoff in
                                  Streaming Applications . . . . . . . . . 11:1--11:??
                   Chen Liu and   
                   Chengmo Yang   Secure and Durable (SEDURA): an
                                  Integrated Encryption and Wear-leveling
                                  Framework for PCM-based Main Memory  . . 12:1--12:??
               Adam Procter and   
        William L. Harrison and   
                 Ian Graves and   
             Michela Becchi and   
                 Gerard Allwein   Semantics Driven Hardware Design,
                                  Implementation, and Verification with
                                  ReWire . . . . . . . . . . . . . . . . . 13:1--13:??
      Hans Christian Woithe and   
                  Ulrich Kremer   TrilobiteG: a programming architecture
                                  for autonomous underwater vehicles . . . 14:1--14:??

ACM SIG{}PLAN Notices
Volume 50, Number 6, June, 2015

            Pavel Panchekha and   
         Alex Sanchez-Stern and   
            James R. Wilcox and   
                Zachary Tatlock   Automatically improving accuracy for
                                  floating point expressions . . . . . . . 1--11
              Danfeng Zhang and   
            Andrew C. Myers and   
       Dimitrios Vytiniotis and   
             Simon Peyton-Jones   Diagnosing type errors with class  . . . 12--21
              Nuno P. Lopes and   
             David Menendez and   
        Santosh Nagarakatte and   
                    John Regehr   Provably correct peephole optimizations
                                  with Alive . . . . . . . . . . . . . . . 22--32
           Maarten Faddegon and   
                    Olaf Chitil   Algorithmic debugging of real-world
                                  Haskell programs: deriving dependencies
                                  from the cost centre stack . . . . . . . 33--42
 Stelios Sidiroglou-Douskos and   
              Eric Lahtinen and   
                   Fan Long and   
                  Martin Rinard   Automatic error elimination by
                                  horizontal code transfer across multiple
                                  applications . . . . . . . . . . . . . . 43--54
                   Peng Liu and   
              Xiangyu Zhang and   
                 Omer Tripp and   
                   Yunhui Zheng   Light: replay via tightly bounded
                                  recording  . . . . . . . . . . . . . . . 55--64
        Christopher Lidbury and   
               Andrei Lascu and   
               Nathan Chong and   
          Alastair F. Donaldson   Many-core compiler fuzzing . . . . . . . 65--76
                Ilya Sergey and   
        Aleksandar Nanevski and   
               Anindya Banerjee   Mechanized verification of fine-grained
                                  concurrent programs  . . . . . . . . . . 77--87
               Rahul Sharma and   
              Michael Bauer and   
                     Alex Aiken   Verification of producer-consumer
                                  synchronization in GPU programs  . . . . 88--98
               Peter Gammie and   
          Antony L. Hosking and   
                 Kai Engelhardt   Relaxing safely: verified on-the-fly
                                  garbage collection for x86-TSO . . . . . 99--109
          Joseph Tassarotti and   
               Derek Dreyer and   
               Viktor Vafeiadis   Verifying read-copy-update in a logic
                                  for weak memory  . . . . . . . . . . . . 110--120
                  Yousun Ko and   
          Bernd Burgstaller and   
                Bernhard Scholz   LaminarIR: compile-time queues for
                                  structured streams . . . . . . . . . . . 121--130
                   Wei Ding and   
                Xulong Tang and   
            Mahmut Kandemir and   
              Yuanrui Zhang and   
                 Emre Kultursay   Optimizing off-chip accesses in
                                  multicores . . . . . . . . . . . . . . . 131--142
               Sanyam Mehta and   
                  Pen-Chung Yew   Improving compiler scalability:
                                  optimizing large programs at small price 143--152
                Andrew W. Appel   Verification of a cryptographic
                                  primitive: SHA-256 (abstract)  . . . . . 153--153
       Pantazis Deligiannis and   
      Alastair F. Donaldson and   
              Jeroen Ketema and   
                  Akash Lal and   
                   Paul Thomson   Asynchronous programming, analysis and
                                  testing with state machines  . . . . . . 154--164
                     Jeff Huang   Stateless model checking concurrent
                                  programs with maximal causality
                                  reduction  . . . . . . . . . . . . . . . 165--174
             Malavika Samak and   
  Murali Krishna Ramanathan and   
             Suresh Jagannathan   Synthesizing racy tests  . . . . . . . . 175--185
              Eric Koskinen and   
              Matthew Parkinson   The Push/Pull model of transactions  . . 186--195
           Jedidiah McClurg and   
             Hossein Hojjat and   
         Pavol Cerný and   
                    Nate Foster   Efficient synthesis of network updates   196--207
             Aditya V. Nori and   
              Sherjil Ozair and   
         Sriram K. Rajamani and   
            Deepak Vijaykeerthy   Efficient synthesis of probabilistic
                                  programs . . . . . . . . . . . . . . . . 208--217
           Daniel W. Barowy and   
              Sumit Gulwani and   
                   Ted Hart and   
                  Benjamin Zorn   FlashRelate: extracting relational data
                                  from semi-structured spreadsheets using
                                  examples . . . . . . . . . . . . . . . . 218--228
              John K. Feser and   
           Swarat Chaudhuri and   
                    Isil Dillig   Synthesizing data structure
                                  transformations from input-output
                                  examples . . . . . . . . . . . . . . . . 229--239
                   Ofri Ziv and   
                 Alex Aiken and   
            Guy Golan-Gueta and   
              G. Ramalingam and   
                    Mooly Sagiv   Composing concurrency control  . . . . . 240--249
               Naling Zhang and   
              Markus Kusano and   
                      Chao Wang   Dynamic partial order reduction for
                                  relaxed memory models  . . . . . . . . . 250--259
               Michael Emmi and   
            Constantin Enea and   
                      Jad Hamza   Monitoring refinement via symbolic
                                  reasoning  . . . . . . . . . . . . . . . 260--269
          Stephen Longfield and   
          Brittany Nkounkou and   
              Rajit Manohar and   
                      Ross Tate   Preventing glitches and short circuits
                                  in high-level self-timed chip
                                  specifications . . . . . . . . . . . . . 270--279
                  Akash Lal and   
                    Shaz Qadeer   DAG inlining: a decision procedure for
                                  reachability-modulo-theories in
                                  hierarchical programs  . . . . . . . . . 280--290
             Andrew Johnson and   
                 Lucas Waye and   
                Scott Moore and   
                  Stephen Chong   Exploring and enforcing security
                                  guarantees via program dependence graphs 291--302
            Gagandeep Singh and   
        Markus Püschel and   
                  Martin Vechev   Making numerical program analysis fast   303--313
           Yusheng Weijiang and   
        Shruthi Balakrishna and   
               Jianqiao Liu and   
                Milind Kulkarni   Tree dependence analysis . . . . . . . . 314--325
               Jeehoon Kang and   
              Chung-Kil Hur and   
             William Mansky and   
            Dmitri Garbuzov and   
            Steve Zdancewic and   
               Viktor Vafeiadis   A formal C memory model supporting
                                  integer-pointer casts  . . . . . . . . . 326--335
             Chris Hathhorn and   
             Chucky Ellison and   
                   Grigore Rosu   Defining the undefinedness of C  . . . . 336--345
                Daejun Park and   
          Andrei Stefanescu and   
                   Grigore Rosu   KJS: a complete formal semantics of
                                  JavaScript . . . . . . . . . . . . . . . 346--356
            James R. Wilcox and   
                  Doug Woos and   
            Pavel Panchekha and   
            Zachary Tatlock and   
                    Xi Wang and   
           Michael D. Ernst and   
                Thomas Anderson   Verdi: a framework for implementing and
                                  formally verifying distributed systems   357--368
              Oswaldo Olivo and   
                Isil Dillig and   
                     Calvin Lin   Static detection of asymptotic
                                  performance bugs in collection
                                  traversals . . . . . . . . . . . . . . . 369--378
                 Yufei Ding and   
                Jason Ansel and   
      Kalyan Veeramachaneni and   
                Xipeng Shen and   
           Una-May O'Reilly and   
              Saman Amarasinghe   Autotuning algorithmic choice for input
                                  sensitivity  . . . . . . . . . . . . . . 379--390
             Charith Mendis and   
            Jeffrey Bosboom and   
                   Kevin Wu and   
               Shoaib Kamil and   
      Jonathan Ragan-Kelley and   
              Sylvain Paris and   
                   Qin Zhao and   
              Saman Amarasinghe   Helium: lifting high-performance stencil
                                  kernels from stripped x86 binaries to
                                  halide DSL code  . . . . . . . . . . . . 391--402
          William J. Bowman and   
               Swaha Miller and   
           Vincent St-Amour and   
                 R. Kent Dybvig   Profile-guided meta-programming  . . . . 403--412
        KC Sivaramakrishnan and   
               Gowtham Kaki and   
             Suresh Jagannathan   Declarative programming over eventually
                                  consistent data stores . . . . . . . . . 413--424
                Jeremy Siek and   
             Peter Thiemann and   
                  Philip Wadler   Blame and coercion: together again for
                                  the first time . . . . . . . . . . . . . 425--435
               Yizhou Zhang and   
          Matthew C. Loring and   
          Guido Salvaneschi and   
             Barbara Liskov and   
                Andrew C. Myers   Lightweight, flexible object-oriented
                                  generics . . . . . . . . . . . . . . . . 436--445
    Phúc C. Nguy\ven and   
                 David Van Horn   Relatively complete counterexamples for
                                  higher-order programs  . . . . . . . . . 446--456
               Duc-Hiep Chu and   
               Joxan Jaffar and   
                Minh-Thai Trinh   Automatic induction proofs of
                                  data-structures in imperative programs   457--466
        Quentin Carbonneaux and   
               Jan Hoffmann and   
                     Zhong Shao   Compositional certified resource bounds  467--478
                 Karl Crary and   
            Michael J. Sullivan   Peer-to-peer affine commitment using
                                  bitcoin  . . . . . . . . . . . . . . . . 479--488
               Ton Chanh Le and   
              Shengchao Qin and   
                  Wei-Ngan Chin   Termination and non-termination
                                  specification inference  . . . . . . . . 489--498
       Murali Krishna Emani and   
                Michael O'Boyle   Celebrating diversity: a mixture of
                                  experts approach for runtime mapping in
                                  dynamic environments . . . . . . . . . . 499--508
                    Bin Ren and   
               Youngjoon Jo and   
      Sriram Krishnamoorthy and   
              Kunal Agrawal and   
                Milind Kulkarni   Efficient execution of recursive
                                  programs on commodity vector hardware    509--520
               Anand Venkat and   
                  Mary Hall and   
                Michelle Strout   Loop and data transformations for sparse
                                  matrix code  . . . . . . . . . . . . . . 521--532
        Dimitrios Prountzos and   
             Roman Manevich and   
                 Keshav Pingali   Synthesizing parallel graph programs via
                                  automated planning . . . . . . . . . . . 533--544
                Stefan Marr and   
               Chris Seaton and   
        Stéphane Ducasse   Zero-overhead metaprogramming:
                                  reflection and metaobject protocols fast
                                  and without compromises  . . . . . . . . 545--554
      Chinawat Isradisaikul and   
                Andrew C. Myers   Finding counterexamples from parsing
                                  conflicts  . . . . . . . . . . . . . . . 555--564
                 Alan Leung and   
             John Sarracino and   
                   Sorin Lerner   Interactive parser synthesis by example  565--574
              Brandon Lucia and   
              Benjamin Ransford   A simpler, safer programming and
                                  execution model for intermittent systems 575--585
               Nuno Machado and   
              Brandon Lucia and   
          Luís Rodrigues   Concurrency debugging with differential
                                  schedule projections . . . . . . . . . . 586--595
       Venkatesh Srinivasan and   
                    Thomas Reps   Synthesis of machine code from semantics 596--607
              Laure Gonnord and   
             David Monniaux and   
                Gabriel Radanne   Synthesis of ranking functions using
                                  extremal counterexamples . . . . . . . . 608--618
        Peter-Michael Osera and   
                Steve Zdancewic   Type-and-example-directed program
                                  synthesis  . . . . . . . . . . . . . . . 619--630

ACM SIG{}PLAN Notices
Volume 50, Number 7, July, 2015

              Cheng-Chun Tu and   
            Michael Ferdman and   
              Chao-tung Lee and   
                Tzi-cker Chiueh   A Comprehensive Implementation and
                                  Evaluation of Direct Interrupt Delivery  1--15
            Jonas Pfefferle and   
             Patrick Stuedi and   
            Animesh Trivedi and   
            Bernard Metzler and   
           Ionnis Koltsidas and   
                Thomas R. Gross   A Hybrid I/O Virtualization Framework
                                  for RDMA-capable Network Interfaces  . . 17--30
           Andrew J. Younge and   
          John Paul Walters and   
           Stephen P. Crago and   
                Geoffrey C. Fox   Supporting High Performance Molecular
                                  Dynamics in Virtualized Clusters using
                                  IOMMU, SR-IOV, and GPUDirect . . . . . . 31--38
                    Fei Guo and   
              Seongbeom Kim and   
              Yury Baskakov and   
                 Ishan Banerjee   Proactively Breaking Large Pages to
                                  Improve Memory Overcommitment
                                  Performance in VMware ESXi . . . . . . . 39--51
                   Zhe Wang and   
                 Jianjun Li and   
               Chenggang Wu and   
               Dongyan Yang and   
             Zhenjiang Wang and   
              Wei-Chung Hsu and   
                     Bin Li and   
                      Yong Guan   HSPT: Practical Implementation and
                                  Efficient Management of Embedded Shadow
                                  Page Tables for Cross-ISA System Virtual
                                  Machines . . . . . . . . . . . . . . . . 53--64
                 Jens Kehne and   
            Jonathan Metter and   
                  Frank Bellosa   GPUswap: Enabling Oversubscription of
                                  GPU Memory through Transparent Swapping  65--77
               Vishal Gupta and   
                    Min Lee and   
                 Karsten Schwan   HeteroVisor: Exploiting Resource
                                  Heterogeneity to Enhance the Elasticity
                                  of Cloud Platforms . . . . . . . . . . . 79--92
                   Hui Wang and   
               Canturk Isci and   
        Lavanya Subramanian and   
               Jongmoo Choi and   
                 Depei Qian and   
                     Onur Mutlu   A-DRM: Architecture-aware Distributed
                                  Resource Management of Virtualized
                                  Clusters . . . . . . . . . . . . . . . . 93--106
         Rayman Preet Singh and   
                 Tim Brecht and   
                      S. Keshav   Towards VM Consolidation Using a
                                  Hierarchy of Idle States . . . . . . . . 107--119
               Stephen Kyle and   
               Hugh Leather and   
          Björn Franke and   
               Dave Butcher and   
                Stuart Monteith   Application of Domain-aware Binary
                                  Fuzzing to Aid Android Virtual Machine
                                  Testing  . . . . . . . . . . . . . . . . 121--132
               Sahil Suneja and   
               Canturk Isci and   
               Eyal de Lara and   
                   Vasanth Bala   Exploring VM Introspection: Techniques
                                  and Trade-offs . . . . . . . . . . . . . 133--146
               Junyuan Zeng and   
                Yangchun Fu and   
                   Zhiqiang Lin   PEMU: a Pin Highly Compatible Out-of-VM
                                  Dynamic Binary Instrumentation Framework 147--160
             Shehbaz Jaffer and   
                Piyus Kedia and   
                   Sorav Bansal   Improving Remote Desktopping Through
                                  Adaptive Record/Replay . . . . . . . . . 161--172
                 JinSeok Oh and   
               Jin-woo Kwon and   
               Hyukwoo Park and   
                  Soo-Mook Moon   Migration of Web Applications with
                                  Seamless Execution . . . . . . . . . . . 173--185
                Jianbao Ren and   
                    Yong Qi and   
                 Yuehua Dai and   
             Xiaoguang Wang and   
                         Yi Shi   AppSec: a Safe Execution Environment for
                                  Security Sensitive Applications  . . . . 187--199
              Seongwook Jin and   
                 Jinho Seol and   
                Jaehyuk Huh and   
               Seungryoul Maeng   Hardware-Assisted Secure Resource
                                  Accounting under a Vulnerable Hypervisor 201--213
                    Lei Cui and   
                  Tianyu Wo and   
                      Bo Li and   
                 Jianxin Li and   
                    Bin Shi and   
                   Jinpeng Huai   PARS: a Page-Aware Replication System
                                  for Efficiently Storing Virtual Machine
                                  Snapshots  . . . . . . . . . . . . . . . 215--228

ACM SIG{}PLAN Notices
Volume 50, Number 8, August, 2015

                Vincent Gramoli   More than you ever wanted to know about
                                  synchronization: synchrobench, measuring
                                  the impact of the synchronization on
                                  concurrent algorithms  . . . . . . . . . 1--10
               Dan Alistarh and   
            Justin Kopinsky and   
                   Jerry Li and   
                     Nir Shavit   The SprayList: a scalable relaxed
                                  priority queue . . . . . . . . . . . . . 11--20
                 Maya Arbel and   
                  Adam Morrison   Predicate RCU: an RCU for scalable
                                  concurrent updates . . . . . . . . . . . 21--30
            Guy Golan-Gueta and   
              G. Ramalingam and   
                Mooly Sagiv and   
                     Eran Yahav   Automatic scalable atomicity via
                                  semantic locking . . . . . . . . . . . . 31--41
           Austin R. Benson and   
                   Grey Ballard   A framework for practical parallel fast
                                  matrix multiplication  . . . . . . . . . 42--53
            Aravind Acharya and   
                Uday Bondhugula   PLUTO+: near-complete modeling of affine
                                  transformations for parallelism and
                                  locality . . . . . . . . . . . . . . . . 54--64
         Mahesh Ravishankar and   
           Roshan Dathathri and   
            Venmugil Elango and   
    Louis-Noël Pouchet and   
               J. Ramanujam and   
             Atanas Rountev and   
                  P. Sadayappan   Distributed memory code generation for
                                  mixed irregular/regular computations . . 65--75
            Lingxiang Xiang and   
               Michael L. Scott   Software partitioning of hardware
                                  transactions . . . . . . . . . . . . . . 76--86
        Alexandro Baldassin and   
                Edson Borin and   
                   Guido Araujo   Performance implications of dynamic
                                  memory allocators on transactional
                                  memory systems . . . . . . . . . . . . . 87--96
               Minjia Zhang and   
               Jipeng Huang and   
                    Man Cao and   
                Michael D. Bond   Low-overhead software transactional
                                  memory with progress guarantees and
                                  strong semantics . . . . . . . . . . . . 97--108
              Milind Chabbi and   
              Wim Lavrijsen and   
               Wibe de Jong and   
                Koushik Sen and   
        John Mellor-Crummey and   
                   Costin Iancu   Barrier elision for production parallel
                                  programs . . . . . . . . . . . . . . . . 109--119
    Lo\"\ic Thébault and   
                 Eric Petit and   
                     Quang Dinh   Scalable and efficient implementation of
                                  $3$D unstructured meshes computation: a
                                  case study on matrix assembly  . . . . . 120--129
          Nathan R. Tallent and   
             Abhinav Vishnu and   
           Hubertus Van Dam and   
                 Jeff Daily and   
         Darren J. Kerbyson and   
                  Adolfy Hoisie   Diagnosing the causes and severity of
                                  one-sided message contention . . . . . . 130--139
             Yen-Jung Chang and   
                  Vijay K. Garg   A parallel algorithm for global states
                                  enumeration in concurrent systems  . . . 140--149
          Tiago Cogumbreiro and   
                 Raymond Hu and   
          Francisco Martins and   
                 Nobuko Yoshida   Dynamic deadlock verification for
                                  general barrier synchronisation  . . . . 150--160
                Yi-Ping You and   
                Hen-Jung Wu and   
              Yeh-Ning Tsai and   
                  Yen-Ting Chao   VirtCL: a framework for OpenCL device
                                  abstraction and management . . . . . . . 161--172
               Arash Ashari and   
          Shirish Tatikonda and   
             Matthias Boehm and   
          Berthold Reinwald and   
             Keith Campbell and   
           John Keenleyside and   
                  P. Sadayappan   On optimizing machine learning workloads
                                  via kernel fusion  . . . . . . . . . . . 173--182
              Kaiyuan Zhang and   
                  Rong Chen and   
                     Haibo Chen   NUMA-aware graph-structured analytics    183--193
               Chenning Xie and   
                  Rong Chen and   
               Haibing Guan and   
                 Binyu Zang and   
                     Haibo Chen   SYNC or ASYNC: time to fuse for
                                  distributed graph-parallel computation   194--204
                  Yuan Tang and   
                Ronghui You and   
                 Haibin Kan and   
         Jesmin Jahan Tithi and   
           Pramod Ganapathi and   
            Rezaul A. Chowdhury   Cache-oblivious wavefront: improving
                                  parallelism of recursive dynamic
                                  programming algorithms without losing
                                  cache-efficiency . . . . . . . . . . . . 205--214
              Milind Chabbi and   
              Michael Fagan and   
            John Mellor-Crummey   High performance locks for multi-level
                                  NUMA systems . . . . . . . . . . . . . . 215--226
                Zoltan Majo and   
                Thomas R. Gross   A library for portable and composable
                                  data locality optimizations for NUMA
                                  systems  . . . . . . . . . . . . . . . . 227--238
            Abdelhalim Amer and   
                  Huiwei Lu and   
                 Yanjie Wei and   
               Pavan Balaji and   
               Satoshi Matsuoka   MPI+Threads: runtime contention and
                                  remedies . . . . . . . . . . . . . . . . 239--248
        Andrew J. McPherson and   
            Vijay Nagarajan and   
              Susmit Sarkar and   
                 Marcelo Cintra   Fence placement for legacy
                                  data-race-free programs via
                                  synchronization read detection . . . . . 249--250
              Xianglan Piao and   
                Channoh Kim and   
               Younghwan Oh and   
                 Huiying Li and   
               Jincheon Kim and   
                 Hanjun Kim and   
                     Jae W. Lee   JAWS: a JavaScript framework for
                                  adaptive CPU--GPU work sharing . . . . . 251--252
               Hyunseok Seo and   
                Jinwook Kim and   
                    Min-Soo Kim   GStream: a graph streaming processing
                                  method for large-scale graphs on GPUs    253--254
            Nabeel Al-Saber and   
                Milind Kulkarni   SemCache++: semantics-aware caching for
                                  efficient multi-GPU offloading . . . . . 255--256
                Jungwon Kim and   
                 Seyong Lee and   
              Jeffrey S. Vetter   An OpenACC-based unified programming
                                  model for multi-accelerator systems  . . 257--258
               Paul Thomson and   
          Alastair F. Donaldson   The lazy happens-before relation: better
                                  partial-order reduction for systematic
                                  concurrency testing  . . . . . . . . . . 259--260
               Azzam Haidar and   
              Tingxing Dong and   
             Piotr Luszczek and   
            Stanimire Tomov and   
                  Jack Dongarra   Towards batched linear solvers on
                                  accelerated hardware platforms . . . . . 261--262
        Saurav Muralidharan and   
            Michael Garland and   
            Bryan Catanzaro and   
            Albert Sidelnik and   
                      Mary Hall   A collection-oriented programming model
                                  for performance portability  . . . . . . 263--264
             Yangzihao Wang and   
            Andrew Davidson and   
                Yuechao Pan and   
                   Yuduo Wu and   
                Andy Riffel and   
                  John D. Owens   Gunrock: a high-performance graph
                                  processing library on the GPU  . . . . . 265--266
                Olga Pearce and   
               Todd Gamblin and   
      Bronis R. de Supinski and   
              Martin Schulz and   
                 Nancy M. Amato   Decoupled load balancing . . . . . . . . 267--268
                     Ye Jin and   
              Mingliang Liu and   
                Xiaosong Ma and   
                   Qing Liu and   
               Jeremy Logan and   
         Norbert Podhorszki and   
             Jong Youl Choi and   
                   Scott Klasky   Combining phase identification and
                                  statistic modeling for automated
                                  parallel benchmark generation  . . . . . 269--270
                Xuanhua Shi and   
              Junling Liang and   
                   Sheng Di and   
               Bingsheng He and   
                    Hai Jin and   
                      Lu Lu and   
              Zhixiang Wang and   
                   Xuan Luo and   
                 Jianlong Zhong   Optimization of asynchronous graph
                                  processing on GPU with hybrid coloring
                                  model  . . . . . . . . . . . . . . . . . 271--272
                 Scott West and   
             Sebastian Nanz and   
                 Bertrand Meyer   Efficient and reasonable object-oriented
                                  concurrency  . . . . . . . . . . . . . . 273--274
       Vassilis Vassiliadis and   
     Konstantinos Parasyris and   
        Charalambos Chalios and   
   Christos D. Antonopoulos and   
               Spyros Lalis and   
            Nikolaos Bellas and   
        Hans Vandierendonck and   
      Dimitrios S. Nikolopoulos   A programming model and runtime system
                                  for significance-aware energy-efficient
                                  computing  . . . . . . . . . . . . . . . 275--276
              Martin Wimmer and   
               Jakob Gruber and   
  Jesper Larsson Träff and   
               Philippas Tsigas   The lock-free $k$-LSM relaxed priority
                                  queue  . . . . . . . . . . . . . . . . . 277--278
        Emmanuelle Saillard and   
         Patrick Carribault and   
                  Denis Barthou   Static/dynamic validation of MPI
                                  collective communications in
                                  multi-threaded context . . . . . . . . . 279--280
    Arunmoezhi Ramachandran and   
                  Neeraj Mittal   CASTLE: fast concurrent internal binary
                                  search tree using edge-based locking . . 281--282
                  Madan Das and   
           Gabriel Southern and   
                     Jose Renau   Section based program analysis to reduce
                                  overhead of detecting unsynchronized
                                  thread communication . . . . . . . . . . 283--284
               Harshvardhan and   
             Nancy M. Amato and   
           Lawrence Rauchwerger   A hierarchical approach to reducing
                                  communication in parallel graph
                                  algorithms . . . . . . . . . . . . . . . 285--286
                Yifeng Chen and   
                  Xiang Cui and   
                       Hong Mei   Tiles: a new language mechanism for
                                  heterogeneous parallelism  . . . . . . . 287--288
               Cosmin Radoi and   
             Stephan Herhut and   
           Jaswanth Sreeram and   
                      Danny Dig   Are web applications ready for
                                  parallelism? . . . . . . . . . . . . . . 289--290

ACM SIG{}PLAN Notices
Volume 50, Number 9, September, 2015

                Rastislav Bodik   Program synthesis: opportunities for the
                                  next decade  . . . . . . . . . . . . . . 1--1
                Tiark Rompf and   
                      Nada Amin   Functional pearl: a SQL to C compiler in
                                  500 lines of code  . . . . . . . . . . . 2--9
                  Adam Chlipala   An optimizing compiler for a purely
                                  functional web-application language  . . 10--21
             Spenser Bauman and   
        Carl Friedrich Bolz and   
          Robert Hirschfeld and   
          Vasily Kirilichev and   
                Tobias Pape and   
             Jeremy G. Siek and   
            Sam Tobin-Hochstadt   Pycket: a tracing JIT for a functional
                                  language . . . . . . . . . . . . . . . . 22--34
               Andreas Rossberg   1ML --- core and modules united ($F$-ing
                                  first-class modules) . . . . . . . . . . 35--47
                 Niki Vazou and   
            Alexander Bakst and   
                   Ranjit Jhala   Bounded refinement types . . . . . . . . 48--61
           Kazutaka Matsuda and   
                      Meng Wang   Applicative bidirectional programming
                                  with lenses  . . . . . . . . . . . . . . 62--74
             Justin Pombrio and   
          Shriram Krishnamurthi   Hygienic resugaring of compositional
                                  desugaring . . . . . . . . . . . . . . . 75--87
           Pierre Genev\`es and   
                   Nils Gesbert   XQuery and static typing: tackling the
                                  problem of backward axes . . . . . . . . 88--100
          William J. Bowman and   
                     Amal Ahmed   Noninterference for free . . . . . . . . 101--113
             Marco Gaboardi and   
          Romain Péchoux   Algebras and coalgebras in the light
                                  affine Lambda calculus . . . . . . . . . 114--126
                Paul Downen and   
       Philip Johnson-Freyd and   
                 Zena M. Ariola   Structures for structural recursion  . . 127--139
              Norman Danner and   
           Daniel R. Licata and   
                  Ramyaa Ramyaa   Denotational cost semantics for
                                  functional languages with inductive
                                  types  . . . . . . . . . . . . . . . . . 140--151
            Martin Avanzini and   
               Ugo Dal Lago and   
                    Georg Moser   Analysing the complexity of functional
                                  programs: higher-order meets first-order 152--164
                   Mary Sheeran   Functional programming and hardware
                                  design: still interesting after all
                                  these years  . . . . . . . . . . . . . . 165--165
                 Georg Neis and   
              Chung-Kil Hur and   
          Jan-Oliver Kaiser and   
           Craig McLaughlin and   
               Derek Dreyer and   
               Viktor Vafeiadis   Pilsner: a compositionally verified
                                  compiler for a higher-order imperative
                                  language . . . . . . . . . . . . . . . . 166--178
               Beta Ziliani and   
                Matthieu Sozeau   A unification algorithm for Coq
                                  featuring universe polymorphism and
                                  overloading  . . . . . . . . . . . . . . 179--191
Jasmin Christian Blanchette and   
             Andrei Popescu and   
                Dmitriy Traytel   Foundational extensible corecursion: a
                                  proof assistant perspective  . . . . . . 192--204
             Michel Steuwer and   
           Christian Fensch and   
                Sam Lindley and   
              Christophe Dubach   Generating performance portable code
                                  using rewrite rules: from high-level
                                  functional expressions to
                                  high-performance OpenCL code . . . . . . 205--217
             Ryan R. Newton and   
              Peter P. Fogg and   
                   Ali Varamesh   Adaptive lock-free maps:
                                  purely-functional to scalable  . . . . . 218--229
                 Matthew Le and   
                  Matthew Fluet   Partial aborts for transactions via
                                  first-class continuations  . . . . . . . 230--242
            Gabriel Scherer and   
             Didier Rémy   Which simple types have a unique
                                  inhabitant?  . . . . . . . . . . . . . . 243--255
                Joshua Dunfield   Elaborating evaluation-order
                                  polymorphism . . . . . . . . . . . . . . 256--268
            Tillmann Rendel and   
          Julia Trieflinger and   
                Klaus Ostermann   Automatic refunctionalization to a
                                  language with copattern matching: with
                                  applications to the expression problem   269--279
                Alejandro Russo   Functional pearl: two can keep a secret,
                                  if one of them uses Haskell  . . . . . . 280--288
               Pablo Buiras and   
       Dimitrios Vytiniotis and   
                Alejandro Russo   HLIO: mixing static and dynamic typing
                                  for information-flow control in Haskell  289--301
         Atze van der Ploeg and   
                  Koen Claessen   Practical principled FRP: forget the
                                  past, change the future, FRPNow! . . . . 302--314
               Patrick Bahr and   
              Jost Berthold and   
                  Martin Elsman   Certified symbolic management of
                                  financial multi-party contracts  . . . . 315--327
             Steffen Smolka and   
        Spiridon Eliopoulos and   
                Nate Foster and   
                     Arjun Guha   A fast compiler for NetKAT . . . . . . . 328--341
             Nicolas Stucki and   
                Tiark Rompf and   
                Vlad Ureche and   
                   Phil Bagwell   RRB vector: a practical general purpose
                                  immutable sequence . . . . . . . . . . . 342--354
           Mauro Jaskelioff and   
                 Exequiel Rivas   Functional pearl: a smart view on
                                  datatypes  . . . . . . . . . . . . . . . 355--361
             Edward Z. Yang and   
          Giovanni Campagna and   
        Ömer S. Agacan and   
           Ahmed El-Hassany and   
          Abhishek Kulkarni and   
                 Ryan R. Newton   Efficient communication and collection
                                  with compact normal forms  . . . . . . . 362--374
              Matthias Keil and   
                 Peter Thiemann   Blame assignment for higher-order
                                  contracts with intersection and union    375--386
             Cameron Swords and   
                  Amr Sabry and   
            Sam Tobin-Hochstadt   Expressing contract monitors as patterns
                                  of communication . . . . . . . . . . . . 387--399
                     He Zhu and   
             Aditya V. Nori and   
             Suresh Jagannathan   Learning refinement types  . . . . . . . 400--411
        Zvonimir Pavlinovic and   
                   Tim King and   
                    Thomas Wies   Practical SMT-based type error
                                  localization . . . . . . . . . . . . . . 412--423
       Georgios Karachalias and   
             Tom Schrijvers and   
       Dimitrios Vytiniotis and   
             Simon Peyton Jones   GADTs meet their match: pattern-matching
                                  warnings that account for GADTs, guards,
                                  and laziness . . . . . . . . . . . . . . 424--436

ACM SIG{}PLAN Notices
Volume 50, Number 10, October, 2015

              Matthew Hague and   
             Anthony W. Lin and   
                 C.-H. Luke Ong   Detecting redundant CSS rules in HTML5
                                  applications: a tree rewriting approach  1--19
               Brian Demsky and   
                    Patrick Lam   SATCheck: SAT-directed stateless model
                                  checking for SC and TSO  . . . . . . . . 20--36
                 Ivan Kuraj and   
              Viktor Kuncak and   
                 Daniel Jackson   Programming with enumerable sets of
                                  structures . . . . . . . . . . . . . . . 37--56
           Casper S. Jensen and   
       Anders Mòller and   
            Veselin Raychev and   
           Dimitar Dimitrov and   
                  Martin Vechev   Stateless model checking of event-driven
                                  applications . . . . . . . . . . . . . . 57--73
          Thibaud Hottelier and   
                Rastislav Bodik   Synthesis of layout engines from
                                  relational constraints . . . . . . . . . 74--88
           Sebastian Erdweg and   
             Moritz Lichter and   
                   Manuel Weiel   A sound and optimal incremental build
                                  system with dynamic dependencies . . . . 89--106
          Oleksandr Polozov and   
                  Sumit Gulwani   FlashMeta: a framework for inductive
                                  program synthesis  . . . . . . . . . . . 107--126
              Haoyuan Zhang and   
                  Zewei Chu and   
    Bruno C. d. S. Oliveira and   
             Tijs van der Storm   Scrap your boilerplate with object
                                  algebras . . . . . . . . . . . . . . . . 127--146
               Rahul Sharma and   
              Eric Schkufza and   
         Berkeley Churchill and   
                     Alex Aiken   Conditionally correct superoptimization  147--162
             Sam Blackshear and   
         Bor-Yuh Evan Chang and   
                 Manu Sridharan   Selective control-flow abstraction via
                                  jumping  . . . . . . . . . . . . . . . . 163--182
     Ravichandhran Madhavan and   
          Mikaël Mayer and   
              Sumit Gulwani and   
                  Viktor Kuncak   Automating grammar comparison  . . . . . 183--200
                 Gian Ntzik and   
               Philippa Gardner   Reasoning about the POSIX file system:
                                  local update and global pathnames  . . . 201--220
                 Peizhao Ou and   
                   Brian Demsky   AutoMO: automatic inference of memory
                                  order parameters for C/C++11 . . . . . . 221--240
           Swarnendu Biswas and   
               Minjia Zhang and   
            Michael D. Bond and   
                  Brandon Lucia   Valor: efficient, software-only region
                                  conflict exceptions  . . . . . . . . . . 241--259
             Nachshon Cohen and   
                   Erez Petrank   Automatic memory reclamation for
                                  lock-free data structures  . . . . . . . 260--279
       Hugo A. López and   
      Eduardo R. B. Marques and   
          Francisco Martins and   
                Nicholas Ng and   
        César Santos and   
Vasco Thudichum Vasconcelos and   
                 Nobuko Yoshida   Protocol-based verification of
                                  message-passing parallel programs  . . . 280--298
             Osbert Bastani and   
               Saswat Anand and   
                     Alex Aiken   Interactively verifying absence of
                                  explicit information flows in Android
                                  apps . . . . . . . . . . . . . . . . . . 299--315
             Lucas Brutschy and   
             Pietro Ferrara and   
                 Omer Tripp and   
                  Marco Pistoia   ShamDroid: gracefully degrading
                                  functionality in the presence of limited
                                  resource access  . . . . . . . . . . . . 316--331
               Pavol Bielik and   
            Veselin Raychev and   
                  Martin Vechev   Scalable race detection for Android
                                  applications . . . . . . . . . . . . . . 332--348
                Yongjian Hu and   
              Tanzirul Azim and   
                 Iulian Neamtiu   Versatile yet lightweight
                                  record-and-replay for Android  . . . . . 349--366
                John Bender and   
              Mohsen Lesani and   
                  Jens Palsberg   Declarative fence insertion  . . . . . . 367--385
                      Vu Le and   
              Chengnian Sun and   
                    Zhendong Su   Finding deep compiler bugs via guided
                                  stochastic program mutation  . . . . . . 386--399
              Haichuan Wang and   
                David Padua and   
                        Peng Wu   Vectorization of Apply to reduce
                                  interpretation overhead of R . . . . . . 400--415
              Tihomir Gvero and   
                  Viktor Kuncak   Synthesizing Java expressions from
                                  free-form queries  . . . . . . . . . . . 416--432
                 Yudi Zheng and   
       Lubomír Bulej and   
                  Walter Binder   Accurate profiling in the presence of
                                  dynamic compilation  . . . . . . . . . . 433--450
              Martin Aigner and   
        Christoph M. Kirsch and   
           Michael Lippautz and   
                   Ana Sokolova   Fast, multicore-scalable,
                                  low-fragmentation memory allocation
                                  through large virtual memory and global
                                  data structures  . . . . . . . . . . . . 451--469
               Brett Boston and   
             Adrian Sampson and   
               Dan Grossman and   
                      Luis Ceze   Probability type inference for flexible
                                  approximate programming  . . . . . . . . 470--487
           Michael R. Jantz and   
        Forrest J. Robinson and   
         Prasad A. Kulkarni and   
               Kshitij A. Doshi   Cross-layer memory management for
                                  managed language applications  . . . . . 488--504
              Magnus Madsen and   
                  Frank Tip and   
           Ondrej Lhoták   Static analysis of event-driven Node.js
                                  JavaScript applications  . . . . . . . . 505--519
                    Yu Feng and   
                 Xinyu Wang and   
                Isil Dillig and   
                     Calvin Lin   EXPLORER : query- and demand-driven
                                  exploration of interprocedural control
                                  flow properties  . . . . . . . . . . . . 520--534
              Jens Dietrich and   
         Nicholas Hollingum and   
                Bernhard Scholz   Giga-scale exhaustive points-to analysis
                                  for Java in under a minute . . . . . . . 535--551
               David Darais and   
              Matthew Might and   
                 David Van Horn   Galois transformers and modular abstract
                                  interpreters: reusable metatheory for
                                  program analysis . . . . . . . . . . . . 552--571
                  Hakjoo Oh and   
              Hongseok Yang and   
                   Kwangkeun Yi   Learning a strategy for adapting a
                                  program analysis via Bayesian
                                  optimisation . . . . . . . . . . . . . . 572--588
      Péricles Alves and   
              Fabian Gruber and   
          Johannes Doerfert and   
      Alexandros Lamprineas and   
             Tobias Grosser and   
           Fabrice Rastello and   
Fernando Magno Quintão Pereira   Runtime pointer disambiguation . . . . . 589--606
         Luca Della Toffola and   
             Michael Pradel and   
                Thomas R. Gross   Performance problems you can fix: a
                                  dynamic analysis of memoization
                                  opportunities  . . . . . . . . . . . . . 607--622
              Wen-Chuan Lee and   
                    Tao Bao and   
               Yunhui Zheng and   
              Xiangyu Zhang and   
                 Keval Vora and   
                    Rajiv Gupta   RAIVE: runtime assessment of
                                  floating-point instability by
                                  vectorization  . . . . . . . . . . . . . 623--638
                 Zhoulai Fu and   
                Zhaojun Bai and   
                    Zhendong Su   Automated backward error analysis for
                                  numerical code . . . . . . . . . . . . . 639--654
             Markus Voelter and   
           Arie van Deursen and   
                 Bernd Kolb and   
                 Stephan Eberle   Using C language extensions for
                                  developing embedded software: a case
                                  study  . . . . . . . . . . . . . . . . . 655--674
          Cristina V. Lopes and   
                    Joel Ossher   How scale affects structure in Java
                                  programs . . . . . . . . . . . . . . . . 675--694
           Luis Mastrangelo and   
            Luca Ponzanelli and   
               Andrea Mocci and   
              Michele Lanza and   
         Matthias Hauswirth and   
              Nathaniel Nystrom   Use at your own risk: the Java unsafe
                                  API in the wild  . . . . . . . . . . . . 695--710
                Sara Achour and   
               Martin C. Rinard   Approximate computation with outlier
                                  detection in Topaz . . . . . . . . . . . 711--730
             John Wickerson and   
                 Mark Batty and   
       Bradford M. Beckmann and   
          Alastair F. Donaldson   Remote-scope promotion: clarified,
                                  rectified, and verified  . . . . . . . . 731--747
          Matthew A. Hammer and   
            Joshua Dunfield and   
               Kyle Headley and   
            Nicholas Labich and   
          Jeffrey S. Foster and   
              Michael Hicks and   
                 David Van Horn   Incremental computation with names . . . 748--766
            Tim Felgentreff and   
             Todd Millstein and   
               Alan Borning and   
              Robert Hirschfeld   Checks and balances: constraint solving
                                  without surprises in object-constraint
                                  programming languages  . . . . . . . . . 767--782
     Michael J. Steindorfer and   
                Jurgen J. Vinju   Optimizing hash-array mapped tries for
                                  fast and lean immutable JVM collections  783--800
                Vlad Ureche and   
           Aggelos Biboudis and   
         Yannis Smaragdakis and   
                 Martin Odersky   Automating ad hoc data representation
                                  transformations  . . . . . . . . . . . . 801--820
                Stefan Marr and   
        Stéphane Ducasse   Tracing vs. partial evaluation:
                                  comparing meta-compilation approaches
                                  for self-optimizing interpreters . . . . 821--839
          Ganesha Upadhyaya and   
                  Hridesh Rajan   Effectively mapping linguistic
                                  abstractions for message-passing
                                  concurrency to threads on the Java
                                  Virtual Machine  . . . . . . . . . . . . 840--859
       Venkatesh Srinivasan and   
                    Thomas Reps   Partial evaluation of machine code . . . 860--879
           Sebastian Erdweg and   
            Oliver Bracevac and   
                Edlira Kuci and   
             Matthias Krebs and   
                    Mira Mezini   A co-contextual formulation of type
                                  rules and its application to incremental
                                  type checking  . . . . . . . . . . . . . 880--897
          Stephan Brandauer and   
                Dave Clarke and   
                Tobias Wrigstad   Disjointness domains for fine-grained
                                  aliasing . . . . . . . . . . . . . . . . 898--916
               Silvia Crafa and   
                  Luca Padovani   The chemical approach to
                                  typestate-oriented programming . . . . . 917--934
         Matías Toro and   
             Éric Tanter   Customizable gradual polymorphic effects
                                  for Scala  . . . . . . . . . . . . . . . 935--953

ACM SIG{}PLAN Notices
Volume 50, Number 11, November, 2015

              Sang-Hoon Kim and   
                 Sejun Kwon and   
                Jin-Soo Kim and   
                   Jinkyu Jeong   Controlling physical memory
                                  fragmentation in mobile systems  . . . . 1--14
              Ahmed Hussein and   
          Antony L. Hosking and   
              Mathias Payer and   
            Christopher A. Vick   Don't race the memory bus: taming the GC
                                  leadfoot . . . . . . . . . . . . . . . . 15--27
             Nachshon Cohen and   
                   Erez Petrank   Data structure aware garbage collector   28--40
            Bradley C. Kuszmaul   SuperMalloc: a super fast multithreaded
                                  \tt malloc for 64-bit machines . . . . . 41--55
        Erik Österlund and   
                 Welf Löwe   Concurrent compaction using a field
                                  pinning protocol . . . . . . . . . . . . 56--69
                     Yi Lin and   
               Kunshan Wang and   
       Stephen M. Blackburn and   
          Antony L. Hosking and   
                Michael Norrish   Stop and go: understanding yieldpoint
                                  behavior . . . . . . . . . . . . . . . . 70--80
              Codrut Stancu and   
           Christian Wimmer and   
          Stefan Brunthaler and   
                 Per Larsen and   
                  Michael Franz   Safe and efficient hybrid memory
                                  management for Java  . . . . . . . . . . 81--92
              Eliot Miranda and   
     Clément Béra   A partial read barrier for efficient
                                  support of live object-oriented
                                  programming  . . . . . . . . . . . . . . 93--104
            Daniel Clifford and   
               Hannes Payer and   
            Michael Stanton and   
                  Ben L. Titzer   Memento mori: dynamic
                                  allocation-site-based optimizations  . . 105--117
            Jonathan Shidal and   
               Ari J. Spilo and   
             Paul T. Scheid and   
              Ron K. Cytron and   
                Krishna M. Kavi   Recycling trash in cache . . . . . . . . 118--130
                Cody Cutler and   
                  Robert Morris   Reducing pause times with clustered
                                  collection . . . . . . . . . . . . . . . 131--142
             Callum Cameron and   
              Jeremy Singer and   
                 David Vengerov   The judgment of FORSETI: economic
                                  utility for dynamic heap sizing of
                                  multiple runtimes  . . . . . . . . . . . 143--156

ACM SIG{}PLAN Notices
Volume 50, Number 12, December, 2015

              Iavor S. Diatchki   Improving Haskell types with SMT . . . . 1--10
                    Adam Gundry   A typechecker plugin for units of
                                  measure: domain-specific constraint
                                  solving in GHC Haskell . . . . . . . . . 11--22
              Andrew Farmer and   
            Neil Sculthorpe and   
                      Andy Gill   Reasoning with the HERMIT: tool support
                                  for equational reasoning on GHC core
                                  programs . . . . . . . . . . . . . . . . 23--34
               Joachim Breitner   Formally proving a compiler
                                  transformation safe  . . . . . . . . . . 35--46
                 Ivan Perez and   
                 Henrik Nilsson   Bridging the GUI gap with reactive
                                  values and relations . . . . . . . . . . 47--58
                  Andy Gill and   
            Neil Sculthorpe and   
              Justin Dawson and   
        Aleksander Eskilson and   
              Andrew Farmer and   
                 Mark Grebe and   
         Jeffrey Rosenbluth and   
                 Ryan Scott and   
                  James Stanton   The remote monad design pattern  . . . . 59--70
              J. Garrett Morris   Variations on variants . . . . . . . . . 71--81
    Bruno C. d. S. Oliveira and   
              Shin-Cheng Mu and   
                   Shu-Hung You   Modular reifiable matching: a
                                  list-of-functors approach to two-level
                                  types  . . . . . . . . . . . . . . . . . 82--93
              Oleg Kiselyov and   
                   Hiromi Ishii   Freer monads, more extensible effects    94--105
                  Kenneth Foner   Functional pearl: getting a quick fix on
                                  comonads . . . . . . . . . . . . . . . . 106--117
               Jan Stolarek and   
         Simon Peyton Jones and   
           Richard A. Eisenberg   Injective type families for Haskell  . . 118--128
          Alejandro Serrano and   
              Jurriaan Hage and   
                   Patrick Bahr   Type families with class, type classes
                                  with family  . . . . . . . . . . . . . . 129--140
             Michael Walker and   
                 Colin Runciman   Déj\`a Fu: a concurrency testing library
                                  for Haskell  . . . . . . . . . . . . . . 141--152
José Manuel Calderón Trilla and   
                 Colin Runciman   Improving implicit parallelism . . . . . 153--164
             Adam \'Scibior and   
          Zoubin Ghahramani and   
               Andrew D. Gordon   Practical probabilistic programming with
                                  monads . . . . . . . . . . . . . . . . . 165--176
                   Jeff Polakow   Embedding a full linear lambda calculus
                                  in Haskell . . . . . . . . . . . . . . . 177--188
             Trevor Elliott and   
                   Lee Pike and   
              Simon Winwood and   
                 Pat Hickey and   
              James Bielman and   
                Jamey Sharp and   
                Eric Seidel and   
                John Launchbury   Guilt free Ivory . . . . . . . . . . . . 189--200
         Trevor L. McDonell and   
   Manuel M. T. Chakravarty and   
               Vinod Grover and   
                 Ryan R. Newton   Type-safe runtime code generation:
                                  accelerate to LLVM . . . . . . . . . . . 201--212


ACM SIG{}PLAN Notices
Volume 51, Number 1, January, 2016

            Kathryn S. McKinley   Programming the world of uncertain
                                  things (keynote) . . . . . . . . . . . . 1--2
              Richard M. Murray   Synthesis of reactive controllers for
                                  hybrid systems (keynote) . . . . . . . . 3--3
                   David Walker   Confluences in programming languages
                                  research (keynote) . . . . . . . . . . . 4--4
                 Matt Brown and   
                  Jens Palsberg   Breaking through the normalization
                                  barrier: a self-interpreter for F$_{\rm
                                  omega}$  . . . . . . . . . . . . . . . . 5--17
        Thorsten Altenkirch and   
                  Ambrus Kaposi   Type theory in type theory using
                                  quotient inductive types . . . . . . . . 18--29
                  Yufei Cai and   
         Paolo G. Giarrusso and   
                Klaus Ostermann   System F$_{\rm omega}$ with
                                  equirecursive types for datatype-generic
                                  programming  . . . . . . . . . . . . . . 30--43
        Pierre-Louis Curien and   
              Marcelo Fiore and   
     Guillaume Munch-Maccagnoni   A theory of effects and resources:
                                  adjunction models and polarised calculi  44--56
             Akihiro Murase and   
            Tachio Terauchi and   
            Naoki Kobayashi and   
               Ryosuke Sato and   
                   Hiroshi Unno   Temporal verification of higher-order
                                  functional programs  . . . . . . . . . . 57--68
          Gordon D. Plotkin and   
     Nikolaj Bjòrner and   
              Nuno P. Lopes and   
         Andrey Rybalchenko and   
                George Varghese   Scaling network verification using
                                  symmetry and surgery . . . . . . . . . . 69--83
          James Brotherston and   
          Nikos Gorogiannis and   
               Max Kanovich and   
                    Reuben Rowe   Model checking for symbolic-heap
                                  separation logic with inductive
                                  predicates . . . . . . . . . . . . . . . 84--96
              Eric Koskinen and   
                   Junfeng Yang   Reducing crash recoverability to
                                  reachability . . . . . . . . . . . . . . 97--108
                  Xin Zhang and   
                Ravi Mangal and   
             Aditya V. Nori and   
                     Mayur Naik   Query-guided maximum satisfiability  . . 109--122
             Anthony W. Lin and   
           Pablo Barceló   String solving with word equations and
                                  transducers: towards a logic for
                                  analysing mutation XSS . . . . . . . . . 123--136
              Luca Cardelli and   
           Mirco Tribastone and   
           Max Tschaikowski and   
                  Andrea Vandin   Symbolic computation of differential
                                  equivalences . . . . . . . . . . . . . . 137--150
              Matthew Hague and   
           Jonathan Kochems and   
                 C.-H. Luke Ong   Unboundedness and downward closures of
                                  higher-order pushdown automata . . . . . 151--163
         Dominique Devriese and   
           Marco Patrignani and   
                 Frank Piessens   Fully-abstract compilation by
                                  approximate back-translation . . . . . . 164--177
               Jeehoon Kang and   
              Yoonseung Kim and   
              Chung-Kil Hur and   
               Derek Dreyer and   
               Viktor Vafeiadis   Lightweight verification of separate
                                  compilation  . . . . . . . . . . . . . . 178--190
                 Ed Robbins and   
                  Andy King and   
                 Tom Schrijvers   From MinX to MinC: semantics-driven
                                  decompilation of recursive datatypes . . 191--203
           Florian Lorenzen and   
               Sebastian Erdweg   Sound type-dependent syntactic language
                                  extension  . . . . . . . . . . . . . . . 204--216
                 Oded Padon and   
              Neil Immerman and   
              Sharon Shoham and   
        Aleksandr Karbyshev and   
                    Mooly Sagiv   Decidability of inferring inductive
                                  invariants . . . . . . . . . . . . . . . 217--231
                  Rahman Lavaee   The hardness of data packing . . . . . . 232--242
    Stéphane Gimenez and   
                    Georg Moser   The complexity of interaction  . . . . . 243--255
               Nikhil Swamy and   
             Catalin Hritcu and   
             Chantal Keller and   
              Aseem Rastogi and   
    Antoine Delignat-Lavaud and   
               Simon Forest and   
      Karthikeyan Bhargavan and   
      Cédric Fournet and   
          Pierre-Yves Strub and   
          Markulf Kohlweiss and   
    Jean-Karim Zinzindohoue and   
Santiago Zanella-Béguelin   Dependent types and multi-monadic
                                  effects in F*  . . . . . . . . . . . . . 256--270
    Johannes Borgström and   
           Andrew D. Gordon and   
                Long Ouyang and   
              Claudio Russo and   
             Adam \'Scibior and   
                Marcin Szymczak   Fabular: regression formulas as
                                  probabilistic programming  . . . . . . . 271--283
Bjòrn Bugge Grathwohl and   
             Fritz Henglein and   
       Ulrik Terp Rasmussen and   
Kristoffer Aalund Sòholm and   
Sebastian Paaske Tòrholm   Kleenex: compiling nondeterministic
                                  transducers to deterministic streaming
                                  transducers  . . . . . . . . . . . . . . 284--297
                   Fan Long and   
                  Martin Rinard   Automatic patch generation by learning
                                  correct code . . . . . . . . . . . . . . 298--312
                  Omer Katz and   
               Ran El-Yaniv and   
                     Eran Yahav   Estimating types in binaries using
                                  predictive modeling  . . . . . . . . . . 313--326
      Krishnendu Chatterjee and   
                 Hongfei Fu and   
        Petr Novotný and   
          Rouzbeh Hasheminezhad   Algorithmic analysis of qualitative and
                                  quantitative termination problems for
                                  affine probabilistic programs  . . . . . 327--342
              Rishabh Singh and   
                  Sumit Gulwani   Transforming spreadsheet data types
                                  using examples . . . . . . . . . . . . . 343--356
              Mohsen Lesani and   
          Christian J. Bell and   
                  Adam Chlipala   Chapar: certified causally consistent
                                  distributed key-value stores . . . . . . 357--370
             Alexey Gotsman and   
              Hongseok Yang and   
             Carla Ferreira and   
           Mahsa Najafzadeh and   
                   Marc Shapiro   'Cause I'm strong enough': Reasoning
                                  about consistency choices in distributed
                                  systems  . . . . . . . . . . . . . . . . 371--384
              Hongjin Liang and   
                     Xinyu Feng   A program logic for concurrent objects
                                  under fair scheduling  . . . . . . . . . 385--399
              Cezara Dragoi and   
        Thomas A. Henzinger and   
                Damien Zufferey   PSync: a partially synchronous language
                                  for fault-tolerant distributed
                                  algorithms . . . . . . . . . . . . . . . 400--415
                 Sheng Chen and   
                   Martin Erwig   Principal type inference for GADTs . . . 416--428
              Ronald Garcia and   
            Alison M. Clark and   
             Éric Tanter   Abstracting gradual typing . . . . . . . 429--442
              Matteo Cimini and   
                 Jeremy G. Siek   The gradualizer: a methodology and
                                  algorithm for generating gradual type
                                  systems  . . . . . . . . . . . . . . . . 443--455
             Asumu Takikawa and   
              Daniel Feltey and   
               Ben Greenman and   
                 Max S. New and   
                  Jan Vitek and   
             Matthias Felleisen   Is sound gradual typing dead?  . . . . . 456--468
              Damien Octeau and   
                 Somesh Jha and   
             Matthew Dering and   
           Patrick McDaniel and   
           Alexandre Bartel and   
                      Li Li and   
              Jacques Klein and   
                  Yves Le Traon   Combining static analysis with
                                  probabilistic models to enable
                                  market-scale Android inter-component
                                  analysis . . . . . . . . . . . . . . . . 469--484
               Radu Grigore and   
                  Hongseok Yang   Abstraction refinement guided by a
                                  learnt probabilistic model . . . . . . . 485--498
                Pranav Garg and   
              Daniel Neider and   
              P. Madhusudan and   
                       Dan Roth   Learning invariants using decision trees
                                  and implication counterexamples  . . . . 499--512
               Michael Emmi and   
                Constantin Enea   Symbolic abstract data type inference    513--525
Somashekaracharya G. Bhaskaracharya and   
            Uday Bondhugula and   
                   Albert Cohen   SMO: an integrated approach to
                                  intra-array and inter-array storage
                                  optimization . . . . . . . . . . . . . . 526--538
                 Wenlei Bao and   
      Sriram Krishnamoorthy and   
    Louis-Noël Pouchet and   
           Fabrice Rastello and   
                  P. Sadayappan   PolyCheck: dynamic verification of
                                  iteration space transformations on
                                  affine programs  . . . . . . . . . . . . 539--554
              Marc Andrysco and   
               Ranjit Jhala and   
                   Sorin Lerner   Printing floating-point numbers: a
                                  faster, always correct method  . . . . . 555--567
            Dominic Orchard and   
                 Nobuko Yoshida   Effects as sessions, sessions as effects 568--581
                  Limin Jia and   
         Hannah Gommerstadt and   
                 Frank Pfenning   Monitors and blame assignment for
                                  higher-order session types . . . . . . . 582--594
           Davide Sangiorgi and   
             Valeria Vignudelli   Environmental bisimulations for
                                  probabilistic higher-order languages . . 595--607
                Shaked Flur and   
            Kathryn E. Gray and   
          Christopher Pulte and   
              Susmit Sarkar and   
                 Ali Sezgin and   
               Luc Maranget and   
                Will Deacon and   
                   Peter Sewell   Modelling the ARMv8 architecture,
                                  operationally: concurrency and ISA . . . 608--621
       Jean Pichon-Pharabod and   
                   Peter Sewell   A concurrency semantics for relaxed
                                  atomics that permits optimisation and
                                  avoids thin-air executions . . . . . . . 622--633
                 Mark Batty and   
      Alastair F. Donaldson and   
                 John Wickerson   Overhauling SC atomics in C11 and OpenCL 634--648
                  Ori Lahav and   
           Nick Giannarakis and   
               Viktor Vafeiadis   Taming release-acquire consistency . . . 649--662
                Thomas Reps and   
              Emma Turetsky and   
               Prathmesh Prabhu   Newtonian program analysis via tensor
                                  product  . . . . . . . . . . . . . . . . 663--677
                 Rongxin Wu and   
                  Xiao Xiao and   
           Shing-Chi Cheung and   
               Hongyu Zhang and   
                  Charles Zhang   Casper: an efficient approach to call
                                  trace collection . . . . . . . . . . . . 678--690
              Thomas Gilray and   
                Steven Lyde and   
           Michael D. Adams and   
              Matthew Might and   
                 David Van Horn   Pushdown control-flow analysis for free  691--704
                  Matthew Flatt   Binding as sets of scopes  . . . . . . . 705--717
               Ichiro Hasuo and   
           Shunsuke Shimizu and   
              Corina C\^\irstea   Lattice-theoretic progress measures and
                                  coalgebraic model checking . . . . . . . 718--732
      Krishnendu Chatterjee and   
   Amir Kafshdar Goharshady and   
        Rasmus Ibsen-Jensen and   
           Andreas Pavlogiannis   Algorithms for algebraic path properties
                                  in concurrent systems of constant
                                  treewidth components . . . . . . . . . . 733--747
                Koko Muroya and   
            Naohiko Hoshino and   
                   Ichiro Hasuo   Memoryful geometry of interaction II:
                                  recursion and adequacy . . . . . . . . . 748--760
            Veselin Raychev and   
               Pavol Bielik and   
              Martin Vechev and   
                 Andreas Krause   Learning programs from noisy data  . . . 761--774
             James Bornholt and   
               Emina Torlak and   
               Dan Grossman and   
                      Luis Ceze   Optimizing synthesis with metasketches   775--788
           Aws Albarghouthi and   
                Isil Dillig and   
                 Arie Gurfinkel   Maximal specification synthesis  . . . . 789--801
           Jonathan Frankle and   
        Peter-Michael Osera and   
               David Walker and   
                Steve Zdancewic   Example-directed synthesis: a
                                  type-theoretic interpretation  . . . . . 802--815

ACM SIG{}PLAN Notices
Volume 51, Number 2, February, 2016

              Michael Homer and   
              Timothy Jones and   
                    James Noble   From APIs to languages: generalising
                                  method names . . . . . . . . . . . . . . 1--12
 André Murbach Maidl and   
          Fabio Mascarenhas and   
          Roberto Ierusalimschy   A formalization of typed lua . . . . . . 13--25
         Éric Tanter and   
               Nicolas Tabareau   Gradual certified programming in coq . . 26--40
                 Erik Ernst and   
       Anders Mòller and   
            Mathias Schwarz and   
                  Fabio Strocco   Message safety in Dart . . . . . . . . . 41--53
                Steven Lyde and   
            William E. Byrd and   
                  Matthew Might   Control-flow analysis of dynamic
                                  languages via pointer analysis . . . . . 54--62
                    Marc Feeley   Compiling for multi-language task
                                  migration  . . . . . . . . . . . . . . . 63--77
           Matthias Grimmer and   
               Chris Seaton and   
              Roland Schatz and   
     Thomas Würthinger and   
 Hanspeter Mössenböck   High-performance cross-language
                                  interoperability in a multi-language
                                  runtime  . . . . . . . . . . . . . . . . 78--90
         David Leopoldseder and   
              Lukas Stadler and   
           Christian Wimmer and   
 Hanspeter Mössenböck   Java-to-JavaScript translation via
                                  structured control flow reconstruction
                                  of compiler IR . . . . . . . . . . . . . 91--103
                Tobias Pape and   
            Tim Felgentreff and   
          Robert Hirschfeld and   
              Anton Gulenko and   
            Carl Friedrich Bolz   Language-independent storage strategies
                                  for tracing JIT-based virtual machines   104--113
    Beatrice Åkerblom and   
                Tobias Wrigstad   Measuring polymorphism in Python
                                  programs . . . . . . . . . . . . . . . . 114--128
Juan Pablo Sandoval Alcocer and   
               Alexandre Bergel   Tracking down performance variation
                                  against source code evolution  . . . . . 129--139
        Madhukar N. Kedlaya and   
           Behnam Robatmili and   
                  Ben Hardekopf   Server-side type profiling for
                                  optimizing client-side JavaScript
                                  engines  . . . . . . . . . . . . . . . . 140--153
               Lars Fischer and   
               Stefan Hanenberg   An empirical investigation of the
                                  effects of type systems and code
                                  completion on API usability using
                                  TypeScript and JavaScript in MS Visual
                                  Studio . . . . . . . . . . . . . . . . . 154--167
             Camille Teruel and   
    Stéphane Ducasse and   
              Damien Cassou and   
                  Marcus Denker   Access control to reflection with object
                                  ownership  . . . . . . . . . . . . . . . 168--176

ACM SIG{}PLAN Notices
Volume 51, Number 3, March, 2016

           Priya Narasimhan and   
               Utsav Drolia and   
                  Jiaqi Tan and   
        Nathan D. Mickulicz and   
                  Rajeev Gandhi   The next-generation in-stadium
                                  experience (keynote) . . . . . . . . . . 1--10
         Roland Leißa and   
              Klaas Boesche and   
             Sebastian Hack and   
           Richard Membarth and   
              Philipp Slusallek   Shallow embedding of DSLs via online
                                  partial evaluation . . . . . . . . . . . 11--20
          Maximilian Scherr and   
                  Shigeru Chiba   Almost first-class language embedding:
                                  taming staged embedded DSLs  . . . . . . 21--30
               Bob Reynders and   
         Dominique Devriese and   
                 Frank Piessens   Generating safe boundary APIs between
                                  typed EDSLs and their environments . . . 31--34
     Flávio Medeiros and   
             Iran Rodrigues and   
      Márcio Ribeiro and   
          Leopoldo Teixeira and   
                    Rohit Gheyi   An empirical study on
                                  configuration-related issues:
                                  investigating undeclared and unused
                                  identifiers  . . . . . . . . . . . . . . 35--44
         Sascha El-Sharkawy and   
              Adam Krafczyk and   
                   Klaus Schmid   Analysing the Kconfig semantics and its
                                  analysis tools . . . . . . . . . . . . . 45--54
            Zakarea Alshara and   
     Abdelhak-Djamel Seriai and   
         Chouki Tibermacine and   
       Hinde Lilia Bouziane and   
            Christophe Dony and   
                  Anas Shatnawi   Migrating large object-oriented
                                  applications into component-based ones:
                                  instantiation and inheritance
                                  transformation . . . . . . . . . . . . . 55--64
              Michael Lopez and   
            C. Jasson Casey and   
           Gabriel Dos Reis and   
               Colton Chojnacki   Safer SDN programming through Arbiter    65--74
       Alexey Kolesnichenko and   
     Christopher M. Poskitt and   
             Sebastian Nanz and   
                 Bertrand Meyer   Contract-based general-purpose GPU
                                  programming  . . . . . . . . . . . . . . 75--84
          Hiroshi Yamaguchi and   
                  Shigeru Chiba   Inverse macro in Scala . . . . . . . . . 85--94
                 Sorin Adam and   
             Ulrik Pagh Schultz   Towards tool support for
                                  spreadsheet-based domain-specific
                                  languages  . . . . . . . . . . . . . . . 95--98
              Antuan Byalik and   
             Sanchit Chadha and   
                   Eli Tilevich   Native-$2$-native: automated
                                  cross-platform code synthesis from
                                  web-based programming resources  . . . . 99--108
             Dmitri Makarov and   
             Matthias Hauswirth   CLOP: a multi-stage compiler to
                                  seamlessly embed heterogeneous code  . . 109--112
         Jan Oliver Ringert and   
             Bernhard Rumpe and   
               Andreas Wortmann   Composing code generators for C&C ADLs
                                  with Application-specific behavior
                                  languages (tool demonstration) . . . . . 113--116
         Milan Kabác and   
                 Charles Consel   Orchestrating masses of sensors: a
                                  design-driven development approach . . . 117--120
              Gabriel Foust and   
          Jaakko Järvi and   
                    Sean Parent   Generating reactive programs for
                                  graphical user interfaces from multi-way
                                  dataflow constraint systems  . . . . . . 121--130
        Spencer P. Florence and   
             Bruke Fetscher and   
              Matthew Flatt and   
           William H. Temps and   
             Tina Kiguradze and   
             Dennis P. West and   
           Charlotte Niznik and   
            Paul R. Yarnold and   
       Robert Bruce Findler and   
              Steven M. Belknap   POP-PL: a patient-oriented prescription
                                  programming language . . . . . . . . . . 131--140
                Kai Selgrad and   
             Alexander Lier and   
          Franz Köferl and   
            Marc Stamminger and   
                 Daniel Lohmann   Lightweight, generative variant
                                  exploration for high-performance
                                  graphics applications  . . . . . . . . . 141--150
            Christoph Seidl and   
              Sven Schuster and   
                   Ina Schaefer   Generative software product line
                                  development using variability-aware
                                  design patterns  . . . . . . . . . . . . 151--160
                 Jaime Font and   
              Lorena Arcega and   
      Òystein Haugen and   
                  Carlos Cetina   Addressing metamodel revisions in
                                  model-based software product lines . . . 161--170
            Pablo Inostroza and   
             Tijs van der Storm   Modular interpreters for the masses:
                                  implicit context propagation using
                                  object algebras  . . . . . . . . . . . . 171--180
             Carlos Noguera and   
               Viviane Jonckers   Model querying with query models . . . . 181--184

ACM SIG{}PLAN Notices
Volume 51, Number 4, April, 2016

                  Yuanyuan Zhou   Programming Uncertain $<$T$>$ hings  . . . 1--2
               Sergi Abadal and   
   Albert Cabellos-Aparicio and   
             Eduard Alarcon and   
                Josep Torrellas   WiSync: an Architecture for Fast
                                  Synchronization through On-Chip Wireless
                                  Communication  . . . . . . . . . . . . . 3--17
              Xiaodong Wang and   
 José F. Martínez   ReBudget: Trading Off Efficiency vs.
                                  Fairness in Market-Based Multicore
                                  Resource Allocation via Runtime Budget
                                  Reassignment . . . . . . . . . . . . . . 19--32
                Haishan Zhu and   
                    Mattan Erez   Dirigent: Enforcing QoS for
                                  Latency-Critical Tasks on Shared
                                  Multicore Systems  . . . . . . . . . . . 33--47
             Yossi Kuperman and   
             Eyal Moscovici and   
                 Joel Nider and   
             Razya Ladelsky and   
                Abel Gordon and   
                    Dan Tsafrir   Paravirtual Remote I/O . . . . . . . . . 49--65
           Antoine Kaufmann and   
                Simon Peter and   
          Naveen Kr. Sharma and   
            Thomas Anderson and   
           Arvind Krishnamurthy   High Performance Packet Processing with
                                  FlexNIC  . . . . . . . . . . . . . . . . 67--81
             James Bornholt and   
           Antoine Kaufmann and   
                  Jialin Li and   
       Arvind Krishnamurthy and   
               Emina Torlak and   
                        Xi Wang   Specifying and Checking File System
                                  Crash-Consistency Models . . . . . . . . 83--98
            Aravinda Prasad and   
                    K. Gopinath   Prudent Memory Reclamation in
                                  Procrastination-Based Synchronization    99--112
             Anurag Mukkara and   
            Nathan Beckmann and   
                 Daniel Sanchez   Whirlpool: Improving Dynamic Cache
                                  Management with Static Data
                                  Classification . . . . . . . . . . . . . 113--127
             Myeongjae Jeon and   
                 Yuxiong He and   
                 Hwanju Kim and   
             Sameh Elnikety and   
               Scott Rixner and   
                    Alan L. Cox   TPC: Target-Driven Parallelism Combining
                                  Prediction and Correction to Reduce Tail
                                  Latency in Interactive Services  . . . . 129--141
               Fraser Brown and   
         Andres Nötzli and   
                  Dawson Engler   How to Build Static Checking Systems
                                  Using Orders of Magnitude Less Code  . . 143--157
                 Tong Zhang and   
               Dongyoon Lee and   
                  Changhee Jung   TxRace: Efficient Data Race Detection
                                  Using Commodity Hardware Transactional
                                  Memory . . . . . . . . . . . . . . . . . 159--173
               Sidney Amani and   
                 Alex Hixon and   
                 Zilin Chen and   
        Christine Rizkallah and   
                Peter Chubb and   
              Liam O'Connor and   
                Joel Beeren and   
           Yutaka Nagashima and   
                Japheth Lim and   
              Thomas Sewell and   
               Joseph Tuong and   
            Gabriele Keller and   
                Toby Murray and   
               Gerwin Klein and   
                  Gernot Heiser   CoGENT: Verifying High-Assurance File
                                  System Implementations . . . . . . . . . 175--188
              Nils Asmussen and   
           Marcus Völp and   
       Benedikt Nöthen and   
        Hermann Härtig and   
               Gerhard Fettweis   M3: a Hardware/Operating-System
                                  Co-Design to Tame Heterogeneous
                                  Manycores  . . . . . . . . . . . . . . . 189--203
             Daniyal Liaqat and   
              Silviu Jingoi and   
               Eyal de Lara and   
                Ashvin Goel and   
                  Wilson To and   
                  Kevin Lee and   
     Italo De Moraes Garcia and   
                 Manuel Saldana   Sidewinder: an Energy Efficient and
                                  Developer Friendly Heterogeneous
                                  Architecture for Continuous Mobile
                                  Sensing  . . . . . . . . . . . . . . . . 205--215
           Jonathan Balkind and   
            Michael McKeown and   
                Yaosheng Fu and   
                 Tri Nguyen and   
                 Yanqi Zhou and   
              Alexey Lavrov and   
           Mohammad Shahrad and   
                  Adi Fuchs and   
               Samuel Payne and   
              Xiaohua Liang and   
               Matthew Matl and   
                David Wentzlaff   OpenPiton: an Open Source Manycore
                                  Research Framework . . . . . . . . . . . 217--232
              Daniel Lustig and   
                 Geet Sethi and   
         Margaret Martonosi and   
         Abhishek Bhattacharjee   COATCheck: Verifying Memory Ordering at
                                  the Hardware-OS Interface  . . . . . . . 233--247
               Alex Markuze and   
              Adam Morrison and   
                    Dan Tsafrir   True IOMMU Protection from DMA Attacks:
                                  When Copy is Faster than Zero Copy . . . 249--262
                  Amro Awad and   
         Pratyusa Manadhata and   
               Stuart Haber and   
                Yan Solihin and   
                  William Horne   Silent Shredder: Zero-Cost Shredding for
                                  Secure Non-Volatile Main Memory
                                  Controllers  . . . . . . . . . . . . . . 263--276
              Youngjin Kwon and   
               Alan M. Dunn and   
             Michael Z. Lee and   
            Owen S. Hofmann and   
               Yuanzhong Xu and   
                 Emmett Witchel   Sego: Pervasive Trusted Metadata for
                                  Efficiently Verified Untrusted System
                                  Services . . . . . . . . . . . . . . . . 277--290
                    Dan Tsafrir   Synopsis of the ASPLOS '16 Wild and
                                  Crazy Ideas (WACI) Invited-Speakers
                                  Session  . . . . . . . . . . . . . . . . 291--294
            R. Stanley Williams   Brain Inspired Computing . . . . . . . . 295--295
Phitchaya Mangpo Phothilimthana and   
              Aditya Thakur and   
            Rastislav Bodik and   
               Dinakar Dhurjati   Scaling up Superoptimization . . . . . . 297--310
          Niranjan Hasabnis and   
                       R. Sekar   Lifting Assembly to Intermediate
                                  Representation: a Novel Approach
                                  Leveraging Compilers . . . . . . . . . . 311--324
        Saurav Muralidharan and   
                   Amit Roy and   
                  Mary Hall and   
            Michael Garland and   
                     Piyush Rai   Architecture-Adaptive Code Variant
                                  Tuning . . . . . . . . . . . . . . . . . 325--338
               Xiaofeng Lin and   
                    Yu Chen and   
                Xiaodong Li and   
                 Junjie Mao and   
                 Jiaquan He and   
                     Wei Xu and   
                   Yuanchun Shi   Scalable Kernel TCP Design and
                                  Implementation for Short-Lived
                                  Connections  . . . . . . . . . . . . . . 339--352
              Izzat El Hajj and   
          Alexander Merritt and   
             Gerd Zellweger and   
            Dejan Milojicic and   
             Reto Achermann and   
           Paolo Faraboschi and   
                Wen-mei Hwu and   
             Timothy Roscoe and   
                 Karsten Schwan   SpaceJMP: Programming with Multiple
                                  Virtual Address Spaces . . . . . . . . . 353--368
          Felix Xiaozhu Lin and   
                         Xu Liu   memif: Towards Programming Heterogeneous
                                  Memory Asynchronously  . . . . . . . . . 369--383
               Wook-Hee Kim and   
               Jinwoong Kim and   
               Woongki Baek and   
               Beomseok Nam and   
                     Youjip Won   NVWAL: Exploiting NVRAM in Write-Ahead
                                  Logging  . . . . . . . . . . . . . . . . 385--398
             Aasheesh Kolli and   
              Steven Pelley and   
                  Ali Saidi and   
              Peter M. Chen and   
              Thomas F. Wenisch   High-Performance Transactions for
                                  Persistent Memories  . . . . . . . . . . 399--411
                   Qing Guo and   
              Karin Strauss and   
                  Luis Ceze and   
             Henrique S. Malvar   High-Density Image Storage Using
                                  Approximate Memory Cells . . . . . . . . 413--426
         Joseph Izraelevitz and   
              Terence Kelly and   
                 Aasheesh Kolli   Failure-Atomic Persistent Memory Updates
                                  via JUSTDO Logging . . . . . . . . . . . 427--442
                 Jaeung Han and   
             Seungheun Jeon and   
              Young-ri Choi and   
                    Jaehyuk Huh   Interference Management for Distributed
                                  Parallel Applications in Consolidated
                                  Clusters . . . . . . . . . . . . . . . . 443--456
                Martin Maas and   
           Krste Asanovi\'c and   
                 Tim Harris and   
               John Kubiatowicz   Taurus: a Holistic Language Runtime
                                  System for Coordinating Distributed
                                  Managed-Language Applications  . . . . . 457--471
       Christina Delimitrou and   
             Christos Kozyrakis   HCloud: Resource-Efficient Provisioning
                                  in Shared Cloud Systems  . . . . . . . . 473--488
                    Xiao Yu and   
              Pallavi Joshi and   
                  Jianwu Xu and   
               Guoliang Jin and   
                  Hui Zhang and   
                   Guofei Jiang   CloudSeer: Workflow Monitoring of Cloud
                                  Infrastructures via Interleaved Logs . . 489--502
               Yonghwi Kwon and   
               Dohyeong Kim and   
        William Nick Sumner and   
               Kyungtae Kim and   
     Brendan Saltaformaggio and   
              Xiangyu Zhang and   
                     Dongyan Xu   LDX: Causality Inference by Lightweight
                                  Dual Execution . . . . . . . . . . . . . 503--515
 Tanakorn Leesatapornwongsa and   
          Jeffrey F. Lukman and   
                    Shan Lu and   
              Haryadi S. Gunawi   TaxDC: a Taxonomy of Non-Deterministic
                                  Concurrency Bugs in Datacenter
                                  Distributed Systems  . . . . . . . . . . 517--530
                 Junjie Mao and   
                    Yu Chen and   
                 Qixue Xiao and   
                   Yuanchun Shi   RID: Finding Reference Count Bugs with
                                  Inconsistent Path Pair Checking  . . . . 531--544
               Huazhe Zhang and   
                 Henry Hoffmann   Maximizing Performance Under a Power
                                  Cap: a Comparison of Hardware, Software,
                                  and Hybrid Techniques  . . . . . . . . . 545--559
               Songchun Fan and   
         Seyed Majid Zahedi and   
                Benjamin C. Lee   The Computational Sprinting Game . . . . 561--575
               Alexei Colin and   
              Graham Harvey and   
              Brandon Lucia and   
              Alanson P. Sample   An Energy-interference-free
                                  Hardware-Software Debugger for
                                  Intermittent Energy-harvesting Systems   577--589
                 Emmett Witchel   Programmer Productivity in a World of
                                  Mushy Interfaces: Challenges of the
                                  Post-ISA Reality . . . . . . . . . . . . 591--591
             Kevin Angstadt and   
             Westley Weimer and   
                  Kevin Skadron   RAPID Programming of Pattern-Recognition
                                  Processors . . . . . . . . . . . . . . . 593--605
                    Xin Sui and   
            Andrew Lenharth and   
          Donald S. Fussell and   
                 Keshav Pingali   Proactive Control of Approximate
                                  Programs . . . . . . . . . . . . . . . . 607--621
                Jongse Park and   
             Emmanuel Amaro and   
              Divya Mahajan and   
           Bradley Thwaites and   
              Hadi Esmaeilzadeh   AxGames: Towards Crowdsourcing Quality
                                  Target Determination in Approximate
                                  Computing  . . . . . . . . . . . . . . . 623--636
             James Bornholt and   
             Randolph Lopez and   
         Douglas M. Carmean and   
                  Luis Ceze and   
               Georg Seelig and   
                  Karin Strauss   A DNA-Based Archival Storage System  . . 637--649
            Raghu Prabhakar and   
           David Koeplinger and   
             Kevin J. Brown and   
             HyoukJoong Lee and   
          Christopher De Sa and   
         Christos Kozyrakis and   
                 Kunle Olukotun   Generating Configurable Hardware from
                                  Parallel Patterns  . . . . . . . . . . . 651--665
               Li-Wen Chang and   
               Hee-Seok Kim and   
                 Wen-mei W. Hwu   DySel: Lightweight Dynamic Selection for
                                  Kernel-based Data-parallel Programming
                                  Model  . . . . . . . . . . . . . . . . . 667--680
                  Quan Chen and   
               Hailong Yang and   
                 Jason Mars and   
                   Lingjia Tang   Baymax: QoS Awareness and Increased
                                  Utilization for Non-Preemptive
                                  Accelerators in Warehouse Scale
                                  Computers  . . . . . . . . . . . . . . . 681--696
              Tony Nowatzki and   
      Karthikeyan Sankaralingam   Analyzing Behavior Specialized
                                  Acceleration . . . . . . . . . . . . . . 697--711
                Man-Ki Yoon and   
           Negin Salajegheh and   
                   Yin Chen and   
           Mihai Christodorescu   PIFT: Predictive Information-Flow
                                  Tracking . . . . . . . . . . . . . . . . 713--725
              Ashish Venkat and   
      Sriskanda Shamasunder and   
              Hovav Shacham and   
                Dean M. Tullsen   HIPStR: Heterogeneous-ISA Program State
                                  Relocation . . . . . . . . . . . . . . . 727--741
      Zelalem Birhanu Aweke and   
  Salessawi Ferede Yitbarek and   
                   Rui Qiao and   
             Reetuparna Das and   
              Matthew Hicks and   
                 Yossi Oren and   
                    Todd Austin   ANVIL: Software-Based Protection Against
                                  Next-Generation Rowhammer Attacks  . . . 743--755
               Diego Didona and   
               Nuno Diegues and   
       Anne-Marie Kermarrec and   
           Rachid Guerraoui and   
              Ricardo Neves and   
                   Paolo Romano   ProteusTM: Abstraction Meets Performance
                                  in Transactional Memory  . . . . . . . . 757--771
                Noam Shalev and   
                Eran Harpaz and   
                Hagar Porat and   
                Idit Keidar and   
                Yaron Weinsberg   CSR: Core Surprise Removal in Commodity
                                  Operating Systems  . . . . . . . . . . . 773--787
            Tanmay Gangwani and   
              Adam Morrison and   
                Josep Torrellas   CASPAR: Breaking Serialization in
                                  Lock-Free Multicore Synchronization  . . 789--804

ACM SIG{}PLAN Notices
Volume 51, Number 5, May, 2016

                  Tom Spink and   
             Harry Wagstaff and   
              Björn Franke   Efficient asynchronous interrupt
                                  handling in a full-system instruction
                                  set simulator  . . . . . . . . . . . . . 1--10
        Forrest J. Robinson and   
           Michael R. Jantz and   
             Prasad A. Kulkarni   Code cache management in managed
                                  language VMs to reduce memory
                                  consumption for embedded systems . . . . 11--20
              Ricardo Nobre and   
         Luiz G. A. Martins and   
      João M. P. Cardoso   A graph-based iterative compiler pass
                                  selection and phase ordering approach    21--30
             Kunal Banerjee and   
        Chittaranjan Mandal and   
                Dipankar Sarkar   Translation validation of loop and
                                  arithmetic transformations in the
                                  presence of recurrences  . . . . . . . . 31--40
                  Yulei Sui and   
               Xiaokang Fan and   
                   Hao Zhou and   
                   Jingling Xue   Loop-oriented array- and field-sensitive
                                  pointer analysis for automatic SIMD
                                  vectorization  . . . . . . . . . . . . . 41--51
            Lukasz Domagala and   
            Duco van Amstel and   
               Fabrice Rastello   Generalized cache tiling for dataflow
                                  programs . . . . . . . . . . . . . . . . 52--61
               Duc-Hiep Chu and   
               Joxan Jaffar and   
                Rasool Maghareh   Symbolic execution for memory
                                  consumption analysis . . . . . . . . . . 62--71
             Ravindra Metta and   
              Martin Becker and   
               Prasad Bokil and   
       Samarjit Chakraborty and   
                   R. Venkatesh   TIC: a scalable model checking based
                                  approach to WCET estimation  . . . . . . 72--81
             Kuan-Hsun Chen and   
Björn Bönninghoff and   
              Jian-Jia Chen and   
                 Peter Marwedel   Compensate or ignore? Meeting control
                                  robustness requirements through adaptive
                                  soft-error handling  . . . . . . . . . . 82--91
      Prasenjit Chakraborty and   
               Gautam Doshi and   
           Shashank Shekhar and   
                  Vikrant Kumar   Opportunity for compute partitioning in
                                  pursuit of energy-efficient systems  . . 92--101
Phitchaya Mangpo Phothilimthana and   
            Michael Schuldt and   
                Rastislav Bodik   Compiling a gesture recognition
                                  application for a low-power spatial
                                  architecture . . . . . . . . . . . . . . 102--112
         Paul-Jules Micolet and   
                Aaron Smith and   
              Christophe Dubach   A machine learning approach to mapping
                                  streaming workloads to dynamic multicore
                                  processors . . . . . . . . . . . . . . . 113--122

ACM SIG{}PLAN Notices
Volume 51, Number 6, June, 2016

            Kayvan Memarian and   
          Justus Matthiesen and   
              James Lingard and   
          Kyndylan Nienhuis and   
             David Chisnall and   
        Robert N. M. Watson and   
                   Peter Sewell   Into the depths of C: elaborating the de
                                  facto standards  . . . . . . . . . . . . 1--15
           Buddhika Chamith and   
           Bo Joel Svensson and   
           Luke Dalessandro and   
                 Ryan R. Newton   Living on the edge: rapid-toggling
                                  probes with cross-modification on x86    16--26
                Matt Noonan and   
             Alexey Loginov and   
                      David Cok   Polymorphic type inference for machine
                                  code . . . . . . . . . . . . . . . . . . 27--41
               Saswat Padhi and   
               Rahul Sharma and   
                 Todd Millstein   Data-driven precondition inference with
                                  learned features . . . . . . . . . . . . 42--56
              Marcelo Sousa and   
                    Isil Dillig   Cartesian Hoare logic for verifying
                                  $k$-safety properties  . . . . . . . . . 57--69
                Wonyeol Lee and   
               Rahul Sharma and   
                     Alex Aiken   Verifying bit-manipulations of
                                  floating-point . . . . . . . . . . . . . 70--84
                Yuting Chen and   
                    Ting Su and   
              Chengnian Sun and   
                Zhendong Su and   
                   Jianjun Zhao   Coverage-directed differential testing
                                  of JVM implementations . . . . . . . . . 85--99
             Tyler Sorensen and   
          Alastair F. Donaldson   Exposing errors related to weak memory
                                  in GPU applications  . . . . . . . . . . 100--113
           Maarten Faddegon and   
                    Olaf Chitil   Lightweight computation tree tracing for
                                  lazy functional languages  . . . . . . . 114--128
              Changwan Hong and   
                 Wenlei Bao and   
               Albert Cohen and   
      Sriram Krishnamoorthy and   
    Louis-Noël Pouchet and   
           Fabrice Rastello and   
               J. Ramanujam and   
                  P. Sadayappan   Effective padding of multidimensional
                                  arrays to avoid cache conflict misses    129--144
                  Yuhao Zhu and   
             Vijay Janapa Reddi   GreenWeb: language extensions for
                                  energy-efficient mobile web computing    145--160
      Michael A. Laurenzano and   
                Parker Hill and   
             Mehrzad Samadi and   
               Scott Mahlke and   
                 Jason Mars and   
                   Lingjia Tang   Input responsiveness: using canary
                                  inputs to dynamically steer
                                  approximation  . . . . . . . . . . . . . 161--176
                Sara Achour and   
           Rahul Sarpeshkar and   
               Martin C. Rinard   Configuration synthesis for programmable
                                  analog devices with Arco . . . . . . . . 177--193
              Magnus Madsen and   
                Ming-Ho Yee and   
           Ondrej Lhoták   From Datalog to Flix: a declarative
                                  language for fixed points on lattices    194--208
             Leonard Truong and   
           Rajkishore Barik and   
               Ehsan Totoni and   
                    Hai Liu and   
              Chick Markley and   
                Armando Fox and   
              Tatiana Shpeisman   Latte: a language, compiler, and runtime
                                  for elegant and efficient deep neural
                                  networks . . . . . . . . . . . . . . . . 209--223
           Michael D. Adams and   
         Celeste Hollenbeck and   
                  Matthew Might   On the complexity and performance of
                                  parsing with derivatives . . . . . . . . 224--236
               Stefan Heule and   
              Eric Schkufza and   
               Rahul Sharma and   
                     Alex Aiken   Stratified synthesis: automatically
                                  learning the x86-64 instruction set  . . 237--250
            Ariel Eizenberg and   
                Shiliang Hu and   
               Gilles Pokam and   
                Joseph Devietti   Remix: online detection and repair of
                                  cache contention for the JVM . . . . . . 251--265
                Yaniv David and   
             Nimrod Partush and   
                     Eran Yahav   Statistical similarity of binaries . . . 266--280
               Yizhou Zhang and   
          Guido Salvaneschi and   
             Quinn Beightol and   
             Barbara Liskov and   
                Andrew C. Myers   Accepting blame for safe tunneled
                                  exceptions . . . . . . . . . . . . . . . 281--295
             Andrew M. Kent and   
                David Kempe and   
            Sam Tobin-Hochstadt   Occurrence typing modulo theories  . . . 296--309
          Panagiotis Vekris and   
            Benjamin Cosman and   
                   Ranjit Jhala   Refinement types for TypeScript  . . . . 310--325
               Calvin Smith and   
               Aws Albarghouthi   MapReduce program synthesis  . . . . . . 326--340
                 Ravi Chugh and   
               Brian Hempel and   
          Mitchell Spradlin and   
                   Jacob Albers   Programmatic and direct manipulation,
                                  together at last . . . . . . . . . . . . 341--354
            Calvin Loncaric and   
               Emina Torlak and   
               Michael D. Ernst   Fast synthesis of fast collections . . . 355--368
           Jedidiah McClurg and   
             Hossein Hojjat and   
                Nate Foster and   
             Pavol Cerný   Event-driven network programming . . . . 369--385
               Ryan Beckett and   
          Michael Greenberg and   
                   David Walker   Temporal NetKAT  . . . . . . . . . . . . 386--401
           Ahmed El-Hassany and   
            Jeremie Miserez and   
               Pavol Bielik and   
           Laurent Vanbever and   
                  Martin Vechev   SDNRacer: concurrency analysis for
                                  software-defined networks  . . . . . . . 402--415
             Rian Shambaugh and   
                Aaron Weiss and   
                     Arjun Guha   Rehearsal: a configuration verification
                                  tool for puppet  . . . . . . . . . . . . 416--430
                   Hao Chen and   
       Xiongnan (Newman) Wu and   
                 Zhong Shao and   
           Joshua Lockerman and   
                     Ronghui Gu   Toward compositional verification of
                                  interruptible OS kernels and device
                                  drivers  . . . . . . . . . . . . . . . . 431--447
                Eric Mullen and   
               Daryl Zuniga and   
            Zachary Tatlock and   
                   Dan Grossman   Verified peephole optimizations for
                                  CompCert . . . . . . . . . . . . . . . . 448--461
             Brianna M. Ren and   
              Jeffrey S. Foster   Just-in-time static type checking for
                                  dynamic languages  . . . . . . . . . . . 462--476
             Tomas Petricek and   
             Gustavo Guerra and   
                       Don Syme   Types from data: making structured data
                                  first-class citizens in F# . . . . . . . 477--490
                     He Zhu and   
              Gustavo Petri and   
             Suresh Jagannathan   Automatically learning shape
                                  specifications . . . . . . . . . . . . . 491--507
          Navid Yaghmazadeh and   
          Christian Klinger and   
                Isil Dillig and   
               Swarat Chaudhuri   Synthesizing transformations on
                                  hierarchically structured data . . . . . 508--521
          Nadia Polikarpova and   
                 Ivan Kuraj and   
           Armando Solar-Lezama   Program synthesis from polymorphic
                                  refinement types . . . . . . . . . . . . 522--538
             Sepideh Maleki and   
                 Annie Yang and   
               Martin Burtscher   Higher-order and tuple-based
                                  massively-parallel prefix sums . . . . . 539--552
               Junghyun Kim and   
                 Gangwon Jo and   
               Jaehoon Jung and   
                Jungwon Kim and   
                     Jaejin Lee   A distributed OpenCL framework using
                                  redundant computation and data
                                  replication  . . . . . . . . . . . . . . 553--569
             Ulan Degenbaev and   
            Jochen Eisinger and   
              Manfred Ernst and   
               Ross McIlroy and   
                   Hannes Payer   Idle time garbage collection scheduling  570--583
             Nicholas Jacek and   
            Meng-Chieh Chiu and   
            Benjamin Marlin and   
                     Eliot Moss   Assessing the limits of program-specific
                                  garbage collection performance . . . . . 584--598
     Klaus v. Gleissenthall and   
     Nikolaj Bjòrner and   
             Andrey Rybalchenko   Cardinalities and universal quantifiers
                                  for verifying parameterized systems  . . 599--613
                 Oded Padon and   
        Kenneth L. McMillan and   
              Aurojit Panda and   
                Mooly Sagiv and   
                  Sharon Shoham   Ivy: safety verification by interactive
                                  generalization . . . . . . . . . . . . . 614--630
                  Jean Yang and   
               Travis Hance and   
           Thomas H. Austin and   
       Armando Solar-Lezama and   
            Cormac Flanagan and   
                  Stephen Chong   Precise, dynamic information flow for
                                  database-backed applications . . . . . . 631--647
             David Costanzo and   
                 Zhong Shao and   
                     Ronghui Gu   End-to-end verification of
                                  information-flow security for C and
                                  assembly programs  . . . . . . . . . . . 648--664
                Rohit Sinha and   
               Manuel Costa and   
                  Akash Lal and   
              Nuno P. Lopes and   
            Sriram Rajamani and   
           Sanjit A. Seshia and   
                  Kapil Vaswani   A design and verification methodology
                                  for secure isolated regions  . . . . . . 665--681
       Alexander Spiegelman and   
            Guy Golan-Gueta and   
                    Idit Keidar   Transactional data structure libraries   682--696
         Sara S. Baghsorkhi and   
           Nalini Vasudevan and   
                     Youfeng Wu   FlexVec: auto-vectorization for
                                  irregular loops  . . . . . . . . . . . . 697--710
               Shoaib Kamil and   
               Alvin Cheung and   
            Shachar Itzhaky and   
           Armando Solar-Lezama   Verified lifting of stencil computations 711--726


ACM SIG{}PLAN Notices
Volume 52, Number 4, April, 2017

                     Yunji Chen   Big Data Analytics and Intelligence at
                                  Alibaba Cloud  . . . . . . . . . . . . . 1--1
            Hari Cherupalli and   
                 Henry Duwe and   
                 Weidong Ye and   
               Rakesh Kumar and   
                   John Sartori   Determining Application-specific Peak
                                  Power and Energy Requirements for
                                  Ultra-low Power Processors . . . . . . . 3--16
                  Quan Chen and   
               Hailong Yang and   
                  Minyi Guo and   
        Ram Srivatsa Kannan and   
                 Jason Mars and   
                   Lingjia Tang   Prophet: Precise QoS Prediction on
                                  Non-Preemptive Accelerators to Improve
                                  Utilization in Warehouse-Scale Computers 17--32
               Svilen Kanev and   
               Sam Likun Xi and   
                Gu-Yeon Wei and   
                   David Brooks   Mallacc: Accelerating Memory Allocation  33--45
                 Shasha Wen and   
              Milind Chabbi and   
                         Xu Liu   REDSPY: Exploring Value Locality in
                                  Software . . . . . . . . . . . . . . . . 47--61
         Abhishek Bhattacharjee   Translation-Triggered Prefetching  . . . 63--76
                Channoh Kim and   
               Jaehyeok Kim and   
                Sungmin Kim and   
               Dooyoung Kim and   
                  Namho Kim and   
                   Gitae Na and   
                Young H. Oh and   
              Hyeon Gyu Cho and   
                     Jae W. Lee   Typed Architectures: Architectural
                                  Support for Lightweight Scripting  . . . 77--90
                  Jihye Seo and   
               Wook-Hee Kim and   
               Woongki Baek and   
               Beomseok Nam and   
                     Sam H. Noh   Failure-Atomic Slotted Paging for
                                  Persistent Memory  . . . . . . . . . . . 91--104
              Donald Nguyen and   
                 Keshav Pingali   What Scalable Programs Need from
                                  Transactional Memory . . . . . . . . . . 105--118
           Caroline Trippel and   
          Yatin A. Manerkar and   
              Daniel Lustig and   
           Michael Pellauer and   
             Margaret Martonosi   TriCheck: Memory Model Verification at
                                  the Trisection of Software, Hardware,
                                  and ISA  . . . . . . . . . . . . . . . . 119--133
              Sanketh Nalli and   
              Swapnil Haria and   
               Mark D. Hill and   
           Michael M. Swift and   
                Haris Volos and   
                Kimberly Keeton   An Analysis of Persistent Memory Use
                                  with WHISPER . . . . . . . . . . . . . . 135--148
                 Tong Zhang and   
              Changhee Jung and   
                   Dongyoon Lee   ProRace: Practical Data Race Detection
                                  for Production Use . . . . . . . . . . . 149--162
              Lena E. Olson and   
               Mark D. Hill and   
                  David A. Wood   Crossing Guard: Mediating
                                  Host-Accelerator Coherence Interactions  163--176
             Joseph McMahan and   
        Michael Christensen and   
             Lawton Nichols and   
               Jared Roesch and   
               Sung-Yee Guo and   
              Ben Hardekopf and   
               Timothy Sherwood   An Architecture Supporting Formal and
                                  Compositional Binary Analysis  . . . . . 177--191
            Chun-Hung Hsiao and   
        Satish Narayanasamy and   
  Essam Muhammad Idris Khan and   
       Cristiano L. Pereira and   
                Gilles A. Pokam   AsyncClock: Scalable Inference of
                                  Asynchronous Event Causality . . . . . . 193--205
               Irina Calciu and   
             Siddhartha Sen and   
        Mahesh Balakrishnan and   
             Marcos K. Aguilera   Black-box Concurrent Data Structures for
                                  NUMA Architectures . . . . . . . . . . . 207--221
                 Keval Vora and   
                  Chen Tian and   
                Rajiv Gupta and   
                       Ziang Hu   CoRAL: Confined Recovery in Distributed
                                  Asynchronous Graph Processing  . . . . . 223--236
                 Keval Vora and   
                Rajiv Gupta and   
                     Guoqing Xu   KickStarter: Fast and Accurate
                                  Computations on Streaming Graphs via
                                  Trimmed Approximations . . . . . . . . . 237--251
               Bobby Powers and   
                  John Vilk and   
                Emery D. Berger   Browsix: Bridging the Gap Between Unix
                                  and the Browser  . . . . . . . . . . . . 253--266
         Samyam Rajbhandari and   
                 Yuxiong He and   
            Olatunji Ruwase and   
             Michael Carbin and   
               Trishul Chilimbi   Optimizing CNNs on Multicores for
                                  Scalability, Performance and Goodput . . 267--280
   Kirshanthan Sundararajah and   
                Laith Sakka and   
                Milind Kulkarni   Locality Transformations for Nested
                                  Recursive Iteration Spaces . . . . . . . 281--295
                     Ang Li and   
         Shuaiwen Leon Song and   
                Weifeng Liu and   
                     Xu Liu and   
                Akash Kumar and   
                 Henk Corporaal   Locality-Aware CTA Clustering for Modern
                                  GPUs . . . . . . . . . . . . . . . . . . 297--311
         Berkeley Churchill and   
               Rahul Sharma and   
              J. F. Bastien and   
                     Alex Aiken   Sound Loop Superoptimization for Google
                                  Native Client  . . . . . . . . . . . . . 313--326
              Ricardo Bianchini   Improving Datacenter Efficiency  . . . . 327--327
               Mengxing Liu and   
             Mingxing Zhang and   
                  Kang Chen and   
                Xuehai Qian and   
                 Yongwei Wu and   
               Weimin Zheng and   
                    Jinglei Ren   DudeTM: Building Durable Transactions
                                  with Decoupling for Persistent Memory    329--343
               Ana Klimovic and   
                Heiner Litz and   
             Christos Kozyrakis   ReFlex: Remote Flash $ \approx $ Local
                                  Flash  . . . . . . . . . . . . . . . . . 345--359
            Djordje Jevdjic and   
              Karin Strauss and   
                  Luis Ceze and   
             Henrique S. Malvar   Approximate Storage of Compressed and
                                  Encrypted Videos . . . . . . . . . . . . 361--373
                Nima Elyasi and   
          Mohammad Arjomand and   
      Anand Sivasubramaniam and   
         Mahmut T. Kandemir and   
               Chita R. Das and   
                 Myoungsoo Jung   Exploiting Intra-Request Slack to
                                  Improve SSD Performance  . . . . . . . . 375--388
                   Kai Wang and   
              Aftab Hussain and   
               Zhiqiang Zuo and   
                 Guoqing Xu and   
             Ardalan Amiri Sani   Graspan: a Single-machine Disk-based
                                  Graph System for Interprocedural Static
                                  Analyses of Large-scale Systems Code . . 389--404
                     Ao Ren and   
                     Zhe Li and   
                Caiwen Ding and   
                  Qinru Qiu and   
                Yanzhi Wang and   
                      Ji Li and   
                Xuehai Qian and   
                        Bo Yuan   SC-DCNN: Highly-Scalable Deep
                                  Convolutional Neural Network using
                                  Stochastic Computing . . . . . . . . . . 405--418
                 Jerry Ajay and   
                  Chen Song and   
       Aditya Singh Rathore and   
                   Chi Zhou and   
                      Wenyao Xu   $3$DGates: an Instruction-Level Energy
                                  Analysis and Optimization of $3$D
                                  Printers . . . . . . . . . . . . . . . . 419--433
              Guilherme Cox and   
         Abhishek Bhattacharjee   Efficient Address Translation for
                                  Architectures with Multiple Page Sizes   435--448
              Ilya Lesokhin and   
                Haggai Eran and   
            Shachar Raindel and   
                Guy Shapiro and   
              Sagi Grimberg and   
                 Liran Liss and   
            Muli Ben-Yehuda and   
                 Nadav Amit and   
                    Dan Tsafrir   Page Fault Support for Network
                                  Controllers  . . . . . . . . . . . . . . 449--466
                    Yang Hu and   
              Mingcong Song and   
                         Tao Li   Towards ``Full Containerization'' in
                                  Containerized Network Function
                                  Virtualization . . . . . . . . . . . . . 467--481
                      Bo Wu and   
                     Xu Liu and   
                Xiaobo Zhou and   
                 Changjun Jiang   FLEP: Enabling Flexible and Efficient
                                  Preemption on GPUs . . . . . . . . . . . 483--496
                  Kaiwei Li and   
               Jianfei Chen and   
              Wenguang Chen and   
                        Jun Zhu   SaberLDA: Sparsity-Aware Learning of
                                  Topic Models on GPUs . . . . . . . . . . 497--509
             Moein Khazraee and   
                   Lu Zhang and   
                  Luis Vega and   
         Michael Bedford Taylor   Moonwalk: NRE Optimization in ASIC
                                  Clouds . . . . . . . . . . . . . . . . . 511--526
        Jason Jong Kyu Park and   
               Yongjun Park and   
                   Scott Mahlke   Dynamic Resource Management for
                                  Efficient Utilization of Multitasking
                                  GPUs . . . . . . . . . . . . . . . . . . 527--540
                  Rui Zhang and   
            Natalie Stanley and   
         Christopher Griggs and   
                 Andrew Chi and   
                Cynthia Sturton   Identifying Security Critical Properties
                                  for the Dynamic Verification of a
                                  Processor  . . . . . . . . . . . . . . . 541--554
          Andrew Ferraiuolo and   
                     Rui Xu and   
              Danfeng Zhang and   
            Andrew C. Myers and   
                  G. Edward Suh   Verification of a Practical Hardware
                                  Security Architecture Through Static
                                  Information Flow Analysis  . . . . . . . 555--568
             David Chisnall and   
               Brooks Davis and   
               Khilan Gudka and   
              David Brazdil and   
          Alexandre Joannou and   
          Jonathan Woodruff and   
      A. Theodore Markettos and   
            J. Edward Maste and   
              Robert Norton and   
                 Stacey Son and   
                Michael Roe and   
             Simon W. Moore and   
           Peter G. Neumann and   
                 Ben Laurie and   
            Robert N. M. Watson   CHERI JNI: Sinking the Java Security
                                  Model into the C . . . . . . . . . . . . 569--583
                 Xinyang Ge and   
                Weidong Cui and   
                   Trent Jaeger   GRIFFIN: Guarding Control Flows Using
                                  Intel Processor Trace  . . . . . . . . . 585--598
       Christina Delimitrou and   
             Christos Kozyrakis   Bolt: I Know What You Did Last
                                  Summer\ldots In The Cloud  . . . . . . . 599--613
                Yiping Kang and   
            Johann Hauswald and   
                    Cao Gao and   
            Austin Rovinski and   
               Trevor Mudge and   
                 Jason Mars and   
                   Lingjia Tang   Neurosurgeon: Collaborative Intelligence
                                  Between the Cloud and Mobile Edge  . . . 615--629
               Neha Agarwal and   
              Thomas F. Wenisch   Thermostat: Application-transparent Page
                                  Management for Two-tiered Main Memory    631--644
          Antonio Barbalace and   
              Robert Lyerly and   
   Christopher Jelesnianski and   
              Anthony Carno and   
              Ho-Ren Chuang and   
             Vincent Legout and   
                Binoy Ravindran   Breaking the Boundaries in
                                  Heterogeneous-ISA Datacenters  . . . . . 645--659
              Daniel Lustig and   
              Andrew Wright and   
Alexandros Papakonstantinou and   
                 Olivier Giroux   Automated Synthesis of Comprehensive
                                  Memory Model Litmus Test Suites  . . . . 661--675
                Haopeng Liu and   
                 Guangpu Li and   
          Jeffrey F. Lukman and   
                  Jiaxin Li and   
                    Shan Lu and   
          Haryadi S. Gunawi and   
                      Chen Tian   DCatch: Automatically Detecting
                                  Distributed Concurrency Bugs in Cloud
                                  Systems  . . . . . . . . . . . . . . . . 677--691
Ali José Mashtizadeh and   
              Tal Garfinkel and   
                David Terei and   
             David Mazieres and   
               Mendel Rosenblum   Towards Practical Default-On Multi-Core
                                  Record/Replay  . . . . . . . . . . . . . 693--708
                 Jian Huang and   
         Michael Allen-Bond and   
                  Xuechen Zhang   Pallas: Semantic-Aware Checking for
                                  Finding Deep Bugs in Fast Path . . . . . 709--722
          Jagadish B. Kotra and   
             Narges Shahidi and   
          Zeshan A. Chishti and   
             Mahmut T. Kandemir   Hardware-Software Co-design to Mitigate
                                  DRAM Refresh Overheads: a Case for
                                  Refresh-Aware Process Scheduling . . . . 723--736
                Jinchun Kim and   
               Elvira Teran and   
              Paul V. Gratz and   
   Daniel A. Jiménez and   
            Seth H. Pugsley and   
                Chris Wilkerson   Kill the Program Counter: Reconstructing
                                  Program Behavior in the Processor Cache
                                  Hierarchy  . . . . . . . . . . . . . . . 737--749
                 Mingyu Gao and   
                    Jing Pu and   
                  Xuan Yang and   
              Mark Horowitz and   
             Christos Kozyrakis   TETRIS: Scalable and Efficient Neural
                                  Network Acceleration with $3$D Memory    751--764
                Wonjun Song and   
               Gwangsun Kim and   
             Hyungjoon Jung and   
             Jongwook Chung and   
                Jung Ho Ahn and   
                 Jae W. Lee and   
                       John Kim   History-Based Arbitration for Fairness
                                  in Processor-Interconnect of NUMA
                                  Servers  . . . . . . . . . . . . . . . . 765--777
            Pulkit A. Misra and   
           Jeffrey S. Chase and   
            Johannes Gehrke and   
                Alvin R. Lebeck   Enabling Lightweight Transactions with
                                  Precision Time . . . . . . . . . . . . . 779--794
                   Ming Liu and   
                  Liang Luo and   
               Jacob Nelson and   
                  Luis Ceze and   
       Arvind Krishnamurthy and   
                 Kishore Atreya   IncBricks: Toward In-Network Computation
                                  with an In-Network Cache . . . . . . . . 795--809
              Ismail Akturk and   
               Ulya R. Karpuzcu   AMNESIAC: Amnesic Automatic Computer . . 811--824
                  Yuxin Bai and   
              Victor W. Lee and   
                     Engin Ipek   Voltage Regulator Efficiency Aware Power
                                  Management . . . . . . . . . . . . . . . 825--838

ACM SIG{}PLAN Notices
Volume 52, Number 2, February, 2017

           Thomas S. Heinze and   
       Anders Mòller and   
                  Fabio Strocco   Type safety analysis for Dart  . . . . . 1--12
          Gianluca Mezzetti and   
       Anders Mòller and   
                  Fabio Strocco   Type unsoundness in practice: an
                                  empirical study of Dart  . . . . . . . . 13--24
              Changhee Park and   
              Hyeonseung Im and   
                   Sukyoung Ryu   Precise and scalable static analysis of
                                  jQuery using a regular expression domain 25--36
            Mattias De Wael and   
          Janwillem Swalens and   
             Wolfgang De Meuter   Just-in-time inheritance: a dynamic and
                                  implicit multiple inheritance mechanism  37--47
             Remigius Meier and   
                 Armin Rigo and   
                Thomas R. Gross   Parallel virtual machines with RPython   48--59
                Guido Chari and   
         Diego Garbervetsky and   
                    Stefan Marr   Building efficient and highly run-time
                                  adaptable virtual machines . . . . . . . 60--71
      Vincent Foley-Bourgon and   
                 Laurie Hendren   Efficiently implementing the copy
                                  semantics of MATLAB's arrays in
                                  JavaScript . . . . . . . . . . . . . . . 72--83
              Lukas Stadler and   
                  Adam Welc and   
            Christian Humer and   
                    Mick Jordan   Optimizing R language execution via
                                  aggressive speculation . . . . . . . . . 84--95
               Jason Hemann and   
         Daniel P. Friedman and   
            William E. Byrd and   
                  Matthew Might   A small embedding of logic programming
                                  with a simple complete search  . . . . . 96--107
           Alessandro Warth and   
             Patrick Dubroy and   
             Tony Garnock-Jones   Modular semantic actions . . . . . . . . 108--119
                Stefan Marr and   
              Benoit Daloze and   
 Hanspeter Mössenböck   Cross-language compiler benchmarking:
                                  are we fast yet? . . . . . . . . . . . . 120--131

ACM SIG{}PLAN Notices
Volume 52, Number 3, March, 2017

                    Tiark Rompf   Lightweight modular staging (LMS):
                                  generate all the things! (keynote) . . . 1--1
           Aggelos Biboudis and   
            Pablo Inostroza and   
             Tijs van der Storm   Recaf: Java dialects as libraries  . . . 2--13
                Yanlin Wang and   
              Haoyuan Zhang and   
    Bruno C. d. S. Oliveira and   
                 Marco Servetto   Classless Java . . . . . . . . . . . . . 14--24
    Theologos Zacharopoulos and   
            Pablo Inostroza and   
             Tijs van der Storm   Extensible modeling with managed data in
                                  Java . . . . . . . . . . . . . . . . . . 25--35
              Andrea Ros\`a and   
              Lydia Y. Chen and   
                  Walter Binder   Actor profiling in virtual execution
                                  environments . . . . . . . . . . . . . . 36--46
         Gabriël Konat and   
           Sebastian Erdweg and   
                   Eelco Visser   Bootstrapping domain-specific
                                  meta-languages in language workbenches   47--58
              Laure Philips and   
            Joeri De Koster and   
         Wolfgang De Meuter and   
                 Coen De Roover   Dependence-driven delimited CPS
                                  transformation for JavaScript  . . . . . 59--69
                   Mina Lee and   
                 Sunbeom So and   
                      Hakjoo Oh   Synthesizing regular expressions from
                                  examples for introductory automata
                                  assignments  . . . . . . . . . . . . . . 70--80
                 Cyrus Omar and   
               Jonathan Aldrich   Programmable semantic fragments: the
                                  design and implementation of typy  . . . 81--92
          Jörg Kienzle and   
          Gunter Mussbacher and   
            Philippe Collet and   
                      Omar Alam   Delaying decisions in variable concern
                                  hierarchies  . . . . . . . . . . . . . . 93--103
                 Sorin Adam and   
             Marco Kuhrmann and   
             Ulrik Pagh Schultz   Automatic code generation in practice:
                                  experiences with embedded robot
                                  controllers  . . . . . . . . . . . . . . 104--108
               Larissa Braz and   
                Rohit Gheyi and   
            Melina Mongiovi and   
      Márcio Ribeiro and   
     Flávio Medeiros and   
              Leopoldo Teixeira   A change-centric approach to compile
                                  configurable systems with #ifdefs  . . . 109--119
      Juliana Alves Pereira and   
             Pawel Matuszyk and   
          Sebastian Krieter and   
          Myra Spiliopoulou and   
                   Gunter Saake   A feature-based personalized recommender
                                  system for product-line configuration    120--131
             Matthias Kowal and   
             Sofia Ananieva and   
               Thomas Thüm   Explaining anomalies in feature models   132--143
         Mustafa Al-Hajjaji and   
          Sebastian Krieter and   
           Thomas Thüm and   
               Malte Lochau and   
                   Gunter Saake   IncLing: efficient product-line testing
                                  using incremental pairwise sampling  . . 144--155
          Valentin Rothberg and   
         Christian Dietrich and   
            Andreas Ziegler and   
                 Daniel Lohmann   Towards scalable configuration testing
                                  in variable software . . . . . . . . . . 156--167
     Michael J. Steindorfer and   
                Jurgen J. Vinju   Towards a software product line of
                                  trie-based collections . . . . . . . . . 168--172
         Mustafa Al-Hajjaji and   
              Jens Meinicke and   
          Sebastian Krieter and   
       Reimar Schröter and   
           Thomas Thüm and   
               Thomas Leich and   
                   Gunter Saake   Tool demo: testing configurable systems
                                  with FeatureIDE  . . . . . . . . . . . . 173--177
                Majid Makki and   
        Dimitri Van Landuyt and   
                  Wouter Joosen   Automated regression testing of BPMN 2.0
                                  processes: a capture and replay
                                  framework for continuous delivery  . . . 178--189
          Matthew A. Hammer and   
         Bor-Yuh Evan Chang and   
                 David Van Horn   A vision for online
                                  verification-validation  . . . . . . . . 190--201
            Mohamed Boussaa and   
             Olivier Barais and   
              Benoit Baudry and   
            Gerson Sunyé   Automatic non-functional testing of code
                                  generators families  . . . . . . . . . . 202--212


ACM SIG{}PLAN Notices
Volume 51, Number 9, September, 2016

            Martín Abadi   TensorFlow: learning functions at scale  1--1
                   Sukyoung Ryu   Journey to find bugs in JavaScript web
                                  applications in the wild . . . . . . . . 2--2
                     Dan Licata   A functional programmer's guide to
                                  homotopy type theory . . . . . . . . . . 3--3
               David Castro and   
              Kevin Hammond and   
                  Susmit Sarkar   Farms, pipes, streams and reforestation:
                                  reasoning about structured parallel
                                  processes using types and hylomorphisms  4--17
               Umut A. Acar and   
  Arthur Charguéraud and   
                Mike Rainey and   
              Filip Sieczkowski   Dag-calculus: a calculus for parallel
                                  computation  . . . . . . . . . . . . . . 18--32
    Johannes Borgström and   
               Ugo Dal Lago and   
           Andrew D. Gordon and   
                Marcin Szymczak   A lambda-calculus foundation for
                                  universal probabilistic programming  . . 33--46
      Wazim Mohammed Ismail and   
               Chung-chieh Shan   Deriving a probability density
                                  calculator (functional pearl)  . . . . . 47--59
              Yong Kiam Tan and   
           Magnus O. Myreen and   
               Ramana Kumar and   
                Anthony Fox and   
                Scott Owens and   
                Michael Norrish   A new verified compiler backend for
                                  CakeML . . . . . . . . . . . . . . . . . 60--73
                Paul Downen and   
                Luke Maurer and   
             Zena M. Ariola and   
             Simon Peyton Jones   Sequent calculus as a compiler
                                  intermediate language  . . . . . . . . . 74--88
              Liam O'Connor and   
                 Zilin Chen and   
        Christine Rizkallah and   
               Sidney Amani and   
                Japheth Lim and   
                Toby Murray and   
           Yutaka Nagashima and   
              Thomas Sewell and   
                   Gerwin Klein   Refinement through restraint: bringing
                                  down the cost of verification  . . . . . 89--102
                 Max S. New and   
          William J. Bowman and   
                     Amal Ahmed   Fully abstract compilation via universal
                                  embedding  . . . . . . . . . . . . . . . 103--116
          Christos Dimoulas and   
                 Max S. New and   
       Robert Bruce Findler and   
             Matthias Felleisen   Oh Lord, please don't let contracts be
                                  misunderstood (functional pearl) . . . . 117--131
   Ezgi Çiçek and   
        Zoe Paraskevopoulou and   
                    Deepak Garg   A type theory for incremental
                                  computational complexity with control
                                  flow changes . . . . . . . . . . . . . . 132--145
              Kotaro Takeda and   
            Naoki Kobayashi and   
             Kazuya Yaguchi and   
                Ayumi Shinohara   Compact bit encoding schemes for
                                  simply-typed lambda-terms  . . . . . . . 146--157
              Shin-Cheng Mu and   
              Yu-Hsi Chiang and   
                     Yu-Han Lyu   Queueing and glueing for optimal
                                  partitioning (functional pearl)  . . . . 158--167
           Jan Christiansen and   
           Nikita Danilenko and   
                   Sandra Dylus   All sorts of permutations (functional
                                  pearl) . . . . . . . . . . . . . . . . . 168--179
             Manuel Serrano and   
                 Vincent Prunet   A glimpse of Hopjs . . . . . . . . . . . 180--192
                    Ilya Sergey   Experience report: growing and shrinking
                                  polygons for random testing of
                                  computational geometry algorithms  . . . 193--199
                Kento Emoto and   
         Kiminori Matsuzaki and   
               Zhenjiang Hu and   
           Akimasa Morihata and   
                 Hideya Iwasaki   Think like a vertex, behave like a
                                  function! A functional DSL for
                                  vertex-centric big graph processing  . . 200--213
         Michael Arntzenius and   
    Neelakantan R. Krishnaswami   Datafun: a functional Datalog  . . . . . 214--227
             Eric L. Seidel and   
               Ranjit Jhala and   
                 Westley Weimer   Dynamic witnesses for static type errors
                                  (or, ill-typed programs usually go
                                  wrong) . . . . . . . . . . . . . . . . . 228--242
           Keiichi Watanabe and   
               Ryosuke Sato and   
            Takeshi Tsukada and   
                Naoki Kobayashi   Automatically disproving fair
                                  termination of higher-order functional
                                  programs . . . . . . . . . . . . . . . . 243--255
                  Ralf Jung and   
           Robbert Krebbers and   
              Lars Birkedal and   
                   Derek Dreyer   Higher-order ghost state . . . . . . . . 256--269
               Jesper Cockx and   
         Dominique Devriese and   
                 Frank Piessens   Unifiers as equivalences: proof-relevant
                                  unification of dependently typed data    270--283
         David Christiansen and   
                    Edwin Brady   Elaborator reflection: extending Idris
                                  in Idris . . . . . . . . . . . . . . . . 284--297
     Pierre-Evariste Dagand and   
           Nicolas Tabareau and   
             Éric Tanter   Partial type equivalences for verified
                                  dependent interoperability . . . . . . . 298--310
               David Darais and   
                 David Van Horn   Constructive Galois connections: taming
                                  the Galois connection framework for
                                  mechanized metatheory  . . . . . . . . . 311--324
             Sandrine Blazy and   
            Vincent Laporte and   
                David Pichardie   An abstract memory functor for verified
                                  C static analyzers . . . . . . . . . . . 325--337
         Trevor L. McDonell and   
       Timothy A. K. Zakian and   
              Matteo Cimini and   
                 Ryan R. Newton   Ghostbuster: a tool for simplifying and
                                  converting GADTs . . . . . . . . . . . . 338--350
            David Thibodeau and   
                Andrew Cave and   
               Brigitte Pientka   Indexed codata types . . . . . . . . . . 351--363
    Bruno C. d. S. Oliveira and   
                Zhiyuan Shi and   
             João Alpuim   Disjoint intersection types  . . . . . . 364--377
          Giuseppe Castagna and   
        Tommaso Petrucciani and   
             Kim Nguy\~ên   Set-theoretic types for polymorphic
                                  variants . . . . . . . . . . . . . . . . 378--391
            Ram Raghunathan and   
           Stefan K. Muller and   
               Umut A. Acar and   
                   Guy Blelloch   Hierarchical memory management for
                                  parallel programs  . . . . . . . . . . . 392--406
              Thomas Gilray and   
           Michael D. Adams and   
                  Matthew Might   Allocation characterizes polyvariance: a
                                  unified methodology for polyvariant
                                  control-flow analysis  . . . . . . . . . 407--420
             Katsuhiro Ueno and   
                  Atsushi Ohori   A fully concurrent garbage collector for
                                  functional programs on multicore
                                  processors . . . . . . . . . . . . . . . 421--433
                Sam Lindley and   
              J. Garrett Morris   Talking bananas: structural recursion
                                  for session types  . . . . . . . . . . . 434--447
              J. Garrett Morris   The best of both worlds: linear
                                  functional programming without
                                  compromise . . . . . . . . . . . . . . . 448--461
             Peter Thiemann and   
           Vasco T. Vasconcelos   Context-free session types . . . . . . . 462--475
             Marco Gaboardi and   
          Shin-ya Katsumata and   
            Dominic Orchard and   
           Flavien Breuvart and   
                  Tarmo Uustalu   Combining effects and coeffects via
                                  grading  . . . . . . . . . . . . . . . . 476--489
        Maciej Piróg and   
                     Nicolas Wu   String diagrams for free monads
                                  (functional pearl) . . . . . . . . . . . 490--501


ACM SIG{}PLAN Notices
Volume 52, Number 4, May, 2017

              April W. Wade and   
         Prasad A. Kulkarni and   
               Michael R. Jantz   AOT vs. JIT: impact of profile data on
                                  code quality . . . . . . . . . . . . . . 1--10
                 Ben Taylor and   
          Vicent Sanz Marco and   
                     Zheng Wang   Adaptive optimization for OpenCL
                                  programs on embedded heterogeneous
                                  systems  . . . . . . . . . . . . . . . . 11--20
              Oliver Reiche and   
           Christof Kobylko and   
               Frank Hannig and   
              Jürgen Teich   Auto-vectorization for image processing
                                  DSLs . . . . . . . . . . . . . . . . . . 21--30
                Sheng-Yu Fu and   
             Ding-Yong Hong and   
                Yu-Ping Liu and   
                 Jan-Jan Wu and   
                  Wei-Chung Hsu   Dynamic translation of structured
                                  Loads/Stores and register mapping for
                                  architectures with SIMD extensions . . . 31--40
               Weiwen Jiang and   
            Edwin H.-M. Sha and   
             Qingfeng Zhuge and   
              Hailiang Dong and   
                 Xianzhang Chen   Optimal functional unit assignment and
                                  voltage selection for pipelined MPSoC
                                  with guaranteed probability on time
                                  performance  . . . . . . . . . . . . . . 41--50
              Gyeongmin Lee and   
              Seonyeong Heo and   
                Bongjun Kim and   
                   Jong Kim and   
                     Hanjun Kim   Integrated IoT programming with
                                  selective abstraction  . . . . . . . . . 51--60
                  Min Zhang and   
                    Yunhui Ying   Towards SMT-based LTL model checking of
                                  clock constraint specification language
                                  for real-time and embedded systems . . . 61--70
             Wenguang Zheng and   
                     Hui Wu and   
                   Chuanyao Nie   Integrating task scheduling and cache
                                  locking for multicore real-time embedded
                                  systems  . . . . . . . . . . . . . . . . 71--80
                    Yi Wang and   
               Mingxu Zhang and   
                      Jing Yang   Towards memory-efficient
                                  processing-in-memory architecture for
                                  convolutional neural networks  . . . . . 81--90
             Xianzhong Ding and   
              Zhiyong Zhang and   
                Zhiping Jia and   
                     Lei Ju and   
              Mengying Zhao and   
                   Huawei Huang   Unified nvTCAM and sTCAM architecture
                                  for improving packet matching
                                  performance  . . . . . . . . . . . . . . 91--100
                   Chen Pan and   
                   Mimi Xie and   
                Yongpan Liu and   
                Yanzhi Wang and   
             Chun Jason Xue and   
              Yuangang Wang and   
                 Yiran Chen and   
                    Jingtong Hu   A lightweight progress maximization
                                  scheduler for non-volatile processor
                                  under unstable energy harvesting . . . . 101--110
         Christian Dietrich and   
                 Daniel Lohmann   OSEK-V: application-specific RTOS
                                  instantiation in hardware  . . . . . . . 111--120


ACM SIG{}PLAN Notices
Volume 51, Number 10, October, 2016

              Sreepathi Pai and   
                 Keshav Pingali   A compiler for throughput optimization
                                  of graph algorithms on GPUs  . . . . . . 1--19
            Rishi Surendran and   
                   Vivek Sarkar   Automatic parallelization of pure method
                                  calls via conditional future synthesis   20--38
             Tyler Sorensen and   
      Alastair F. Donaldson and   
                 Mark Batty and   
      Ganesh Gopalakrishnan and   
           Zvonimir Rakamari\'c   Portable inter-workgroup barrier
                                  synchronisation for GPUs . . . . . . . . 39--58
  Sébastien Doeraene and   
               Tobias Schlatter   Parallel incremental whole-program
                                  optimizations for Scala.js . . . . . . . 59--73
          Andrei Stefanescu and   
                Daejun Park and   
              Shijiao Yuwen and   
                  Yilong Li and   
                   Grigore Rosu   Semantics-based program verifiers for
                                  all languages  . . . . . . . . . . . . . 74--91
                Ilya Sergey and   
        Aleksandar Nanevski and   
           Anindya Banerjee and   
Germán Andrés Delbianco   Hoare-style specifications as
                                  correctness conditions for
                                  non-linearizable concurrent objects  . . 92--110
          Kyndylan Nienhuis and   
            Kayvan Memarian and   
                   Peter Sewell   An operational semantics for C/C++11
                                  concurrency  . . . . . . . . . . . . . . 111--128
          Andrei Marian Dan and   
                Patrick Lam and   
            Torsten Hoefler and   
                  Martin Vechev   Modeling and analysis of remote memory
                                  access programming . . . . . . . . . . . 129--144
            Shachar Itzhaky and   
                Rohit Singh and   
       Armando Solar-Lezama and   
              Kuat Yessenov and   
                Yongquan Lu and   
          Charles Leiserson and   
               Rezaul Chowdhury   Deriving divide-and-conquer dynamic
                                  programming algorithms using
                                  solver-aided transformations . . . . . . 145--164
       Venkatesh Srinivasan and   
              Tushar Sharma and   
                    Thomas Reps   Speeding up machine-code synthesis . . . 165--180
            Pavel Panchekha and   
                   Emina Torlak   Automated reasoning for web page layout  181--194
                 Xinyu Wang and   
              Sumit Gulwani and   
                  Rishabh Singh   FIDEX: filtering spreadsheet data using
                                  examples . . . . . . . . . . . . . . . . 195--213
                Scott Moore and   
          Christos Dimoulas and   
       Robert Bruce Findler and   
              Matthew Flatt and   
                  Stephen Chong   Extensible access control with
                                  authorization contracts  . . . . . . . . 214--233
                 Leo Osvald and   
    Grégory Essertel and   
                   Xilun Wu and   
Lilliam I. González Alayón and   
                    Tiark Rompf   Gentrification gone too far? Affordable
                                  2nd-class values for fun and (co-)effect 234--251
         Jonathan DiLorenzo and   
              Richard Zhang and   
               Erin Menzies and   
            Kathleen Fisher and   
                    Nate Foster   Incremental forest: a DSL for
                                  efficiently managing filestores  . . . . 252--271
             Philipp Haller and   
                     Alex Loiko   LaCasa: lightweight affinity and object
                                  capabilities in Scala  . . . . . . . . . 272--291
    Santiago Perez De Rosso and   
                 Daniel Jackson   Purposes, concepts, misfits, and a
                                  redesign of git  . . . . . . . . . . . . 292--310
               Dohyeong Kim and   
               Yonghwi Kwon and   
                   Peng Liu and   
                 I. Luk Kim and   
        David Mitchel Perry and   
              Xiangyu Zhang and   
       Gustavo Rodriguez-Rivera   Apex: automatic programming assignment
                                  error explanation  . . . . . . . . . . . 311--327
             Oliver Hanappi and   
            Waldemar Hummer and   
               Schahram Dustdar   Asserting reliable convergence for
                                  configuration management scripts . . . . 328--343
             Sean Treichler and   
              Michael Bauer and   
               Rahul Sharma and   
          Elliott Slaughter and   
                     Alex Aiken   Dependent partitioning . . . . . . . . . 344--358
           Sulekha Kulkarni and   
                Ravi Mangal and   
                  Xin Zhang and   
                     Mayur Naik   Accelerating program analyses by
                                  cross-program training . . . . . . . . . 359--377
       Venkatesh Srinivasan and   
                    Thomas Reps   An improved algorithm for slicing
                                  machine code . . . . . . . . . . . . . . 378--393
           Dmitry Petrashko and   
                Vlad Ureche and   
       Ondrej Lhoták and   
                 Martin Odersky   Call graphs for languages with
                                  parametric polymorphism  . . . . . . . . 394--409
             Satish Chandra and   
            Colin S. Gordon and   
      Jean-Baptiste Jeannin and   
           Cole Schlesinger and   
             Manu Sridharan and   
                  Frank Tip and   
                   Youngil Choi   Type inference for static compilation of
                                  JavaScript . . . . . . . . . . . . . . . 410--429
             Malavika Samak and   
                 Omer Tripp and   
      Murali Krishna Ramanathan   Directed synthesis of failing concurrent
                                  executions . . . . . . . . . . . . . . . 430--446
               Shiyou Huang and   
                     Jeff Huang   Maximal causality reduction for TSO and
                                  PSO  . . . . . . . . . . . . . . . . . . 447--461
                 Jeff Huang and   
            Arun K. Rajagopalan   Precise and maximal race detection from
                                  incomplete traces  . . . . . . . . . . . 462--476
                   Ben Blum and   
                   Garth Gibson   Stateless model checking with data-race
                                  preemption points  . . . . . . . . . . . 477--493
           Anitha Gollamudi and   
                  Stephen Chong   Automatic enforcement of expressive
                                  security policies using enclaves . . . . 494--513
               Alexei Colin and   
                  Brandon Lucia   Chain: tasks and channels for reliable
                                  intermittent programs  . . . . . . . . . 514--530
            Daniele Bonetta and   
               Luca Salucci and   
                Stefan Marr and   
                  Walter Binder   GEMs: shared-memory parallel programming
                                  for Node.js  . . . . . . . . . . . . . . 531--547
     Arthur Michener Peters and   
              David Kitchin and   
          John A. Thywissen and   
                William R. Cook   OrcO: a concurrency-first approach to
                                  objects  . . . . . . . . . . . . . . . . 548--567
              Davide Ancona and   
                 Andrea Corradi   Semantic subtyping for imperative
                                  object-oriented languages  . . . . . . . 568--587
Jonathan Immanuel Brachthäuser and   
            Tillmann Rendel and   
                Klaus Ostermann   Parsing with first-class derivatives . . 588--606
               Stephen Kell and   
        Dominic P. Mulligan and   
                   Peter Sewell   The missing link: explaining ELF static
                                  linking, semantically  . . . . . . . . . 607--623
                Tiark Rompf and   
                      Nada Amin   Type soundness for dependent object
                                  types (DOT)  . . . . . . . . . . . . . . 624--641
              Benoit Daloze and   
                Stefan Marr and   
            Daniele Bonetta and   
 Hanspeter Mössenböck   Efficient and thread-safe objects for
                                  dynamically-typed languages  . . . . . . 642--659
              Keith Chapman and   
          Antony L. Hosking and   
               J. Eliot B. Moss   Hybrid STM/HTM for nested transactions
                                  on OpenJDK . . . . . . . . . . . . . . . 660--676
             Kumud Bhandari and   
      Dhruva R. Chakrabarti and   
                  Hans-J. Boehm   Makalu: fast recoverable allocation of
                                  non-volatile memory  . . . . . . . . . . 677--694
             Diogenes Nunez and   
            Samuel Z. Guyer and   
                Emery D. Berger   Prioritized garbage collection: explicit
                                  GC support for software caches . . . . . 695--710
         Friedrich Steimann and   
         Jörg Hagemann and   
                   Bastian Ulke   Computing repair alternatives for
                                  malformed programs using constraint
                                  attribute grammars . . . . . . . . . . . 711--730
            Veselin Raychev and   
               Pavol Bielik and   
                  Martin Vechev   Probabilistic model for code with
                                  decision trees . . . . . . . . . . . . . 731--747
               Shaon Barman and   
              Sarah Chasins and   
            Rastislav Bodik and   
                  Sumit Gulwani   Ringer: web automation by demonstration  748--764
           Konstantin Weitz and   
                  Doug Woos and   
               Emina Torlak and   
           Michael D. Ernst and   
       Arvind Krishnamurthy and   
                Zachary Tatlock   Scalable verification of Border Gateway
                                  Protocol configurations with an SMT
                                  solver . . . . . . . . . . . . . . . . . 765--780
            Calvin Loncaric and   
             Satish Chandra and   
           Cole Schlesinger and   
                 Manu Sridharan   A practical framework for type inference
                                  error explanation  . . . . . . . . . . . 781--799
                   Stephen Kell   Dynamically diagnosing type errors in
                                  unsafe code  . . . . . . . . . . . . . . 800--819
                Yuheng Long and   
               Yu David Liu and   
                  Hridesh Rajan   First-class effect reflection for
                                  effect-guided programming  . . . . . . . 820--837
                  Nada Amin and   
                      Ross Tate   Java and Scala's type systems are
                                  unsound: the existential crisis of null
                                  pointers . . . . . . . . . . . . . . . . 838--848
              Chengnian Sun and   
                      Vu Le and   
                    Zhendong Su   Finding compiler bugs via live code
                                  mutation . . . . . . . . . . . . . . . . 849--863
               Zhiyong Shan and   
              Tanzirul Azim and   
                 Iulian Neamtiu   Finding resume and restart errors in
                                  Android applications . . . . . . . . . . 864--880
               Zhiqiang Zuo and   
                    Lu Fang and   
            Siau-Cheng Khoo and   
                 Guoqing Xu and   
                        Shan Lu   Low-overhead and fully automated
                                  statistical debugging with abstraction
                                  refinement . . . . . . . . . . . . . . . 881--896
              Rohan Bavishi and   
             Awanish Pandey and   
                   Subhajit Roy   To be precise: regression aware
                                  debugging  . . . . . . . . . . . . . . . 897--915


ACM SIG{}PLAN Notices
Volume 52, Number 6, June, 2017

        Jonathan Lifflander and   
          Sriram Krishnamoorthy   Cache locality optimization for
                                  recursive programs . . . . . . . . . . . 1--16
             Olli Saarikivi and   
              Margus Veanes and   
             Todd Mytkowicz and   
                Madan Musuvathi   Fusing effectful comprehensions  . . . . 17--32
                 Yufei Ding and   
                   Lin Ning and   
                   Hui Guan and   
                    Xipeng Shen   Generalizations of the theory and
                                  deployment of triangular inequality for
                                  compiler-based strength reduction  . . . 33--48
             David Menendez and   
            Santosh Nagarakatte   Alive-Infer: data-driven precondition
                                  inference for peephole optimizations in
                                  LLVM . . . . . . . . . . . . . . . . . . 49--63
              Kuat Yessenov and   
                 Ivan Kuraj and   
           Armando Solar-Lezama   DemoMatch: API discovery from
                                  demonstrations . . . . . . . . . . . . . 64--78
                Yaniv David and   
             Nimrod Partush and   
                     Eran Yahav   Similarity of binaries through
                                  re-optimization  . . . . . . . . . . . . 79--94
             Osbert Bastani and   
               Rahul Sharma and   
                 Alex Aiken and   
                    Percy Liang   Synthesizing program input grammars  . . 95--110
               Daniel Huang and   
      Jean-Baptiste Tristan and   
                 Greg Morrisett   Compiling Markov chain Monte Carlo
                                  algorithms for probabilistic modeling    111--125
            Ariel Eizenberg and   
              Yuanfeng Peng and   
                 Toma Pigli and   
             William Mansky and   
                Joseph Devietti   BARRACUDA: binary-level analysis of
                                  runtime RAces in CUDA programs . . . . . 126--140
              Dustin Rhodes and   
            Cormac Flanagan and   
              Stephen N. Freund   BigFoot: static check placement for
                                  dynamic race detection . . . . . . . . . 141--156
                Dileep Kini and   
               Umang Mathur and   
             Mahesh Viswanathan   Dynamic race prediction in linear time   157--170
              Marina Billes and   
       Anders Mòller and   
                 Michael Pradel   Systematic black-box analysis of
                                  collaborative web applications . . . . . 171--184
               Andreas Haas and   
           Andreas Rossberg and   
            Derek L. Schuff and   
              Ben L. Titzer and   
             Michael Holman and   
                 Dan Gohman and   
                Luke Wagner and   
                 Alon Zakai and   
                  J. F. Bastien   Bringing the web up to speed with
                                  WebAssembly  . . . . . . . . . . . . . . 185--200
           Dmitry Petrashko and   
       Ondrej Lhoták and   
                 Martin Odersky   Miniphases: compilation using modular
                                  and efficient tree transformations . . . 201--216
             Anthony Canino and   
                   Yu David Liu   Proactive and adaptive energy-aware
                                  programming with mixed typechecking  . . 217--232
                Piyus Kedia and   
               Manuel Costa and   
          Matthew Parkinson and   
              Kapil Vaswani and   
       Dimitrios Vytiniotis and   
               Aaron Blankstein   Simple, fast, and safe manual memory
                                  management . . . . . . . . . . . . . . . 233--247
            Zachary Kincaid and   
                Jason Breck and   
   Ashkan Forouhi Boroujeni and   
                    Thomas Reps   Compositional recurrence analysis
                                  revisited  . . . . . . . . . . . . . . . 248--262
               Rei Thiessen and   
           Ondrej Lhoták   Context transformations for pointer
                                  analysis . . . . . . . . . . . . . . . . 263--277
                   Tian Tan and   
                     Yue Li and   
                   Jingling Xue   Efficient and precise points-to
                                  analysis: modeling the heap by merging
                                  equivalent automata  . . . . . . . . . . 278--291
           Anirudh Santhiar and   
                  Aditya Kanade   Static deadlock detection for
                                  asynchronous C# programs . . . . . . . . 292--305
                 Zhoulai Fu and   
                    Zhendong Su   Achieving high coverage for
                                  floating-point code via unconstrained
                                  programming  . . . . . . . . . . . . . . 306--319
           Buddhika Chamith and   
           Bo Joel Svensson and   
           Luke Dalessandro and   
                 Ryan R. Newton   Instruction punning: lightweight
                                  instrumentation for x86-64 . . . . . . . 320--332
           Amanieu D'Antras and   
            Cosmin Gorgovan and   
                Jim Garside and   
             Mikel Luján   Low overhead dynamic binary translation
                                  on ARM . . . . . . . . . . . . . . . . . 333--346
                Qirun Zhang and   
              Chengnian Sun and   
                    Zhendong Su   Skeletal program enumeration for
                                  rigorous compiler testing  . . . . . . . 347--361
         Timos Antonopoulos and   
              Paul Gazzillo and   
              Michael Hicks and   
              Eric Koskinen and   
            Tachio Terauchi and   
                      Shiyi Wei   Decomposition instead of
                                  self-composition for proving the absence
                                  of timing channels . . . . . . . . . . . 362--375
               Qinheping Hu and   
                 Loris D'Antoni   Automatic program inversion using
                                  symbolic transducers . . . . . . . . . . 376--389
               Peter Ohmann and   
           Alexander Brooks and   
             Loris D'Antoni and   
                     Ben Liblit   Control-flow recovery from partial
                                  failure reports  . . . . . . . . . . . . 390--405
              Goran Doychev and   
                Boris Köpf   Rigorous analysis of software
                                  countermeasures against cache attacks    406--421
                    Yu Feng and   
              Ruben Martins and   
           Jacob Van Geffen and   
                Isil Dillig and   
               Swarat Chaudhuri   Component-based synthesis of table
                                  consolidation and transformation tasks
                                  from examples  . . . . . . . . . . . . . 422--436
               Ryan Beckett and   
              Ratul Mahajan and   
             Todd Millstein and   
            Jitendra Padhye and   
                   David Walker   Network configuration synthesis with
                                  abstract topologies  . . . . . . . . . . 437--451
             Chenglong Wang and   
               Alvin Cheung and   
                Rastislav Bodik   Synthesizing highly expressive SQL
                                  queries from input-output examples . . . 452--466
             James Bornholt and   
                   Emina Torlak   Synthesizing memory models from
                                  framework sketches and Litmus tests  . . 467--481
                Luke Maurer and   
                Paul Downen and   
             Zena M. Ariola and   
             Simon Peyton Jones   Compiling without continuations  . . . . 482--494
           Daniel Patterson and   
             Jamie Perconti and   
          Christos Dimoulas and   
                     Amal Ahmed   FunTAL: reasonably mixing a functional
                                  language with assembly . . . . . . . . . 495--509
                  Shumo Chu and   
           Konstantin Weitz and   
               Alvin Cheung and   
                      Dan Suciu   HoTTSQL: proving query rewrites with
                                  univalent SQL semantics  . . . . . . . . 510--524
       Richard A. Eisenberg and   
             Simon Peyton Jones   Levity polymorphism  . . . . . . . . . . 525--539
              Azadeh Farzan and   
                 Victor Nicolet   Synthesis of divide and conquer
                                  parallelism for loops  . . . . . . . . . 540--555
           Troels Henriksen and   
          Niels G. W. Serup and   
              Martin Elsman and   
             Fritz Henglein and   
               Cosmin E. Oancea   Futhark: purely functional
                                  GPU-programming with nested parallelism
                                  and in-place array updates . . . . . . . 556--571
        Grigory Fedyukovich and   
      Maaz Bin Safeer Ahmad and   
                Rastislav Bodik   Gradual synthesis for static
                                  parallelization of single-pass
                                  array-processing programs  . . . . . . . 572--585
             Timothy Bourke and   
          Lélio Brun and   
Pierre-Évariste Dagand and   
               Xavier Leroy and   
                Marc Pouzet and   
                    Lionel Rieg   A formally verified compiler for Lustre  586--601
        Parosh Aziz Abdulla and   
        Mohamed Faouzi Atig and   
               Yu-Fang Chen and   
               Bui Phi Diep and   
  Lukás Holík and   
               Ahmed Rezine and   
            Philipp Rümmer   Flatten and conquer: a framework for
                                  efficient analysis of string constraints 602--617
                  Ori Lahav and   
           Viktor Vafeiadis and   
               Jeehoon Kang and   
              Chung-Kil Hur and   
                   Derek Dreyer   Repairing sequential consistency in
                                  C/C++11  . . . . . . . . . . . . . . . . 618--632
              Juneyoung Lee and   
              Yoonseung Kim and   
               Youngju Song and   
              Chung-Kil Hur and   
                 Sanjoy Das and   
             David Majnemer and   
                John Regehr and   
                  Nuno P. Lopes   Taming undefined behavior in LLVM  . . . 633--647
            Scott Schneider and   
                    Kun-Lung Wu   Low-synchronization, mostly lock-free,
                                  elastic scheduling for streaming
                                  runtimes . . . . . . . . . . . . . . . . 648--661
     Thomas Würthinger and   
           Christian Wimmer and   
            Christian Humer and   
     Andreas Wöß and   
              Lukas Stadler and   
               Chris Seaton and   
             Gilles Duboscq and   
                 Doug Simon and   
               Matthias Grimmer   Practical partial evaluation for
                                  high-performance dynamic language
                                  runtimes . . . . . . . . . . . . . . . . 662--676
           Stefan K. Muller and   
               Umut A. Acar and   
                  Robert Harper   Responsive parallel computation:
                                  bridging competitive and cooperative
                                  threading  . . . . . . . . . . . . . . . 677--692
      Konstantinos Mamouras and   
         Mukund Raghothaman and   
                Rajeev Alur and   
            Zachary G. Ives and   
                 Sanjeev Khanna   StreamQRE: modular specification and
                                  efficient evaluation of quantitative
                                  queries over streaming data  . . . . . . 693--708

ACM SIG{}PLAN Notices
Volume 52, Number 1, January, 2017

              Stephanie Weirich   The influence of dependent types
                                  (keynote)  . . . . . . . . . . . . . . . 1--1
                    Aaron Turon   Rust: from POPL to practice (keynote)    2--2
               Jade Alglave and   
                 Patrick Cousot   Ogre and Pythia: an invariance proof
                                  method for weak consistency models . . . 3--18
            Kimball Germane and   
                  Matthew Might   A posteriori environment analysis with
                                  Pushdown Delta CFA . . . . . . . . . . . 19--31
                 Huisong Li and   
   François Berenger and   
         Bor-Yuh Evan Chang and   
                   Xavier Rival   Semantic-directed clumping of
                                  disjunctive abstract states  . . . . . . 32--45
            Gagandeep Singh and   
        Markus Püschel and   
                  Martin Vechev   Fast polyhedra abstract domain . . . . . 46--59
              Stephen Dolan and   
                   Alan Mycroft   Polymorphism, subtyping, and type
                                  inference in MLsub . . . . . . . . . . . 60--72
                   Radu Grigore   Java generics are Turing complete  . . . 73--85
                 Cyrus Omar and   
                 Ian Voysey and   
             Michael Hilton and   
           Jonathan Aldrich and   
              Matthew A. Hammer   Hazelnut: a bidirectionally typed
                                  structure editor calculus  . . . . . . . 86--99
                     Karl Crary   Modules, abstraction, and parametric
                                  polymorphism . . . . . . . . . . . . . . 100--113
      Leonidas Lampropoulos and   
         Diane Gallois-Wong and   
             Catalin Hritcu and   
                John Hughes and   
         Benjamin C. Pierce and   
                     Li-yao Xia   Beginner's luck: a language for
                                  property-based generators  . . . . . . . 114--129
           Chung-chieh Shan and   
                  Norman Ramsey   Exact Bayesian inference by symbolic
                                  disintegration . . . . . . . . . . . . . 130--144
      Krishnendu Chatterjee and   
        Petr Novotný and   
             \Ethorde Zikeli\'c   Stochastic invariants for probabilistic
                                  termination  . . . . . . . . . . . . . . 145--160
              Gilles Barthe and   
   Benjamin Grégoire and   
                 Justin Hsu and   
              Pierre-Yves Strub   Coupling proofs are probabilistic
                                  product programs . . . . . . . . . . . . 161--174
               Jeehoon Kang and   
              Chung-Kil Hur and   
                  Ori Lahav and   
           Viktor Vafeiadis and   
                   Derek Dreyer   A promising semantics for relaxed-memory
                                  concurrency  . . . . . . . . . . . . . . 175--189
             John Wickerson and   
                 Mark Batty and   
             Tyler Sorensen and   
       George A. Constantinides   Automatically comparing memory
                                  consistency models . . . . . . . . . . . 190--204
           Robbert Krebbers and   
                Amin Timany and   
                  Lars Birkedal   Interactive proofs in higher-order
                                  concurrent separation logic  . . . . . . 205--217
     Morten Krogh-Jespersen and   
            Kasper Svendsen and   
                  Lars Birkedal   A relational model of types-and-effects
                                  in higher-order concurrent separation
                                  logic  . . . . . . . . . . . . . . . . . 218--231
             Loris D'Antoni and   
                  Margus Veanes   Monadic second-order logic on finite
                                  sequences  . . . . . . . . . . . . . . . 232--245
            Naoki Kobayashi and   
       Étienne Lozes and   
                  Florian Bruse   On the relationship between higher-order
                                  recursion schemes and higher-order
                                  fixpoint logic . . . . . . . . . . . . . 246--259
        Laura Kovács and   
            Simon Robillard and   
                Andrei Voronkov   Coming to terms with quantified
                                  reasoning  . . . . . . . . . . . . . . . 260--270
                 Ziv Scully and   
                  Adam Chlipala   A program optimization for automatic
                                  database result caching  . . . . . . . . 271--284
              Oleg Kiselyov and   
           Aggelos Biboudis and   
            Nick Palladinos and   
             Yannis Smaragdakis   Stream fusion, to completeness . . . . . 285--299
             Wei-Fan Chiang and   
            Mark Baranowski and   
                 Ian Briggs and   
            Alexey Solovyev and   
      Ganesh Gopalakrishnan and   
           Zvonimir Rakamari\'c   Rigorous floating-point mixed-precision
                                  tuning . . . . . . . . . . . . . . . . . 300--315
   Ezgi Çiçek and   
              Gilles Barthe and   
             Marco Gaboardi and   
                Deepak Garg and   
                   Jan Hoffmann   Relational cost analysis . . . . . . . . 316--329
     Ravichandhran Madhavan and   
               Sumith Kulal and   
                  Viktor Kuncak   Contract-based resource verification for
                                  higher-order functions with memoization  330--343
                Qirun Zhang and   
                    Zhendong Su   Context-sensitive data-dependence
                                  analysis via linear conjunctive language
                                  reachability . . . . . . . . . . . . . . 344--358
               Jan Hoffmann and   
                 Ankush Das and   
                  Shu-Chun Weng   Towards automatic resource bound
                                  analysis for OCaml . . . . . . . . . . . 359--373
                Gabriel Scherer   Deciding equivalence with sums and the
                                  empty type . . . . . . . . . . . . . . . 374--386
                     Danko Ilik   The exp--log normal form of types:
                                  decomposing extensional equality and
                                  representing terms compactly . . . . . . 387--399
                Paul Blain Levy   Contextual isomorphisms  . . . . . . . . 400--414
                 Matt Brown and   
                  Jens Palsberg   Typed self-evaluation via intensional
                                  type functions . . . . . . . . . . . . . 415--428
                Shaked Flur and   
              Susmit Sarkar and   
          Christopher Pulte and   
          Kyndylan Nienhuis and   
               Luc Maranget and   
            Kathryn E. Gray and   
                 Ali Sezgin and   
                 Mark Batty and   
                   Peter Sewell   Mixed-size concurrency: ARM, POWER,
                                  C/C++11, and SC  . . . . . . . . . . . . 429--442
        Christopher Lidbury and   
          Alastair F. Donaldson   Dynamic race detection for C++11 . . . . 443--457
             Lucas Brutschy and   
           Dimitar Dimitrov and   
          Peter Müller and   
                  Martin Vechev   Serializability for eventual
                                  consistency: criterion, analysis, and
                                  applications . . . . . . . . . . . . . . 458--472
            Jochen Hoenicke and   
             Rupak Majumdar and   
               Andreas Podelski   Thread modularity at many levels: a
                                  pearl in compositional verification  . . 473--485
                    Daan Leijen   Type directed compilation of row-typed
                                  algebraic effects  . . . . . . . . . . . 486--499
                Sam Lindley and   
              Conor McBride and   
               Craig McLaughlin   Do be do be do . . . . . . . . . . . . . 500--514
                Danel Ahman and   
             Catalin Hritcu and   
             Kenji Maillard and   
      Guido Martínez and   
             Gordon Plotkin and   
         Jonathan Protzenko and   
              Aseem Rastogi and   
                   Nikhil Swamy   Dijkstra monads for free . . . . . . . . 515--529
              Taro Sekiyama and   
               Atsushi Igarashi   Stateful manifest contracts  . . . . . . 530--544
   Arthur Azevedo de Amorim and   
             Marco Gaboardi and   
                 Justin Hsu and   
          Shin-ya Katsumata and   
                 Ikram Cherigui   A semantic account of metric
                                  preservation . . . . . . . . . . . . . . 545--556
             Steffen Smolka and   
              Praveen Kumar and   
                Nate Foster and   
               Dexter Kozen and   
                Alexandra Silva   Cantor meets Scott: semantic foundations
                                  for probabilistic networks . . . . . . . 557--571
         Kausik Subramanian and   
             Loris D'Antoni and   
                  Aditya Akella   Genesis: synthesizing forwarding tables
                                  in multi-tenant networks . . . . . . . . 572--585
          Eryk Kopczy\'nski and   
             Szymon Toru\'nczyk   LOIS: syntax and semantics . . . . . . . 586--598
                    Yu Feng and   
              Ruben Martins and   
               Yuepeng Wang and   
                Isil Dillig and   
                 Thomas W. Reps   Component-based synthesis for complex
                                  APIs . . . . . . . . . . . . . . . . . . 599--612
             Joshua Moerman and   
          Matteo Sammartino and   
            Alexandra Silva and   
                Bartek Klin and   
              Michal Szynwelski   Learning nominal automata  . . . . . . . 613--625
            Ahmed Bouajjani and   
            Constantin Enea and   
           Rachid Guerraoui and   
                      Jad Hamza   On verifying causal consistency  . . . . 626--638
          Akhilesh Srikanth and   
                Burak Sahin and   
              William R. Harris   Complexity verification using guided
                                  theorem enumeration  . . . . . . . . . . 639--652
         Andrej Dudenhefner and   
                    Jakob Rehof   Intersection type calculi of bounded
                                  dimension  . . . . . . . . . . . . . . . 653--665
                  Nada Amin and   
                    Tiark Rompf   Type soundness proofs with definitional
                                  interpreters . . . . . . . . . . . . . . 666--679
              Carlo Angiuli and   
              Robert Harper and   
                    Todd Wilson   Computational higher-dimensional type
                                  theory . . . . . . . . . . . . . . . . . 680--693
              Stephen Chang and   
                Alex Knauth and   
                   Ben Greenman   Type systems as macros . . . . . . . . . 694--705
               Ananya Kumar and   
            Guy E. Blelloch and   
                  Robert Harper   Parallel functional arrays . . . . . . . 706--718
                Igor Konnov and   
           Marijana Lazi\'c and   
               Helmut Veith and   
                   Josef Widder   A short counterexample property for
                                  safety and liveness verification of
                                  fault-tolerant distributed algorithms    719--734
                 Xinxin Liu and   
                Tingting Yu and   
                   Wenhui Zhang   Analyzing divergence in bisimulation
                                  semantics  . . . . . . . . . . . . . . . 735--747
               Julien Lange and   
                Nicholas Ng and   
           Bernardo Toninho and   
                 Nobuko Yoshida   Fencing off Go: liveness and safety for
                                  channel-based programming  . . . . . . . 748--761
        Michael M. Vitousek and   
             Cameron Swords and   
                 Jeremy G. Siek   Big types in little runtime: open-world
                                  soundness and collaborative blame for
                                  gradual type systems . . . . . . . . . . 762--774
               Nico Lehmann and   
             Éric Tanter   Gradual refinement types . . . . . . . . 775--788
              Matteo Cimini and   
                 Jeremy G. Siek   Automatically generating the dynamic
                                  semantics of gradually typed languages   789--803
          Khurram A. Jafery and   
                Joshua Dunfield   Sums of uncertainty: refinements go
                                  gradual  . . . . . . . . . . . . . . . . 804--817
             Mingsheng Ying and   
             Shenggang Ying and   
                      Xiaodi Wu   Invariants of quantum programs:
                                  characterisations and generation . . . . 818--832
               Ugo Dal Lago and   
            Claudia Faggian and   
          Beno\^\it Valiron and   
                Akira Yoshimizu   The geometry of parallelism: classical,
                                  probabilistic, and quantum effects . . . 833--845
            Jennifer Paykin and   
                Robert Rand and   
                Steve Zdancewic   QWIRE: a core language for quantum
                                  circuits . . . . . . . . . . . . . . . . 846--858
                  Nada Amin and   
                    Tiark Rompf   LMS-Verify: abstraction without regret
                                  for verified systems programming . . . . 859--873
               Mounir Assaf and   
           David A. Naumann and   
            Julien Signoles and   
          Éric Totel and   
  Frédéric Tronel   Hypercollecting semantics and its
                                  application to static analysis of
                                  information flow . . . . . . . . . . . . 874--887
              Danfeng Zhang and   
                   Daniel Kifer   LightDP: towards automating differential
                                  privacy proofs . . . . . . . . . . . . . 888--901


ACM SIG{}PLAN Notices
Volume 51, Number 8, August, 2016

          Marc Gonzalez Tallada   Coarse grain parallelization of deep
                                  neural networks  . . . . . . . . . . . . 1:1--1:??
                  Xiao Wang and   
                 Amit Sabne and   
             Sherman Kisner and   
          Anand Raghunathan and   
             Charles Bouman and   
                 Samuel Midkiff   High performance model based image
                                  reconstruction . . . . . . . . . . . . . 2:1--2:??
         Sandeep R. Agrawal and   
         Christopher M. Dee and   
                Alvin R. Lebeck   Exploiting accelerators for efficient
                                  high dimensional similarity search . . . 3:1--3:??
                Flavio Cruz and   
              Ricardo Rocha and   
           Seth Copen Goldstein   Declarative coordination of graph-based
                                  parallel programs  . . . . . . . . . . . 4:1--4:??
            Tyler Denniston and   
               Shoaib Kamil and   
              Saman Amarasinghe   Distributed Halide . . . . . . . . . . . 5:1--5:??
             Ryan R. Newton and   
        Ömer S. Agacan and   
                 Peter Fogg and   
            Sam Tobin-Hochstadt   Parallel type-checking with Haskell
                                  using saturating LVars and stream
                                  generators . . . . . . . . . . . . . . . 6:1--6:??
                   Lei Wang and   
                   Fan Yang and   
             Liangji Zhuang and   
                 Huimin Cui and   
                    Fang Lv and   
                  Xiaobing Feng   Articulation points guided redundancy
                                  elimination for betweenness centrality   7:1--7:??
            Vincent Bloemen and   
             Alfons Laarman and   
                Jaco van de Pol   Multi-core on-the-fly SCC decomposition  8:1--8:??
        Ramakrishnan Kannan and   
               Grey Ballard and   
                    Haesun Park   A high-performance parallel algorithm
                                  for nonnegative matrix factorization . . 9:1--9:??
           Rezaul Chowdhury and   
           Pramod Ganapathi and   
         Jesmin Jahan Tithi and   
          Charles Bachmeier and   
        Bradley C. Kuszmaul and   
       Charles E. Leiserson and   
       Armando Solar-Lezama and   
                      Yuan Tang   AUTOGEN: automatic discovery of
                                  cache-oblivious parallel recursive
                                  algorithms for solving dynamic programs  10:1--10:??
             Yangzihao Wang and   
            Andrew Davidson and   
                Yuechao Pan and   
                   Yuduo Wu and   
                Andy Riffel and   
                  John D. Owens   Gunrock: a high-performance graph
                                  processing library on the GPU  . . . . . 11:1--11:??
             Saman Ashkiani and   
            Andrew Davidson and   
               Ulrich Meyer and   
                  John D. Owens   GPU multisplit . . . . . . . . . . . . . 12:1--12:??
         Tiziano De Matteis and   
              Gabriele Mencagli   Keep calm and react with foresight:
                                  strategies for low-latency and
                                  energy-efficient elastic data stream
                                  processing . . . . . . . . . . . . . . . 13:1--13:??
                    Jing Li and   
              Kunal Agrawal and   
             Sameh Elnikety and   
                 Yuxiong He and   
        I-Ting Angelina Lee and   
                Chenyang Lu and   
            Kathryn S. McKinley   Work stealing for interactive services
                                  to meet target latency . . . . . . . . . 14:1--14:??
         Guy L. Steele, Jr. and   
          Jean-Baptiste Tristan   Adding approximate counters  . . . . . . 15:1--15:??
               Chaoran Yang and   
            John Mellor-Crummey   A wait-free queue as fast as
                                  fetch-and-add  . . . . . . . . . . . . . 16:1--16:??
         Syed Kamran Haider and   
        William Hasenplaugh and   
                   Dan Alistarh   Lease/release: architectural support for
                                  scaling contended data structures  . . . 17:1--17:??
           Rachid Guerraoui and   
           Vasileios Trigonakis   Optimistic concurrency with OPTIK  . . . 18:1--18:??
                  Dave Dice and   
                 Alex Kogan and   
                      Yossi Lev   Refined transactional lock elision . . . 19:1--19:??
                    Man Cao and   
               Minjia Zhang and   
            Aritra Sengupta and   
                Michael D. Bond   Drinking from both glasses: combining
                                  pessimistic and optimistic tracking of
                                  cross-thread dependences . . . . . . . . 20:1--20:??
             Tianzheng Wang and   
              Milind Chabbi and   
                 Hideaki Kimura   Be my guest: MCS lock now welcomes
                                  guests . . . . . . . . . . . . . . . . . 21:1--21:??
              Milind Chabbi and   
            John Mellor-Crummey   Contention-conscious,
                                  locality-preserving locks  . . . . . . . 22:1--22:??
            Saurabh Kalikar and   
                   Rupesh Nasre   DomLock: a new multi-granularity locking
                                  technique for hierarchies  . . . . . . . 23:1--23:??
             Carl G. Ritson and   
                    Scott Owens   Benchmarking weak memory models  . . . . 24:1--24:??
       Ganesh Narayanaswamy and   
              Saurabh Joshi and   
                Daniel Kroening   The virtues of conflict: analysing
                                  modern concurrency . . . . . . . . . . . 25:1--25:??
            Matthieu Perrin and   
          Achour Mostefaoui and   
                    Claude Jard   Causal consistency: beyond memory  . . . 26:1--26:??
      Georgios Chatzopoulos and   
    Aleksandar Dragojevi\'c and   
               Rachid Guerraoui   ESTIMA: extrapolating scalability of
                                  in-memory applications . . . . . . . . . 27:1--27:??
        Ananya Muddukrishna and   
           Peter A. Jonsson and   
              Artur Podobas and   
                  Mats Brorsson   Grain graphs: OpenMP performance
                                  analysis made easy . . . . . . . . . . . 28:1--28:??
               Nuno Machado and   
              Brandon Lucia and   
          Luís Rodrigues   Production-guided concurrency debugging  29:1--29:??
             Naila Farooqui and   
           Rajkishore Barik and   
             Brian T. Lewis and   
          Tatiana Shpeisman and   
                 Karsten Schwan   Affinity-aware work-stealing for
                                  integrated CPU--GPU processors . . . . . 30:1--30:??
   François Gindraud and   
           Fabrice Rastello and   
               Albert Cohen and   
      François Broquedis   An interval constrained memory allocator
                                  for the Givy GAS runtime . . . . . . . . 31:1--31:??
               Li-Wen Chang and   
              Izzat El Hajj and   
               Hee-Seok Kim and   
     Juan Gómez-Luna and   
               Abdul Dakkak and   
                    Wen-mei Hwu   A programming system for future proofing
                                  performance critical libraries . . . . . 32:1--32:??
        Jesper Puge Nielsen and   
                  Sven Karlsson   A scalable lock-free hash table with
                                  open addressing  . . . . . . . . . . . . 33:1--33:??
               Tobias Maier and   
              Peter Sanders and   
                Roman Dementiev   Concurrent hash tables: fast and
                                  general?(!)  . . . . . . . . . . . . . . 34:1--34:??
              Javier Prades and   
        Carlos Reaño and   
                 Federico Silla   CUDA acceleration for Xen virtual
                                  machines in InfiniBand clusters with
                                  rCUDA  . . . . . . . . . . . . . . . . . 35:1--35:??
               Ibrahim Umar and   
             Otto J. Anshus and   
                   Phuong H. Ha   Effect of portable fine-grained locality
                                  on energy efficiency and performance in
                                  concurrent search trees  . . . . . . . . 36:1--36:??
             Hrushit Parikh and   
              Vinit Deodhar and   
            Ada Gavrilovska and   
                  Santosh Pande   Efficient distributed workstealing via
                                  matchmaking  . . . . . . . . . . . . . . 37:1--37:??
                    Hao Luo and   
               Guoyang Chen and   
               Pengcheng Li and   
                  Chen Ding and   
                    Xipeng Shen   Data-centric combinatorial optimization
                                  of parallel code . . . . . . . . . . . . 38:1--38:??
               Saeed Maleki and   
              Donald Nguyen and   
            Andrew Lenharth and   
María Garzarán and   
                David Padua and   
                 Keshav Pingali   DSMR: a shared and distributed memory
                                  algorithm for single-source shortest
                                  path problem . . . . . . . . . . . . . . 39:1--39:??
               Luca Salucci and   
            Daniele Bonetta and   
                Stefan Marr and   
                  Walter Binder   Generic messages: capability-based
                                  shared memory parallelism for event-loop
                                  systems  . . . . . . . . . . . . . . . . 40:1--40:??
               Jianqiao Liu and   
               Nikhil Hegde and   
                Milind Kulkarni   Hybrid CPU--GPU scheduling and execution
                                  of tree traversals . . . . . . . . . . . 41:1--41:??
    Arunmoezhi Ramachandran and   
                  Neeraj Mittal   Improving efficacy of internal binary
                                  search trees using local recovery  . . . 42:1--42:??
              Duane Merrill and   
                Michael Garland   Merge-based sparse matrix-vector
                                  multiplication (SpMV) using the CSR
                                  storage format . . . . . . . . . . . . . 43:1--43:??
                Andi Drebes and   
                Antoniu Pop and   
           Karine Heydemann and   
             Nathalie Drach and   
                   Albert Cohen   NUMA-aware scheduling and memory
                                  allocation for data-flow task-parallel
                                  applications . . . . . . . . . . . . . . 44:1--44:??
          Mohamed Mohamedin and   
           Roberto Palmieri and   
          Sebastiano Peluso and   
                Binoy Ravindran   On designing NUMA-aware concurrency
                                  control for scalable transactional
                                  memory . . . . . . . . . . . . . . . . . 45:1--45:??
            Mohamed M. Saad and   
           Roberto Palmieri and   
                Binoy Ravindran   On ordering transaction commit . . . . . 46:1--46:??
                Xuehai Qian and   
                Koushik Sen and   
              Paul Hargrove and   
                   Costin Iancu   OPR: deterministic group replay for
                                  one-sided communication  . . . . . . . . 47:1--47:??
              Marco Rabozzi and   
        Matteo Mazzucchelli and   
            Roberto Cordone and   
   Giovanni Matteo Fumarola and   
          Marco D. Santambrogio   Preemption-aware planning on big-data
                                  systems  . . . . . . . . . . . . . . . . 48:1--48:??
                Yifeng Chen and   
                  Kun Huang and   
                   Bei Wang and   
                  Guohui Li and   
                      Xiang Cui   Samsara Parallel: a non-BSP
                                  parallel-in-time model . . . . . . . . . 49:1--49:??
              Mingzhe Zhang and   
          Francis C. M. Lau and   
                Cho-Li Wang and   
                Luwei Cheng and   
                     Haibo Chen   Scalable adaptive NUMA-aware lock:
                                  combining local locking and remote
                                  locking for efficient concurrency  . . . 50:1--50:??
               Nikhil Hegde and   
               Jianqiao Liu and   
                Milind Kulkarni   SPIRIT: a runtime system for distributed
                                  irregular tree applications  . . . . . . 51:1--51:??
            Pedro Ramalhete and   
                Andreia Correia   Tidex: a mutual exclusion lock . . . . . 52:1--52:??
        Aristeidis Mastoras and   
                Thomas R. Gross   Unifying fixed code and fixed data
                                  mapping of load-imbalanced pipelined
                                  loops  . . . . . . . . . . . . . . . . . 53:1--53:??
            Mehmet Can Kurt and   
                    Bin Ren and   
      Sriram Krishnamoorthy and   
                  Gagan Agrawal   User-assisted storage reuse
                                  determination for dynamic task graphs    54:1--54:??
            Waqas Ur Rehman and   
       Muhammad Sohaib Ayub and   
         Junaid Haroon Siddiqui   Verification of MPI Java programs using
                                  software model checking  . . . . . . . . 55:1--55:??

ACM SIG{}PLAN Notices
Volume 51, Number 7, July, 2016

                   Vivek Sarkar   Virtualizing the Edge of the Cloud: the
                                  New Frontier . . . . . . . . . . . . . . 1--1
                Yu-Ju Huang and   
              Hsuan-Heng Wu and   
            Yeh-Ching Chung and   
                  Wei-Chung Hsu   Building a KVM-based Hypervisor for a
                                  Heterogeneous System Architecture
                                  Compliant System . . . . . . . . . . . . 3--15
             Jiannan Ouyang and   
              John R. Lange and   
                 Haoqiang Zheng   Shoot4U: Using VMM Assists to Optimize
                                  TLB Operations on Preempted vCPUs  . . . 17--23
         Timothy Merrifield and   
                 H. Reza Taheri   Performance Implications of Extended
                                  Page Tables on Virtualized x86
                                  Processors . . . . . . . . . . . . . . . 25--35
             Senthil Nathan and   
               Umesh Bellur and   
           Purushottam Kulkarni   On Selecting the Right Optimizations for
                                  Virtual Machine Migration  . . . . . . . 37--49
              Yoshihisa Abe and   
            Roxana Geambasu and   
             Kaustubh Joshi and   
         Mahadev Satyanarayanan   Urgent Virtual Machine Eviction with
                                  Enlightened Post-Copy  . . . . . . . . . 51--64
                     Xin Xu and   
                  Bhavesh Davda   SRVM: Hypervisor Support for Live
                                  Migration with Passthrough SR-IOV
                                  Network Devices  . . . . . . . . . . . . 65--77
               Dan Williams and   
                  Yaohui Hu and   
            Umesh Deshpande and   
             Piush K. Sinha and   
                Nilton Bila and   
             Kartik Gopalan and   
                   Hani Jamjoom   Enabling Efficient
                                  Hypervisor-as-a-Service Clouds with
                                  Ephemeral Virtualization . . . . . . . . 79--92
              Anton Burtsev and   
              David Johnson and   
                Mike Hibler and   
                  Eric Eide and   
                    John Regehr   Abstractions for Practical Virtual
                                  Machine Replay . . . . . . . . . . . . . 93--106
            Kathryn S. McKinley   Next Generation Virtual Memory
                                  Management . . . . . . . . . . . . . . . 107--107
                Junjie Qian and   
           Witawas Srisa-an and   
                Sharad Seth and   
                 Hong Jiang and   
                      Du Li and   
                         Pan Yi   Exploiting FIFO Scheduler to Improve
                                  Parallel Garbage Collection Performance  109--121
                    Yang Yu and   
               Tianyang Lei and   
               Weihua Zhang and   
                 Haibo Chen and   
                     Binyu Zang   Performance Analysis and Optimization of
                                  Full Garbage Collection in Memory-hungry
                                  Environments . . . . . . . . . . . . . . 123--130
              Rebecca Smith and   
                   Scott Rixner   Leveraging Managed Runtime Systems to
                                  Build, Analyze, and Optimize Memory
                                  Graphs . . . . . . . . . . . . . . . . . 131--143
            Muli Ben-Yehuda and   
      Orna Agmon Ben-Yehuda and   
                    Dan Tsafrir   The nom Profit-Maximizing Operating
                                  System . . . . . . . . . . . . . . . . . 145--160
               Kyle C. Hale and   
                 Peter A. Dinda   Enabling Hybrid Parallel Runtimes
                                  Through Kernel and Virtualization
                                  Support  . . . . . . . . . . . . . . . . 161--175
           Carl Waldspurger and   
               Emery Berger and   
     Abhishek Bhattacharjee and   
             Kevin Pedretti and   
                Simon Peter and   
                 Chris Rossbach   Sweet Spots and Limits for
                                  Virtualization . . . . . . . . . . . . . 177--177


ACM SIG{}PLAN Notices
Volume 52, Number 7, July, 2017

                  Vlad Nitu and   
             Pierre Olivier and   
               Alain Tchana and   
               Daniel Chiba and   
          Antonio Barbalace and   
            Daniel Hagimont and   
                Binoy Ravindran   Swift Birth and Quick Death: Enabling
                                  Fast Parallel Guest Boot and Destruction
                                  in the Xen Hypervisor  . . . . . . . . . 1--14
              Simon Kuenzer and   
               Anton Ivanov and   
               Filipe Manco and   
                Jose Mendes and   
              Yuri Volchkov and   
            Florian Schmidt and   
           Kenichi Yasukata and   
               Michio Honda and   
                   Felipe Huici   Unikernels Everywhere: The Case for
                                  Elastic CDNs . . . . . . . . . . . . . . 15--29
               Jinshi Zhang and   
                 Eddie Dong and   
                    Jian Li and   
                   Haibing Guan   MigVisor: Accurate Prediction of VM Live
                                  Migration Behavior using a Working-Set
                                  Pattern Model  . . . . . . . . . . . . . 30--43
                Anshuj Garg and   
           Debadatta Mishra and   
           Purushottam Kulkarni   Catalyst: GPU-assisted rapid memory
                                  deduplication in virtualization
                                  environments . . . . . . . . . . . . . . 44--59
                Juan Fumero and   
             Michel Steuwer and   
              Lukas Stadler and   
              Christophe Dubach   Just-In-Time GPU Compilation for
                                  Interpreted Languages with Partial
                                  Evaluation . . . . . . . . . . . . . . . 60--73
        Christos Kotselidis and   
             James Clarkson and   
           Andrey Rodchenko and   
                Andy Nisbet and   
                 John Mawer and   
             Mikel Luján   Heterogeneous Managed Runtime Systems: a
                                  Computer Vision Case Study . . . . . . . 74--82
                 Liang Deng and   
                   Peng Liu and   
                     Jun Xu and   
                  Ping Chen and   
                   Qingkai Zeng   Dancing with Wolves: Towards Practical
                                  Event-driven VMM Monitoring  . . . . . . 83--96
               Sahil Suneja and   
             Ricardo Koller and   
               Canturk Isci and   
               Eyal de Lara and   
                Ali Hashemi and   
      Arnamoy Bhattacharyya and   
                 Cristiana Amza   Safe Inspection of Live Virtual Machines 97--111
                Leo Arulraj and   
   Andrea C. Arpaci-Dusseau and   
        Remzi H. Arpaci-Dusseau   Improving Virtualized Storage
                                  Performance with Sky . . . . . . . . . . 112--128
          Felicitas Hetzelt and   
                  Robert Buhren   Security Analysis of Encrypted Virtual
                                  Machines . . . . . . . . . . . . . . . . 129--142
                   Zhe Wang and   
               Chenggang Wu and   
                 Jianjun Li and   
               Yuanming Lai and   
              Xiangyu Zhang and   
              Wei-Chung Hsu and   
                 Yueqiang Cheng   ReRanz: a Light-Weight Virtual Machine
                                  to Mitigate Memory Disclosure Attacks    143--156
         Zachary J. Estrada and   
              Read Sprabery and   
                    Lok Yan and   
                Zhongzhi Yu and   
               Roy Campbell and   
        Zbigniew Kalbarczyk and   
            Ravishankar K. Iyer   Using OS Design Patterns to Provide
                                  Reliability and Security as-a-Service
                                  for VM-based Clouds  . . . . . . . . . . 157--170
              Ahmed Hussein and   
              Mathias Payer and   
          Antony L. Hosking and   
                     Chris Vick   One Process to Reap Them All: Garbage
                                  Collection as-a-Service  . . . . . . . . 171--186
                  Jie Zhang and   
                  Xiaoyi Lu and   
      Dhabaleswar K. (DK) Panda   Designing Locality and NUMA Aware MPI
                                  Runtime for Nested Virtualization based
                                  HPC Cloud with SR--IOV Enabled
                                  InfiniBand . . . . . . . . . . . . . . . 187--200
                     Kai Lu and   
               Wenzhe Zhang and   
              Xiaoping Wang and   
         Mikel Luján and   
                    Andy Nisbet   Flexible Page-level Memory Access
                                  Monitoring Based on Virtualization
                                  Hardware . . . . . . . . . . . . . . . . 201--213
                  Chun Yang and   
                Xianhua Liu and   
                       Xu Cheng   Content Look-Aside Buffer for
                                  Redundancy-Free Virtual Disk I/O and
                                  Caching  . . . . . . . . . . . . . . . . 214--227
           Amanieu d'Antras and   
            Cosmin Gorgovan and   
                Jim Garside and   
              John Goodacre and   
             Mikel Luján   HyperMAMBO-X64: Using Virtualization to
                                  Support High-Performance Transparent
                                  Binary Translation . . . . . . . . . . . 228--241
                    Min Zhu and   
                    Bibo Tu and   
                    Wei Wei and   
                       Dan Meng   HA-VMSI: a Lightweight Virtual Machine
                                  Isolation Approach with Commodity
                                  Hardware for ARM . . . . . . . . . . . . 242--256

ACM SIG{}PLAN Notices
Volume 52, Number 8, August, 2017

             Guy L. Steele, Jr.   It's Time for a New Old Language . . . . 1--1
               Guoyang Chen and   
                   Yue Zhao and   
                Xipeng Shen and   
                   Huiyang Zhou   EffiSha: a Software Framework for
                                  Enabling Efficient Preemptive Scheduling
                                  of GPU . . . . . . . . . . . . . . . . . 3--16
             Nachshon Cohen and   
                   Arie Tal and   
                   Erez Petrank   Layout Lock: a Scalable Locking Paradigm
                                  for Concurrent Data Layout Modifications 17--29
               Xiuxia Zhang and   
              Guangming Tan and   
              Shuangbai Xue and   
                  Jiajia Li and   
                 Keren Zhou and   
                    Mingyu Chen   Understanding the GPU Microarchitecture
                                  to Achieve Bare-Metal Performance Tuning 31--43
                 Peizhao Ou and   
                   Brian Demsky   Checking Concurrent Data Structures
                                  Under the C/C++11 Memory Model . . . . . 45--59
              Milind Chabbi and   
            Abdelhalim Amer and   
                 Shasha Wen and   
                         Xu Liu   An Efficient Abortable-locking Protocol
                                  for Multi-level NUMA Systems . . . . . . 61--74
               Umut A. Acar and   
            Naama Ben-David and   
                    Mike Rainey   Contention in Structured Concurrency:
                                  Provably Efficient Dynamic Non-Zero
                                  Indicators for Nested Parallelism  . . . 75--88
                 Kento Sato and   
                Dong H. Ahn and   
             Ignacio Laguna and   
             Gregory L. Lee and   
              Martin Schulz and   
       Christopher M. Chambreau   Noise Injection Techniques to Expose
                                  Subtle and Unintended Message Races  . . 89--101
                    Hao Luo and   
               Pengcheng Li and   
                      Chen Ding   Thread Data Sharing in Cache: Theory and
                                  Measurement  . . . . . . . . . . . . . . 103--115
                    Bin Ren and   
      Sriram Krishnamoorthy and   
              Kunal Agrawal and   
                Milind Kulkarni   Exploiting Vector and Multicore
                                  Parallelism for Recursive, Data- and
                                  Task-Parallel Programs . . . . . . . . . 117--130
             Sergei Shudler and   
         Alexandru Calotoiu and   
            Torsten Hoefler and   
                     Felix Wolf   Isoefficiency in Practice: Configuring
                                  and Understanding the Performance of
                                  Task-based Applications  . . . . . . . . 131--143
           Robert Utterback and   
              Kunal Agrawal and   
        I-Ting Angelina Lee and   
                Milind Kulkarni   Processor-Oblivious Record and Replay    145--161
           Nirmal Prajapati and   
          Waruna Ranasinghe and   
          Sanjay Rajopadhye and   
              Rumen Andonov and   
             Hristo Djidjev and   
                 Tobias Grosser   Simple, Accurate, Analytical Time
                                  Modeling and Optimal Tile Size Selection
                                  for GPGPU Stencils . . . . . . . . . . . 163--177
                 Peng Jiang and   
                  Gagan Agrawal   Combining SIMD and Many/Multi-core
                                  Parallelism for Finite State Machines
                                  with Enumerative Speculation . . . . . . 179--191
           Ammar Ahmad Awan and   
          Khaled Hamidouche and   
    Jahanzeb Maqbool Hashmi and   
           Dhabaleswar K. Panda   S-Caffe: Co-designing MPI Runtimes and
                                  Caffe for Scalable Deep Learning on
                                  Modern GPU Clusters  . . . . . . . . . . 193--205
                 Amit Sabne and   
                  Xiao Wang and   
          Sherman J. Kisner and   
          Charles A. Bouman and   
          Anand Raghunathan and   
              Samuel P. Midkiff   Model-based Iterative CT Image
                                  Reconstruction on GPUs . . . . . . . . . 207--220
              Tsung Tai Yeh and   
                 Amit Sabne and   
           Putt Sakdhnagool and   
           Rudolf Eigenmann and   
              Timothy G. Rogers   Pagoda: Fine-Grained GPU Resource
                                  Virtualization for Narrow Tasks  . . . . 221--234
                Tal Ben-Nun and   
             Michael Sutton and   
              Sreepathi Pai and   
                 Keshav Pingali   Groute: an Asynchronous Multi-GPU
                                  Programming Model for Irregular
                                  Computations . . . . . . . . . . . . . . 235--248
             Tao B. Schardl and   
           William S. Moses and   
           Charles E. Leiserson   Tapir: Embedding Fork-Join Parallelism
                                  into LLVM's Intermediate Representation  249--265
          Alexander Matveev and   
           Yaron Meirovitch and   
            Hayk Saribekyan and   
            Wiktor Jakubiuk and   
                  Tim Kaler and   
               Gergely Odor and   
               David Budden and   
        Aleksandar Zlateski and   
                     Nir Shavit   A Multicore Path to
                                  Connectomics-on-Demand . . . . . . . . . 267--281
            Michael Vollmer and   
              Ryan G. Scott and   
         Madanlal Musuvathi and   
                 Ryan R. Newton   SC-Haskell: Sequential Consistency in
                                  Languages That Minimize Mutable Shared
                                  Heap . . . . . . . . . . . . . . . . . . 283--298
         Martin Bättig and   
                Thomas R. Gross   Synchronized-by-Default Concurrency for
                                  Shared-Memory Systems  . . . . . . . . . 299--312
       Rubens E. A. Moreira and   
           Sylvain Collange and   
Fernando Magno Quintão Pereira   Function Call Re-Vectorization . . . . . 313--326
         Samyam Rajbhandari and   
           Fabrice Rastello and   
             Karol Kowalski and   
      Sriram Krishnamoorthy and   
                  P. Sadayappan   Optimizing the Four-Index Integral
                                  Transform Using Data Movement Lower
                                  Bounds Analysis  . . . . . . . . . . . . 327--340
         Guy L. Steele, Jr. and   
          Jean-Baptiste Tristan   Using Butterfly-Patterned Partial Sums
                                  to Draw from Discrete Distributions  . . 341--355
               Dmitry Basin and   
           Edward Bortnikov and   
        Anastasia Braginsky and   
            Guy Golan-Gueta and   
              Eshcar Hillel and   
                Idit Keidar and   
                   Moshe Sulamy   KiWi: a Key--Value Map for Scalable
                                  Real-Time Analytics  . . . . . . . . . . 357--369
                  Lin Jiang and   
                    Zhijia Zhao   Grammar-aware Parallelization for
                                  Scalable XPath Querying  . . . . . . . . 371--383
                   Xin Wang and   
               Weihua Zhang and   
               Zhaoguo Wang and   
                  Ziyun Wei and   
                 Haibo Chen and   
                    Wenyun Zhao   Eunomia: Scaling Concurrent Search Trees
                                  under Contention Using HTM . . . . . . . 385--399
             Xiongchao Tang and   
                Jidong Zhai and   
                   Bowen Yu and   
              Wenguang Chen and   
                   Weimin Zheng   Self-Checkpoint: an In-Memory Checkpoint
                                  Method Using Less Space and Its Practice
                                  on Fault-Tolerant HPL  . . . . . . . . . 401--413
                  Panruo Wu and   
        Nathan DeBardeleben and   
                 Qiang Guan and   
             Sean Blanchard and   
               Jieyang Chen and   
                Dingwen Tao and   
                  Xin Liang and   
             Kaiming Ouyang and   
                   Zizhong Chen   Silent Data Corruption Resilient
                                  Two-sided Matrix Factorizations  . . . . 415--427
           Maya Arbel-Raviv and   
                   Trevor Brown   Poster: Reuse, don't Recycle:
                                  Transforming Algorithms that Throw Away
                                  Descriptors  . . . . . . . . . . . . . . 429--430
             Vignesh Balaji and   
            Dhruva Tirumala and   
                  Brandon Lucia   Poster: an Architecture and Programming
                                  Model for Accelerating Parallel
                                  Commutative Computations via
                                  Privatization  . . . . . . . . . . . . . 431--432
      Arnamoy Bhattacharyya and   
              Mike Dai Wang and   
               Mihai Burcea and   
                    Yi Ding and   
                 Allen Deng and   
              Sai Varikooty and   
            Shafaaf Hossain and   
                 Cristiana Amza   Poster: HythTM: Extending the
                                  Applicability of Intel TSX Hardware
                                  Transactional Support  . . . . . . . . . 433--434
           Rezaul Chowdhury and   
           Pramod Ganapathi and   
                  Yuan Tang and   
             Jesmin Jahan Tithi   Poster: Provably Efficient Scheduling of
                                  Cache-Oblivious Wavefront Algorithms . . 435--436
             Nachshon Cohen and   
            Maurice Herlihy and   
               Erez Petrank and   
                     Elias Wald   Poster: State Teleportation via Hardware
                                  Transactional Memory . . . . . . . . . . 437--438
                   Dong Dai and   
                  Wei Zhang and   
                      Yong Chen   Poster: IOGP: an Incremental Online
                                  Graph Partitioning for Large-Scale
                                  Distributed Graph Databases  . . . . . . 439--440
        Jesun Shariar Firoz and   
     Thejaka Amila Kanewala and   
            Marcin Zalewski and   
             Martina Barnas and   
               Andrew Lumsdaine   Poster: Distributed Control: The
                                  Benefits of Eliminating Global
                                  Synchronization via Effective Scheduling 441--442
                 Gangwon Jo and   
               Jaehoon Jung and   
               Jiyoung Park and   
                     Jaejin Lee   Poster: MAPA: an Automatic Memory Access
                                  Pattern Analyzer for GPU Applications    443--444
                 Shigang Li and   
              Yunquan Zhang and   
                Torsten Hoefler   Poster: Cache-Oblivious MPI All-to-All
                                  Communications on Many-Core
                                  Architectures  . . . . . . . . . . . . . 445--446
            Harshitha Menon and   
       Kavitha Chandrasekar and   
              Laxmikant V. Kale   Poster: Automated Load Balancer
                                  Selection Based on Application
                                  Characteristics  . . . . . . . . . . . . 447--448
            Nurit Moscovici and   
             Nachshon Cohen and   
                   Erez Petrank   Poster: a GPU-Friendly Skiplist
                                  Algorithm  . . . . . . . . . . . . . . . 449--450
            Pedro Ramalhete and   
                Andreia Correia   Poster: Poor Man's URCU  . . . . . . . . 451--452
            Pedro Ramalhete and   
                Andreia Correia   Poster: a Wait-Free Queue with Wait-Free
                                  Memory Reclamation . . . . . . . . . . . 453--454
                  Yuan Tang and   
                    Ronghui You   Poster: STAR (Space-Time Adaptive and
                                  Reductive) Algorithms for Real-World
                                  Space-Time Optimality  . . . . . . . . . 455--456
                  Mingyu Wu and   
               Haibing Guan and   
                 Binyu Zang and   
                     Haibo Chen   Poster: Recovering Performance for
                                  Vector-based Machine Learning on Managed
                                  Runtime  . . . . . . . . . . . . . . . . 457--458
               Minjia Zhang and   
           Swarnendu Biswas and   
                Michael D. Bond   Poster: On the Problem of Consistency
                                  Exceptions in the Context of Strong
                                  Memory Models  . . . . . . . . . . . . . 459--460
                   Yue Zhao and   
               Chunhua Liao and   
                    Xipeng Shen   Poster: an Infrastructure for HPC
                                  Knowledge Sharing and Reuse  . . . . . . 461--462

ACM SIG{}PLAN Notices
Volume 52, Number 9, September, 2017

                    Xipeng Shen   Bridging the gap between memory
                                  performance and massive parallelism: the
                                  critical role of programming systems
                                  innovations (keynote)  . . . . . . . . . 1--1
              Rodrigo Bruno and   
Luís Picciochi Oliveira and   
                 Paulo Ferreira   NG2C: pretenuring garbage collection
                                  with dynamic generations for HotSpot big
                                  data applications  . . . . . . . . . . . 2--13
        Albert Mingkun Yang and   
                Tobias Wrigstad   Type-assisted automatic garbage
                                  collection for lock-free data structures 14--24
                Nick Vrvilo and   
                  Lechen Yu and   
                   Vivek Sarkar   A marshalled data format for pointers in
                                  relocatable data blocks  . . . . . . . . 25--35
              Zhengyang Liu and   
                  John Criswell   Flexible and efficient memory object
                                  metadata . . . . . . . . . . . . . . . . 36--46
        Kostyantyn Vorobyov and   
            Julien Signoles and   
               Nikolai Kosmatov   Shadow state encoding for efficient
                                  monitoring of block-level properties . . 47--58
            Mohammad Dashti and   
             Alexandra Fedorova   Analyzing memory management methods on
                                  integrated CPU--GPU systems  . . . . . . 59--69
                Ellis Giles and   
              Kshitij Doshi and   
                   Peter Varman   Continuous checkpointing of HTM
                                  transactions in NVM  . . . . . . . . . . 70--81
                Ivy Bo Peng and   
            Roberto Gioiosa and   
              Gokcen Kestor and   
             Pietro Cicotti and   
                Erwin Laure and   
               Stefano Markidis   RTHMS: a tool for data placement on
                                  hybrid memory system . . . . . . . . . . 82--91
                Vini Kanvar and   
                Uday P. Khedker   ``What's in a name?'' going beyond
                                  allocation site names in heap analysis   92--103
                   Bin Fang and   
             Mihaela Sighireanu   A refinement hierarchy for free list
                                  memory allocators  . . . . . . . . . . . 104--114
               Minjia Zhang and   
           Swarnendu Biswas and   
                Michael D. Bond   Avoiding consistency exceptions under
                                  strong memory models . . . . . . . . . . 115--127

ACM SIG{}PLAN Notices
Volume 52, Number 10, October, 2017

             Didier Rémy   Ornaments: exploiting parametricity for
                                  safer, more automated code
                                  refactorization and code reuse (invited
                                  talk)  . . . . . . . . . . . . . . . . . 1--1
                  Andrey Mokhov   Algebraic graphs with class (functional
                                  pearl) . . . . . . . . . . . . . . . . . 2--13
           Mario Blazevi\'c and   
   Jacques Légaré   Packrats parse in packs  . . . . . . . . 14--25
      Leonidas Lampropoulos and   
      Antal Spector-Zabusky and   
                  Kenneth Foner   Ode on a random urn (functional pearl)   26--37
         Maximilian Algehed and   
              Koen Claessen and   
              Moa Johansson and   
                 Nick Smallbone   QuickSpec: a lightweight theory
                                  exploration tool for programmers (system
                                  demonstration) . . . . . . . . . . . . . 38--39
            Rudy Braquehais and   
                 Colin Runciman   Speculate: discovering conditional
                                  equations and inequalities about
                                  black-box functions by reasoning from
                                  test results . . . . . . . . . . . . . . 40--51
               John Wiegley and   
              Benjamin Delaware   Using Coq to write fast and correct
                                  Haskell  . . . . . . . . . . . . . . . . 52--62
                 Niki Vazou and   
      Leonidas Lampropoulos and   
                   Jeff Polakow   A tale of two provers: verifying
                                  monoidal string matching in liquid
                                  Haskell and Coq  . . . . . . . . . . . . 63--74
                   Anton Ekblad   A meta-EDSL for distributed web
                                  applications . . . . . . . . . . . . . . 75--85
              Justin Dawson and   
                 Mark Grebe and   
                      Andy Gill   Composable network stacks and remote
                                  monads . . . . . . . . . . . . . . . . . 86--97
                    Donya Quick   Algorithmic music in Haskell (invited
                                  talk)  . . . . . . . . . . . . . . . . . 98--98
       Dmitrij Szamozvancev and   
                Michael B. Gale   Well-typed music does not sound wrong
                                  (experience report)  . . . . . . . . . . 99--104
                     Ivan Perez   Back to the future: time travel in FRP   105--116
            Jennifer Paykin and   
                Steve Zdancewic   The Linearity Monad  . . . . . . . . . . 117--132
       Georgios Karachalias and   
                 Tom Schrijvers   Elaboration on functional dependencies:
                                  functional dependencies are dead, long
                                  live functional dependencies!  . . . . . 133--147
             Gert-Jan Bottu and   
       Georgios Karachalias and   
             Tom Schrijvers and   
    Bruno C. d. S. Oliveira and   
                  Philip Wadler   Quantified class constraints . . . . . . 148--161
            Markus Aronsson and   
                   Mary Sheeran   Hardware software co-design in Haskell   162--173
     Robert Clifton-Everest and   
         Trevor L. McDonell and   
   Manuel M. T. Chakravarty and   
                Gabriele Keller   Streaming irregular arrays . . . . . . . 174--185
                 Ryan Yates and   
               Michael L. Scott   Improving STM performance with
                                  transactional structs  . . . . . . . . . 186--196
             Chao-Hong Chen and   
         Vikraman Choudhury and   
                 Ryan R. Newton   Adaptive lock-free data structures in
                                  Haskell: a general method for concurrent
                                  implementation swapping  . . . . . . . . 197--211

ACM SIG{}PLAN Notices
Volume 52, Number 11, November, 2017

                    Filip Pizlo   The JavaScriptCore virtual machine
                                  (invited talk) . . . . . . . . . . . . . 1--1
                    Jeremy Siek   Challenges and progress toward efficient
                                  gradual typing (invited talk)  . . . . . 2--2
                Stefan Marr and   
        Carmen Torres Lopez and   
             Dominik Aumayr and   
        Elisa Gonzalez Boix and   
 Hanspeter Mössenböck   A concurrency-agnostic protocol for
                                  multi-paradigm concurrent debugging
                                  tools  . . . . . . . . . . . . . . . . . 3--14
                David Ungar and   
                David Grove and   
                Hubertus Franke   Dynamic atomicity: optimizing swift
                                  memory management  . . . . . . . . . . . 15--26
          Alejandro Infante and   
               Alexandre Bergel   Object equivalence: revisiting object
                                  equality profiling (an experience
                                  report)  . . . . . . . . . . . . . . . . 27--38
        Javier Pimás and   
             Javier Burroni and   
       Jean Baptiste Arnaud and   
                    Stefan Marr   Garbage collection and efficiency in
                                  dynamic metacircular runtimes: an
                                  experience report  . . . . . . . . . . . 39--50
          Matthew C. Loring and   
                Mark Marron and   
                    Daan Leijen   Semantics of asynchronous JavaScript . . 51--62
                 Vlad Vergu and   
             Michiel Haisma and   
                   Eelco Visser   The semantics of name resolution in
                                  Grace  . . . . . . . . . . . . . . . . . 63--74
           Mallku Soldevila and   
               Beta Ziliani and   
            Bruno Silvestre and   
          Daniel Fridlender and   
              Fabio Mascarenhas   Decoding Lua: formal semantics for the
                                  developer and the semanticist  . . . . . 75--86

ACM SIG{}PLAN Notices
Volume 52, Number 12, December, 2017

                      Danny Dig   The landscape of refactoring research in
                                  the last decade (keynote)  . . . . . . . 1--1
                     Rui Ge and   
                  Ronald Garcia   Refining semantics for multi-stage
                                  programming  . . . . . . . . . . . . . . 2--14
             Georg Ofenbeck and   
                Tiark Rompf and   
            Markus Püschel   Staging for generic programming in space
                                  and time . . . . . . . . . . . . . . . . 15--28
               Junpei Oishi and   
             Yukiyoshi Kameyama   Staging with control: type-safe
                                  multi-stage programming with control
                                  operators  . . . . . . . . . . . . . . . 29--40
              Ludovic Court\`es   Code staging in GNU Guix . . . . . . . . 41--48
            Lukas Linsbauer and   
            Thorsten Berger and   
           Paul Grünbacher   A classification of variation control
                                  systems  . . . . . . . . . . . . . . . . 49--62
  Raúl Lapeña and   
                 Jaime Font and   
        Óscar Pastor and   
                  Carlos Cetina   Analyzing the impact of natural language
                                  processing over feature location in
                                  models . . . . . . . . . . . . . . . . . 63--76
             Wolfram Fenske and   
             Sandro Schulze and   
                   Gunter Saake   How preprocessor annotations (do not)
                                  affect maintainability: a case study on
                                  change-proneness . . . . . . . . . . . . 77--90
             Travis Carlson and   
                   Eric Van Wyk   Type qualifiers as composable language
                                  extensions . . . . . . . . . . . . . . . 91--103
              Andrea Ros\`a and   
            Eduardo Rosales and   
                  Walter Binder   Accurate reification of complete
                                  supertype information for dynamic
                                  analysis on the JVM  . . . . . . . . . . 104--116
                David J. Pearce   Rewriting for sound and complete union,
                                  intersection and negation types  . . . . 117--130
            Lionel Parreaux and   
              Amir Shaikhha and   
              Christoph E. Koch   Quoted staged rewriting: a practical
                                  approach to library-defined
                                  optimizations  . . . . . . . . . . . . . 131--145
            Joseph Caldwell and   
                  Shigeru Chiba   Reducing calling convention overhead in
                                  object-oriented programming on embedded
                                  ARM Thumb-2 platforms  . . . . . . . . . 146--156
Ars\`ene Pérard-Gayot and   
               Martin Weier and   
           Richard Membarth and   
          Philipp Slusallek and   
         Roland Leißa and   
                 Sebastian Hack   RaTrace: simple and efficient
                                  abstractions for BVH ray traversal
                                  algorithms . . . . . . . . . . . . . . . 157--168
             Adilla Susungi and   
             Norman A. Rink and   
Jerónimo Castrillón and   
              Immo Huismann and   
               Albert Cohen and   
             Claude Tadonki and   
          Jörg Stiller and   
           Jochen Fröhlich   Towards compositional and generative
                                  tensor optimizations . . . . . . . . . . 169--175
         Jafar M. Al-Kofahi and   
             Suresh Kothari and   
         Christian Kästner   Four languages and lots of macros:
                                  analyzing autotools build systems  . . . 176--186
         Leonardo Fernandes and   
      Márcio Ribeiro and   
              Luiz Carvalho and   
                Rohit Gheyi and   
            Melina Mongiovi and   
        André Santos and   
             Ana Cavalcanti and   
            Fabiano Ferrari and   
   José Carlos Maldonado   Avoiding useless mutants . . . . . . . . 187--198
            Tomoki Nakamaru and   
          Kazuhiro Ichikawa and   
           Tetsuro Yamazaki and   
                  Shigeru Chiba   Silverchain: a fluent API generator  . . 199--211
                  Vadim Zaytsev   Parser generation by example for legacy
                                  pattern languages  . . . . . . . . . . . 212--218
          Geoffrey Mainland and   
                 Jeremy Johnson   A Haskell compiler for signal transforms 219--232
   Ricardo Giuliani Martini and   
         Pedro Rangel Henriques   Automatic generation of virtual learning
                                  spaces driven by CaVa DSL: an experience
                                  report . . . . . . . . . . . . . . . . . 233--245
                 Mark Grebe and   
                David Young and   
                      Andy Gill   Rewriting a shallow DSL using a GHC
                                  compiler extension . . . . . . . . . . . 246--258


ACM SIG{}PLAN Notices
Volume 53, Number 1, January, 2018

                 Haosen Wen and   
         Joseph Izraelevitz and   
                 Wentao Cai and   
             H. Alan Beadle and   
               Michael L. Scott   Interval-based memory reclamation  . . . 1--13
           Maya Arbel-Raviv and   
                   Trevor Brown   Harnessing epoch-based reclamation for
                                  efficient range queries  . . . . . . . . 14--27
            Michal Friedman and   
            Maurice Herlihy and   
           Virendra Marathe and   
                   Erez Petrank   A persistent lock-free queue for
                                  non-volatile memory  . . . . . . . . . . 28--40
                Linnan Wang and   
                 Jinmian Ye and   
                Yiyang Zhao and   
                     Wei Wu and   
                     Ang Li and   
         Shuaiwen Leon Song and   
                 Zenglin Xu and   
                     Tim Kraska   Superneurons: dynamic GPU memory
                                  management for training deep neural
                                  networks . . . . . . . . . . . . . . . . 41--53
       Mehmet E. Belviranli and   
                 Seyong Lee and   
          Jeffrey S. Vetter and   
                Laxmi N. Bhuyan   Juggler: a dependence-aware task-based
                                  execution framework for GPUs . . . . . . 54--67
           Maria Kotsifakou and   
         Prakalp Srivastava and   
        Matthew D. Sinclair and   
         Rakesh Komuravelli and   
                Vikram Adve and   
                    Sarita Adve   HPVM: heterogeneous parallel virtual
                                  machine  . . . . . . . . . . . . . . . . 68--80
              Adrien Guatto and   
               Sam Westrick and   
            Ram Raghunathan and   
                  Umut Acar and   
                  Matthew Fluet   Hierarchical memory management for
                                  mutable state  . . . . . . . . . . . . . 81--93
                   Yue Zhao and   
                  Jiajia Li and   
               Chunhua Liao and   
                    Xipeng Shen   Bridging the gap between deep learning
                                  and sparse matrix format selection . . . 94--108
                   Zhen Jia and   
        Aleksandar Zlateski and   
               Fredo Durand and   
                         Kai Li   Optimizing $N$-dimensional,
                                  Winograd-based convolution for manycore
                                  CPUs . . . . . . . . . . . . . . . . . . 109--123
             Xiongchao Tang and   
                Jidong Zhai and   
                Xuehai Qian and   
               Bingsheng He and   
                    Wei Xue and   
                  Wenguang Chen   vSensor: leveraging fixed-workload
                                  snippets of programs for performance
                                  variance detection . . . . . . . . . . . 124--136
            Aleksandar Prokopec   Cache-tries: concurrent lock-free hash
                                  tries with constant-time operations  . . 137--151
              Milind Chabbi and   
                 Shasha Wen and   
                         Xu Liu   Featherlight on-the-fly false-sharing
                                  detection  . . . . . . . . . . . . . . . 152--167
       Prashant Singh Rawat and   
           Fabrice Rastello and   
    Aravind Sukumaran-Rajam and   
    Louis-Noël Pouchet and   
             Atanas Rountev and   
                  P. Sadayappan   Register optimizations for stencils on
                                  GPUs . . . . . . . . . . . . . . . . . . 168--182
                   Da Zheng and   
              Disa Mhembere and   
       Joshua T. Vogelstein and   
            Carey E. Priebe and   
                   Randal Burns   FlashR: parallelize and scale R for
                                  machine learning using SSDs  . . . . . . 183--194
            Harshitha Menon and   
                 Kathryn Mohror   DisCVar: discovering critical variables
                                  using algorithmic differentiation for
                                  transient faults . . . . . . . . . . . . 195--206
       Dana Drachsler-Cohen and   
              Martin Vechev and   
                     Eran Yahav   Practical concurrent traversals in
                                  search trees . . . . . . . . . . . . . . 207--218
           Lukas Gianinazzi and   
              Pavel Kalvoda and   
        Alessandro De Palma and   
               Maciej Besta and   
                Torsten Hoefler   Communication-avoiding parallel minimum
                                  cuts and connected components  . . . . . 219--232
               Artem Khyzha and   
               Hagit Attiya and   
             Alexey Gotsman and   
                  Noam Rinetzky   Safe privatization in transactional
                                  memory . . . . . . . . . . . . . . . . . 233--245
            Samuel Grossman and   
                Heiner Litz and   
             Christos Kozyrakis   Making pull-based graph processing
                                  performant . . . . . . . . . . . . . . . 246--260
             Abhinav Jangda and   
                Uday Bondhugula   An effective fusion and tile size model
                                  for optimizing image processing
                                  pipelines  . . . . . . . . . . . . . . . 261--275
                   Lei Wang and   
             Liangji Zhuang and   
               Junhang Chen and   
                 Huimin Cui and   
                    Fang Lv and   
                   Ying Liu and   
                  Xiaobing Feng   Lazygraph: lazy data coherency for
                                  replicas in distributed graph-parallel
                                  computation  . . . . . . . . . . . . . . 276--289
                  Yihan Sun and   
           Daniel Ferizovic and   
                 Guy E. Belloch   PAM: parallel augmented maps . . . . . . 290--304
                Zhouwang Fu and   
                   Tao Song and   
                Zhengwei Qi and   
                   Haibing Guan   Efficient shuffle management with SCache
                                  for DAG computing frameworks . . . . . . 305--316
                   Xueqi Li and   
              Guangming Tan and   
              Bingchen Wang and   
                    Ninghui Sun   High-performance genomic analysis
                                  framework with in-memory computing . . . 317--328
                   Yang Liu and   
               Jianguo Wang and   
                 Steven Swanson   Griffin: uniting CPU and GPU in
                                  information retrieval systems for
                                  intra-query parallelism  . . . . . . . . 327--337
              Xinliang Wang and   
                Weifeng Liu and   
                    Wei Xue and   
                          Li Wu   swSpTRSV: a fast sparse triangular solve
                                  with sparse level tile layout on Sunway
                                  architectures  . . . . . . . . . . . . . 338--353
            James R. Wilcox and   
            Cormac Flanagan and   
              Stephen N. Freund   VerifiedFT: a verified, high-performance
                                  precise dynamic race detector  . . . . . 354--367
                   Yifan Xu and   
        I-Ting Angelina Lee and   
                  Kunal Agrawal   Efficient parallel determinacy race
                                  detection for two-dimensional dags . . . 368--380
               Umut A. Acar and   
             Vitaly Aksenov and   
  Arthur Charguéraud and   
                    Mike Rainey   Performance challenges in modular
                                  parallel programs  . . . . . . . . . . . 381--382
               Mahwish Arif and   
            Hans Vandierendonck   Reducing the burden of parallel loop
                                  schedulers for many-core processors  . . 383--384
             Nachshon Cohen and   
               Erez Petrank and   
                 James R. Larus   Reducing transaction aborts by looking
                                  to the future  . . . . . . . . . . . . . 385--386
            Andreia Correia and   
                Pedro Ramalhete   Strong trylocks for reader-writer locks  387--388
                   Yao Dong and   
               Ana Milanova and   
                   Julian Dolby   SecureMR: secure mapreduce using
                                  homomorphic encryption and program
                                  partitioning . . . . . . . . . . . . . . 389--390
       Jesun Sahariar Firoz and   
            Marcin Zalewski and   
               Andrew Lumsdaine   A scalable distance-1 vertex coloring
                                  algorithm for power-law graphs . . . . . 391--392
               Koby Hayashi and   
               Grey Ballard and   
                Yujie Jiang and   
               Michael J. Tobia   Shared-memory parallelization of MTTKRP
                                  for dense tensors  . . . . . . . . . . . 393--394
                 Peng Jiang and   
                  Gagan Agrawal   Revealing parallel scans and reductions
                                  in sequential loops through function
                                  reconstruction . . . . . . . . . . . . . 395--396
              Changwan Hong and   
    Aravind Sukumaran-Rajam and   
                Jinsung Kim and   
       Prashant Singh Rawat and   
      Sriram Krishnamoorthy and   
    Louis-Noël Pouchet and   
           Fabrice Rastello and   
                  P. Sadayappan   Performance modeling for GPUs using
                                  abstract kernel emulation  . . . . . . . 397--398
             Herbert Jordan and   
            Bernhard Scholz and   
                  Pavle Subotic   Two concurrent data structures for
                                  efficient datalog query processing . . . 399--400
             Bernhard Kerbl and   
      Jörg Müller and   
             Michael Kenzel and   
         Dieter Schmalstieg and   
             Markus Steinberger   A scalable queue for work distribution
                                  on GPUs  . . . . . . . . . . . . . . . . 401--402
     Johannes de Fine Licht and   
             Michaela Blott and   
                Torsten Hoefler   Designing scalable FPGA architectures
                                  using high-level synthesis . . . . . . . 403--404
                     Bo Liu and   
               Wenbin Jiang and   
                    Hai Jin and   
                Xuanhua Shi and   
                        Yang Ma   Layrub: layer-centric GPU memory reuse
                                  and data migration in extreme-scale deep
                                  learning systems . . . . . . . . . . . . 405--406
                Junhong Liu and   
                     Xin He and   
                Weifeng Liu and   
                  Guangming Tan   Register-based implementation of the
                                  sparse general matrix--matrix
                                  multiplication on GPUs . . . . . . . . . 407--408
              Girish Mururu and   
            Ada Gavrilovska and   
                  Santosh Pande   Quantifying and reducing execution
                                  variance in STM via model driven commit
                                  optimization . . . . . . . . . . . . . . 409--410
                Jungho Park and   
               Hyungmin Cho and   
               Wookeun Jung and   
                     Jaejin Lee   Transparent GPU memory management for
                                  DNNs . . . . . . . . . . . . . . . . . . 411--412
          Manuel Pöter and   
      Jesper Larsson Träff   Stamp-it, amortized constant-time memory
                                  reclamation in comparison to five other
                                  schemes  . . . . . . . . . . . . . . . . 413--414
                Stefan Reif and   
Wolfgang Schröder-Preikschat   A predictable synchronisation algorithm  415--416
           Heinrich Riebler and   
                  Gavin Vaz and   
              Tobias Kenter and   
               Christian Plessl   Automated code acceleration targeting
                                  heterogeneous OpenCL devices . . . . . . 417--418
Isaac Sánchez Barrera and   
                 Marc Casas and   
       Miquel Moretó and   
      Eduard Ayguadé and   
       Jesús Labarta and   
                   Mateo Valero   Graph partitioning applied to DAG
                                  scheduling to reduce NUMA effects  . . . 419--420
                  Vasily Volkov   A microbenchmark to study GPU
                                  performance models . . . . . . . . . . . 421--422
                Tuowen Zhao and   
                  Mary Hall and   
               Protonu Basu and   
            Samuel Williams and   
                  Hans Johansen   SIMD code generation for stencils on
                                  brick decompositions . . . . . . . . . . 423--424

ACM SIG{}PLAN Notices
Volume 53, Number 2, February, 2018

              Daichi Fujiki and   
               Scott Mahlke and   
                 Reetuparna Das   In-Memory Data Parallel Processor  . . . 1--14
                 Jordan Fix and   
         Nayana P. Nagendra and   
        Sotiris Apostolakis and   
               Hansen Zhang and   
                 Sophie Qiu and   
                David I. August   Hardware Multithreaded Transactions  . . 15--29
               Rakesh Kumar and   
                 Boris Grot and   
                Vijay Nagarajan   Blasting through the Front-End
                                  Bottleneck with Shotgun  . . . . . . . . 30--42
               Maciej Besta and   
         Syed Minhaj Hassan and   
      Sudhakar Yalamanchili and   
    Rachata Ausavarungnirun and   
                 Onur Mutlu and   
                Torsten Hoefler   Slim NoC: a Low-Diameter On-Chip Network
                                  Topology for High Energy Efficiency and
                                  Scalability  . . . . . . . . . . . . . . 43--55
               Khanh Nguyen and   
                    Lu Fang and   
          Christian Navasca and   
                 Guoqing Xu and   
               Brian Demsky and   
                        Shan Lu   Skyway: Connecting Managed Heaps in
                                  Distributed Big Data Systems . . . . . . 56--69
                  Mingyu Wu and   
                Ziming Zhao and   
                   Haoyu Li and   
                  Heting Li and   
                 Haibo Chen and   
                 Binyu Zang and   
                   Haibing Guan   Espresso: Brewing Java For More
                                  Non-Volatility with Non-volatile Memory  70--83
                Wenwen Wang and   
           Stephen McCamant and   
               Antonia Zhai and   
                  Pen-Chung Yew   Enhancing Cross-ISA DBT Through
                                  Automatically Learned Translation Rules  84--97
      Sumanaruban Rajadurai and   
            Jeffrey Bosboom and   
              Weng-Fai Wong and   
              Saman Amarasinghe   Gloss: Seamless Live Reconfiguration and
                                  Reoptimization of Stream Programs  . . . 98--112
                Hongil Yoon and   
           Jason Lowe-Power and   
               Gurindar S. Sohi   Filtering Translation Bandwidth with
                                  Virtual Caching  . . . . . . . . . . . . 113--127
             Sepideh Maleki and   
               Martin Burtscher   Automatic Hierarchical Parallelization
                                  of Linear Recurrences  . . . . . . . . . 128--138
            Philip Ginsbach and   
             Toomas Remmelg and   
             Michel Steuwer and   
                Bruno Bodin and   
          Christophe Dubach and   
          Michael F. P. O'Boyle   Automatic Matching of Legacy Code to
                                  Heterogeneous APIs: an Idiomatic
                                  Approach . . . . . . . . . . . . . . . . 139--153
                   Shu Wang and   
                     Chi Li and   
             Henry Hoffmann and   
                    Shan Lu and   
            William Sentosa and   
       Achmad Imam Kistijantoro   Understanding and Auto-Adjusting
                                  Performance-Sensitive Configurations . . 154--168
            Amir M. Rahmani and   
          Bryan Donyanavard and   
            Tiago Mück and   
             Kasra Moazzemi and   
               Axel Jantsch and   
                 Onur Mutlu and   
                     Nikil Dutt   SPECTR: Formal Supervisory Control and
                                  Coordination for Many-core Systems
                                  Resource Management  . . . . . . . . . . 169--183
              Nikita Mishra and   
                Connor Imes and   
           John D. Lafferty and   
                 Henry Hoffmann   CALOREE: Learning Control for
                                  Predictable Latency and Low Energy . . . 184--198
            Yatish Turakhia and   
              Gill Bejerano and   
               William J. Dally   Darwin: a Genomics Co-processor Provides
                                  up to $ 15 \, 000 \times $ Acceleration
                                  on Long Read Assembly  . . . . . . . . . 199--213
                    Yue Zha and   
                        Jing Li   Liquid Silicon-Monona: a Reconfigurable
                                  Memory-Oriented Computing Fabric with
                                  Scalable Multi-Context Support . . . . . 214--228
                Sara Achour and   
                  Martin Rinard   Time Dilation and Contraction for
                                  Programmable Analog Devices with Jaunt   229--242
                 Yuting Dai and   
                     Tao Li and   
                Benyong Liu and   
              Mingcong Song and   
                  Huixiang Chen   Exploiting Dynamic Thermal Energy
                                  Harvesting for Reusing in Smartphone
                                  with Mobile Applications . . . . . . . . 243--256
                Yongjian Hu and   
                 Iulian Neamtiu   Static Detection of Event-based Races in
                                  Android Apps . . . . . . . . . . . . . . 257--270
                Peizhen Guo and   
                      Wenjun Hu   Potluck: Cross-Application Approximate
                                  Deduplication for Computation-Intensive
                                  Mobile Applications  . . . . . . . . . . 271--284
              Frederic T. Chong   Quantum Computing is Getting Real:
                                  Architecture, PL, and OS Roles in
                                  Closing the Gap between Quantum
                                  Algorithms and Machines  . . . . . . . . 285--285
         Christian DeLozier and   
            Ariel Eizenberg and   
              Brandon Lucia and   
                Joseph Devietti   SOFRITAS: Serializable Ordering-Free
                                  Regions for Increasing Thread Atomicity
                                  Scalably . . . . . . . . . . . . . . . . 286--300
               Alex Markuze and   
               Igor Smolyar and   
              Adam Morrison and   
                    Dan Tsafrir   DAMN: Overhead-Free IOMMU Protection for
                                  Networking . . . . . . . . . . . . . . . 301--315
          Amirali Boroumand and   
              Saugata Ghose and   
               Youngsok Kim and   
    Rachata Ausavarungnirun and   
                  Eric Shiu and   
               Rahul Thakur and   
                Daehyun Kim and   
                Aki Kuusela and   
                Allan Knies and   
  Parthasarathy Ranganathan and   
                     Onur Mutlu   Google Workloads for Consumer Devices:
                                  Mitigating Data Movement Bottlenecks . . 316--331
                 Shasha Wen and   
                     Xu Liu and   
                 John Byrne and   
                  Milind Chabbi   Watching for Software Inefficiencies
                                  with Witch . . . . . . . . . . . . . . . 332--347
            David Devecsery and   
              Peter M. Chen and   
                Jason Flinn and   
            Satish Narayanasamy   Optimistic Hybrid Analysis: Accelerating
                                  Dynamic Analysis through Predicated
                                  Static Analysis  . . . . . . . . . . . . 348--362
                  Omer Katz and   
              Noam Rinetzky and   
                     Eran Yahav   Statistical Reconstruction of Class
                                  Hierarchies in Binaries  . . . . . . . . 363--376
              Manuel Rigger and   
              Roland Schatz and   
      René Mayrhofer and   
           Matthias Grimmer and   
 Hanspeter Mössenböck   Sulong, and Thanks for All the Bugs:
                                  Finding Errors in C Programs by
                                  Abstracting from the Native Execution
                                  Model  . . . . . . . . . . . . . . . . . 377--391
                Yaniv David and   
             Nimrod Partush and   
                     Eran Yahav   FirmUp: Precise Static Detection of
                                  Common Vulnerabilities in Firmware . . . 392--404
               Jade Alglave and   
               Luc Maranget and   
           Paul E. McKenney and   
               Andrea Parri and   
                     Alan Stern   Frightening Small Children and
                                  Disconcerting Grown-ups: Concurrency in
                                  the Linux Kernel . . . . . . . . . . . . 405--418
                Haopeng Liu and   
                    Xu Wang and   
                 Guangpu Li and   
                    Shan Lu and   
                    Feng Ye and   
                      Chen Tian   FCatch: Automatically Detecting
                                  Time-of-fault Bugs in Cloud Systems  . . 419--431
           Enrico A. Deiana and   
           Vincent St-Amour and   
             Peter A. Dinda and   
          Nikos Hardavellas and   
               Simone Campanoni   Unconventional Parallelization of
                                  Nondeterministic Applications  . . . . . 432--447
                      Yu Ji and   
               Youhui Zhang and   
              Wenguang Chen and   
                       Yuan Xie   Bridge the Gap between Neural Networks
                                  and Neuromorphic Hardware with a Neural
                                  Network Compiler . . . . . . . . . . . . 448--460
              Hyoukjun Kwon and   
            Ananda Samajdar and   
                 Tushar Krishna   MAERI: Enabling Flexible Dataflow
                                  Mapping over DNN Accelerators via
                                  Reconfigurable Interconnects . . . . . . 461--475
                 Ruizhe Cai and   
                     Ao Ren and   
                   Ning Liu and   
                Caiwen Ding and   
                 Luhao Wang and   
                Xuehai Qian and   
             Massoud Pedram and   
                    Yanzhi Wang   VIBNN: Hardware Acceleration of Bayesian
                                  Neural Networks  . . . . . . . . . . . . 476--488
       Mohammad Sadrosadati and   
    Amirhossein Mirhosseini and   
         Seyed Borna Ehsani and   
         Hamid Sarbazi-Azad and   
              Mario Drumond and   
              Babak Falsafi and   
    Rachata Ausavarungnirun and   
                     Onur Mutlu   LTRF: Enabling High-Capacity Register
                                  Files for GPUs via Hardware/Software
                                  Cooperative Register Prefetching . . . . 489--502
    Rachata Ausavarungnirun and   
               Vance Miller and   
            Joshua Landgraf and   
              Saugata Ghose and   
             Jayneel Gandhi and   
                 Adwait Jog and   
    Christopher J. Rossbach and   
                     Onur Mutlu   MASK: Redesigning the GPU Memory
                                  Hierarchy to Support Multi-Application
                                  Concurrency  . . . . . . . . . . . . . . 503--518
                 Zhihao Yao and   
                Zongheng Ma and   
               Yingtong Liu and   
         Ardalan Amiri Sani and   
     Aparna Chandramowlishwaran   Sugar: Secure GPU Acceleration in Web
                                  Browsers . . . . . . . . . . . . . . . . 519--534
             Chang-Hong Hsu and   
              Qingyuan Deng and   
                 Jason Mars and   
                   Lingjia Tang   SmoothOperator: Reducing Power
                                  Fragmentation and Improving Power
                                  Utilization in Large-scale Datacenters   535--548
                 Jaewon Lee and   
               Changkyu Kim and   
                    Kun Lin and   
                Liqun Cheng and   
           Rama Govindaraju and   
                    Jangwoo Kim   WSMeter: a Performance Evaluation
                                  Methodology for Google's Production
                                  Warehouse-Scale Computers  . . . . . . . 549--563
                  Zhibin Yu and   
               Zhendong Bei and   
                    Xuehai Qian   Datasize-Aware High Dimensional
                                  Configurations Auto-Tuning of In-Memory
                                  Cluster Computing  . . . . . . . . . . . 564--577
              Sam Ainsworth and   
               Timothy M. Jones   An Event-Triggered Programmable
                                  Prefetcher for Irregular Workloads . . . 578--592
                  Dan Zhang and   
                  Xiaoyu Ma and   
            Michael Thomson and   
                    Derek Chiou   Minnow: Lightweight Offload Engines for
                                  Worklist Management and
                                  Worklist-Directed Prefetching  . . . . . 593--607
             Mingxing Zhang and   
                 Yongwei Wu and   
                Youwei Zhuo and   
                Xuehai Qian and   
             Chengying Huan and   
                      Kang Chen   Wonderland: a Novel Abstraction-Based
                                  Out-Of-Core Graph Processing System  . . 608--621
  Amir Hossein Nodehi Sabet and   
                Junqiao Qiu and   
                    Zhijia Zhao   Tigr: Transforming Irregular Graphs for
                                  GPU-Friendly Graph Processing  . . . . . 622--636
              Swapnil Haria and   
               Mark D. Hill and   
               Michael M. Swift   Devirtualizing Memory in Heterogeneous
                                  Systems  . . . . . . . . . . . . . . . . 637--650
          Mohan Kumar Kumar and   
              Steffen Maass and   
           Sanidhya Kashyap and   
   Ján Veselý and   
                     Zi Yan and   
                 Taesoo Kim and   
     Abhishek Bhattacharjee and   
                 Tushar Krishna   LATR: Lazy Translation Coherence . . . . 651--664
            Meysam Taassori and   
                Ali Shafiee and   
         Rajeev Balasubramonian   VAULT: Reducing Paging Overheads in SGX
                                  with Efficient Integrity Verification
                                  Structures . . . . . . . . . . . . . . . 665--678
              Ashish Panwar and   
            Aravinda Prasad and   
                    K. Gopinath   Making Huge Pages Actually Useful  . . . 679--692
          Dmitry Evtyushkin and   
                 Ryan Riley and   
                   Nael CSE and   
           ECE Abu-Ghazaleh and   
               Dmitry Ponomarev   BranchScope: a New Side-Channel Attack
                                  on Directional Branch Predictor  . . . . 693--707
        Bernard Dickens III and   
          Haryadi S. Gunawi and   
           Ariel J. Feldman and   
                 Henry Hoffmann   StrongBox: Confidentiality, Integrity,
                                  and Performance using Stream Ciphers for
                                  Full Drive Encryption  . . . . . . . . . 708--721
               Casen Hunger and   
             Lluis Vilanova and   
    Charalampos Papamanthou and   
                Yoav Etsion and   
                   Mohit Tiwari   DATS --- Data Containers for Web
                                  Applications . . . . . . . . . . . . . . 722--736
             Stephen Mallon and   
            Vincent Gramoli and   
              Guillaume Jourjon   DLibOS: Performance and Protection with
                                  a Network-on-Chip  . . . . . . . . . . . 737--750
             Shih-Chieh Lin and   
                Yunqi Zhang and   
             Chang-Hong Hsu and   
                 Matt Skach and   
                Md E. Haque and   
               Lingjia Tang and   
                     Jason Mars   The Architectural Implications of
                                  Autonomous Driving: Constraints and
                                  Acceleration . . . . . . . . . . . . . . 751--766
               Alexei Colin and   
               Emily Ruppel and   
                  Brandon Lucia   A Reconfigurable Energy Storage
                                  Architecture for Energy-harvesting
                                  Devices  . . . . . . . . . . . . . . . . 767--781
                Kaisheng Ma and   
                 Xueqing Li and   
     Mahmut Taylan Kandemir and   
               Jack Sampson and   
    Vijaykrishnan Narayanan and   
                 Jinyang Li and   
                  Tongda Wu and   
                 Zhibo Wang and   
                Yongpan Liu and   
                       Yuan Xie   NEOFog: Nonvolatility-Exploiting
                                  Optimizations for Fog Computing  . . . . 782--796
           Andrea Lottarini and   
               Alex Ramirez and   
                Joel Coburn and   
              Martha A. Kim and   
  Parthasarathy Ranganathan and   
           Daniel Stodolsky and   
                  Mark Wachsler   vbench: Benchmarking Video Transcoding
                                  in the Cloud . . . . . . . . . . . . . . 797--809
                Steve Blackburn   Session details: Session 7B: Memory 2    ??
                    John Carter   Session details: Session 6B: Datacenters ??
                  John Criswell   Session details: Session 8A: Security
                                  and Protection . . . . . . . . . . . . . ??
                 Jayneel Gandhi   Session details: Session 6A: GPU 2 . . . ??
                  Hank Hoffmann   Session details: Session 5A: Concurrency
                                  and Parallelism  . . . . . . . . . . . . ??
                     Martha Kim   Session details: Session 7A: Irregular
                                  Apps and Graphs  . . . . . . . . . . . . ??
                    James Larus   Session details: Session 2B: Performance
                                  Management . . . . . . . . . . . . . . . ??
                   Dongyoon Lee   Session details: Session 3B: Mobile
                                  Applications . . . . . . . . . . . . . . ??
                        Lei Liu   Session details: Session 1B: Managed
                                  Runtimes and Dynamic Translation . . . . ??
                        Shan Lu   Session details: Session 4B: Program
                                  Analysis . . . . . . . . . . . . . . . . ??
            Satish Narayanasamy   Session details: Session 3A:
                                  Programmable Devices and Co-processors   ??
        Christopher J. Rossbach   Session details: Session 2A: GPUs 1  . . ??
                Adrian Sampson?   Session details: Session 5B Neural
                                  Networks . . . . . . . . . . . . . . . . ??
                    Yan Solihin   Session details: Session 8B: Potpourri   ??
                Josep Torrellas   Session details: Session 1A: New
                                  Architectures  . . . . . . . . . . . . . ??
                    Dan Tsafrir   Session details: Session 4A: Memory 1    ??

ACM SIG{}PLAN Notices
Volume 53, Number 3, March, 2018

               Kunshan Wang and   
       Stephen M. Blackburn and   
          Antony L. Hosking and   
                Michael Norrish   Hop, Skip, & Jump: Practical On-Stack
                                  Replacement for a Cross-Platform
                                  Language-Neutral VM  . . . . . . . . . . 1--16
                Wenwen Wang and   
                Jiacheng Wu and   
                Xiaoli Gong and   
                     Tao Li and   
                  Pen-Chung Yew   Improving Dynamically-Generated Code
                                  Performance on Dynamic Binary
                                  Translators  . . . . . . . . . . . . . . 17--30
                Jiacheng Ma and   
                 Xiao Zheng and   
                 Yaozu Dong and   
                  Wentai Li and   
                Zhengwei Qi and   
               Bingsheng He and   
                   Haibing Guan   gMig: Efficient GPU Live Migration
                                  Optimized by Software Dirty Page for
                                  Full Virtualization  . . . . . . . . . . 31--44
              Adam Ruprecht and   
                Danny Jones and   
             Dmitry Shiraev and   
                Greg Harmon and   
                Maya Spivak and   
              Michael Krebs and   
         Miche Baker-Harvey and   
                Tyler Sanderson   VM Live Migration At Scale . . . . . . . 45--56
                      Yu Xu and   
                Jianguo Yao and   
                 Yaozu Dong and   
                   Kun Tian and   
                 Xiao Zheng and   
                   Haibing Guan   Demon: an Efficient Solution for
                                  on-Device MMU Virtualization in Mediated
                                  Pass-Through . . . . . . . . . . . . . . 57--70
                Qiuchen Yan and   
               Stephen McCamant   Fast PokeEMU: Scaling Generated
                                  Instruction Tests Using Aggregation and
                                  State Chaining . . . . . . . . . . . . . 71--83
              Manuel Rigger and   
                Stefan Marr and   
               Stephen Kell and   
         David Leopoldseder and   
 Hanspeter Mössenböck   An Analysis of x86-64 Inline Assembly in
                                  C Programs . . . . . . . . . . . . . . . 84--99

ACM SIG{}PLAN Notices
Volume 53, Number 4, April, 2018

            Pavel Panchekha and   
             Adam T. Geller and   
           Michael D. Ernst and   
            Zachary Tatlock and   
                   Shoaib Kamil   Verifying that web pages have accessible
                                  layout . . . . . . . . . . . . . . . . . 1--14
                  John Vilk and   
                Emery D. Berger   BLeak: automatically debugging memory
                                  leaks in web applications  . . . . . . . 15--29
              Samuel Baxter and   
               Rachit Nigam and   
           Joe Gibbs Politz and   
      Shriram Krishnamurthi and   
                     Arjun Guha   Putting in all the stops: execution
                                  control for JavaScript . . . . . . . . . 30--45
              Vaibhav Gogte and   
       Stephan Diestelhorst and   
               William Wang and   
        Satish Narayanasamy and   
              Peter M. Chen and   
              Thomas F. Wenisch   Persistency for synchronization-free
                                  regions  . . . . . . . . . . . . . . . . 46--61
               Shoaib Akram and   
         Jennifer B. Sartor and   
        Kathryn S. McKinley and   
                Lieven Eeckhout   Write-rationing garbage collection for
                                  hybrid memories  . . . . . . . . . . . . 62--77
              Chit-Kwan Lin and   
               Andreas Wild and   
          Gautham N. Chinya and   
              Tsung-Han Lin and   
                Mike Davies and   
                      Hong Wang   Mapping spiking neural networks onto a
                                  manycore neuromorphic architecture . . . 78--89
             Lucas Brutschy and   
           Dimitar Dimitrov and   
          Peter Müller and   
                  Martin Vechev   Static serializability analysis for
                                  causal consistency . . . . . . . . . . . 90--104
                 Peizun Liu and   
                    Thomas Wahl   CUBA: interprocedural Context-UnBounded
                                  Analysis of concurrent programs  . . . . 105--119
              Kostas Ferles and   
           Jacob Van Geffen and   
                Isil Dillig and   
             Yannis Smaragdakis   Symbolic reasoning for automatic signal
                                  placement  . . . . . . . . . . . . . . . 120--134
               Yu-Fang Chen and   
          Matthias Heizmann and   
       Ondrej Lengál and   
                    Yong Li and   
            Ming-Hsien Tsai and   
             Andrea Turrini and   
                    Lijun Zhang   Advanced automata-based algorithms for
                                  program termination checking . . . . . . 135--150
               Guilherme Ottoni   HHVM JIT: a profile-guided, region-based
                                  compiler for PHP and Hack  . . . . . . . 151--165
        Daniele Cono D'Elia and   
               Camil Demetrescu   On-stack replacement, distilled  . . . . 166--180
            Gregory J. Duck and   
               Roland H. C. Yap   EffectiveSan: type and memory error
                                  detection using dynamically typed C/C++  181--195
                  Cheng Cai and   
                Qirun Zhang and   
               Zhiqiang Zuo and   
               Khanh Nguyen and   
                 Guoqing Xu and   
                    Zhendong Su   Calling-to-reference context translation
                                  via constraint-guided CFL-reachability   196--210
               Nathan Chong and   
             Tyler Sorensen and   
                 John Wickerson   The semantics of transactions and weak
                                  memory in x86, Power, ARM, and C++ . . . 211--225
             Matthew Milano and   
                Andrew C. Myers   MixT: a language for mixing consistency
                                  in geodistributed transactions . . . . . 226--241
              Stephen Dolan and   
        KC Sivaramakrishnan and   
              Anil Madhavapeddy   Bounding data races in space and time    242--255
         Alex Sanchez-Stern and   
            Pavel Panchekha and   
               Sorin Lerner and   
                Zachary Tatlock   Finding root causes of floating point
                                  error  . . . . . . . . . . . . . . . . . 256--269
                      Ulf Adams   Ry\=u: fast float-to-string conversion   270--282
     Michael J. Steindorfer and   
                Jurgen J. Vinju   To-many or to-one? All-in-one! Efficient
                                  purely functional multi-maps with
                                  type-heterogeneous hash-tries  . . . . . 283--295
           David Koeplinger and   
            Matthew Feldman and   
            Raghu Prabhakar and   
                 Yaqi Zhang and   
              Stefan Hadjis and   
               Ruben Fiszel and   
                  Tian Zhao and   
                Luigi Nardi and   
             Ardavan Pedram and   
         Christos Kozyrakis and   
                 Kunle Olukotun   Spatial: a language and compiler for
                                  application accelerators . . . . . . . . 296--311
               Orhan Kislal and   
             Jagadish Kotra and   
                Xulong Tang and   
     Mahmut Taylan Kandemir and   
                 Myoungsoo Jung   Enhancing computation-to-core assignment
                                  with physical location information . . . 312--327
               Kim-Anh Tran and   
        Alexandra Jimborean and   
          Trevor E. Carlson and   
        Konstantinos Koukos and   
      Magnus Själander and   
               Stefanos Kaxiras   SWOOP: software-hardware co-design for
                                  non-speculative, execute-ahead, in-order
                                  cores  . . . . . . . . . . . . . . . . . 328--343
                 Hongyu Liu and   
              Sam Silvestro and   
                   Wei Wang and   
                  Chen Tian and   
                   Tongping Liu   iReplayer: in-situ and identical
                                  record-and-replay for multithreaded
                                  applications . . . . . . . . . . . . . . 344--358
                 Bozhen Liu and   
                     Jeff Huang   D4: fast concurrency debugging with
                                  parallel differential analysis . . . . . 359--373
                Jake Roemer and   
           Kaan Genç and   
                Michael D. Bond   High-coverage, unbounded sound
                                  predictive race detection  . . . . . . . 374--389
              Yuanfeng Peng and   
               Vinod Grover and   
                Joseph Devietti   CURD: a dynamic CUDA race detector . . . 390--403
                   Uri Alon and   
         Meital Zilberstein and   
                  Omer Levy and   
                     Eran Yahav   A general path-based representation for
                                  predicting program properties  . . . . . 404--419
                    Yu Feng and   
              Ruben Martins and   
             Osbert Bastani and   
                    Isil Dillig   Program synthesis using conflict-driven
                                  learning . . . . . . . . . . . . . . . . 420--435
                 Woosuk Lee and   
                 Kihong Heo and   
                Rajeev Alur and   
                     Mayur Naik   Accelerating search-based program
                                  synthesis using learned probabilistic
                                  models . . . . . . . . . . . . . . . . . 436--449
              Rumen Paletov and   
              Petar Tsankov and   
            Veselin Raychev and   
                  Martin Vechev   Inferring crypto API rules from code
                                  changes  . . . . . . . . . . . . . . . . 450--464
              Sumit Gulwani and   
               Ivan Radicek and   
                Florian Zuleger   Automated clustering and program repair
                                  for introductory programming assignments 465--480
                    Ke Wang and   
              Rishabh Singh and   
                    Zhendong Su   Search, align, and repair: data-driven
                                  feedback generation for introductory
                                  programming exercises  . . . . . . . . . 481--495
               Van Chan Ngo and   
        Quentin Carbonneaux and   
                   Jan Hoffmann   Bounded expectations: resource analysis
                                  for probabilistic programs . . . . . . . 496--512
                    Di Wang and   
               Jan Hoffmann and   
                    Thomas Reps   PMAF: an algebraic framework for static
                                  analysis of probabilistic programs . . . 513--528
            Aravind Acharya and   
            Uday Bondhugula and   
                   Albert Cohen   Polyhedral auto-transformation with no
                                  integer linear programming . . . . . . . 529--542
                 Simon Moll and   
                 Sebastian Hack   Partial control-flow linearization . . . 543--556
                  Dong Chen and   
               Fangzhou Liu and   
                  Chen Ding and   
                  Sreepathi Pai   Locality analysis through static
                                  parallel sampling  . . . . . . . . . . . 557--570
      Marco Cusumano-Towner and   
           Benjamin Bichsel and   
                 Timon Gehr and   
              Martin Vechev and   
           Vikash K. Mansinghka   Incremental inference for probabilistic
                                  programs . . . . . . . . . . . . . . . . 571--585
                 Timon Gehr and   
            Sasa Misailovic and   
              Petar Tsankov and   
           Laurent Vanbever and   
            Pascal Wiesmann and   
                  Martin Vechev   Bayonet: probabilistic inference for
                                  networks . . . . . . . . . . . . . . . . 586--602
       Vikash K. Mansinghka and   
          Ulrich Schaechtle and   
               Shivam Handa and   
               Alexey Radul and   
                Yutian Chen and   
                  Martin Rinard   Probabilistic programming with
                                  programmable inference . . . . . . . . . 603--616
             Brandon Bohrer and   
              Yong Kiam Tan and   
              Stefan Mitsch and   
           Magnus O. Myreen and   
           André Platzer   VeriPhy: verified controller executables
                                  from verified cyber--physical system
                                  models . . . . . . . . . . . . . . . . . 617--630
               Jeehoon Kang and   
              Yoonseung Kim and   
               Youngju Song and   
              Juneyoung Lee and   
              Sanghoon Park and   
         Mark Dongyeon Shin and   
               Yonghyun Kim and   
               Sungkeun Cho and   
               Joonwon Choi and   
              Chung-Kil Hur and   
                   Kwangkeun Yi   Crellvm: verified credible compilation
                                  for LLVM . . . . . . . . . . . . . . . . 631--645
                 Ronghui Gu and   
                 Zhong Shao and   
                 Jieung Kim and   
       Xiongnan (Newman) Wu and   
Jérémie Koenig and   
       Vilhelm Sjöberg and   
                   Hao Chen and   
             David Costanzo and   
            Tahina Ramananandro   Certified concurrent abstraction layers  646--661
              Marcelo Taube and   
              Giuliano Losa and   
        Kenneth L. McMillan and   
                 Oded Padon and   
                Mooly Sagiv and   
              Sharon Shoham and   
            James R. Wilcox and   
                      Doug Woos   Modularity for decidability of deductive
                                  verification with applications to
                                  distributed systems  . . . . . . . . . . 662--677
             Osbert Bastani and   
               Rahul Sharma and   
                 Alex Aiken and   
                    Percy Liang   Active learning of points-to
                                  specifications . . . . . . . . . . . . . 678--692
                Qingkai Shi and   
                  Xiao Xiao and   
                 Rongxin Wu and   
                Jinguo Zhou and   
                   Gang Fan and   
                  Charles Zhang   Pinpoint: fast and precise sparse value
                                  flow analysis for million lines of code  693--706
                     He Zhu and   
             Stephen Magill and   
             Suresh Jagannathan   A data-driven CHC solver . . . . . . . . 707--721
         Mukund Raghothaman and   
           Sulekha Kulkarni and   
                 Kihong Heo and   
                     Mayur Naik   User-guided program reasoning using
                                  Bayesian inference . . . . . . . . . . . 722--735
              Changwan Hong and   
    Aravind Sukumaran-Rajam and   
                Jinsung Kim and   
       Prashant Singh Rawat and   
      Sriram Krishnamoorthy and   
    Louis-Noël Pouchet and   
           Fabrice Rastello and   
                  P. Sadayappan   GPU code optimization using abstract
                                  kernel emulation and sensitivity
                                  analysis . . . . . . . . . . . . . . . . 736--751
           Roshan Dathathri and   
             Gurbinder Gill and   
                  Loc Hoang and   
              Hoang-Vu Dang and   
                Alex Brooks and   
              Nikoli Dryden and   
                  Marc Snir and   
                 Keshav Pingali   Gluon: a communication-optimizing
                                  substrate for distributed heterogeneous
                                  graph analytics  . . . . . . . . . . . . 752--768
               Umut A. Acar and   
  Arthur Charguéraud and   
              Adrien Guatto and   
                Mike Rainey and   
              Filip Sieczkowski   Heartbeat scheduling: provable
                                  efficiency for nested parallelism  . . . 769--782
          Alejandro Serrano and   
              Jurriaan Hage and   
       Dimitrios Vytiniotis and   
             Simon Peyton Jones   Guarded impredicative polymorphism . . . 783--796
          William J. Bowman and   
                     Amal Ahmed   Typed closure conversion for the
                                  calculus of constructions  . . . . . . . 797--811
             Justin Pombrio and   
          Shriram Krishnamurthi   Inferring type rules for syntactic sugar 812--825

ACM SIG{}PLAN Notices
Volume 53, Number 5, May, 2018

                Stuart Byma and   
                 James R. Larus   Detailed heap profiling  . . . . . . . . 1--13
              Charles Tripp and   
                 David Hyde and   
      Benjamin Grossman-Ponemon   FRC: a high-performance concurrent
                                  parallel deferred reference counter for
                                  C++  . . . . . . . . . . . . . . . . . . 14--28
           Steven R. Brandt and   
              Hari Krishnan and   
               Costas Busch and   
                 Gokarna Sharma   Distributed garbage collection for
                                  general graphs . . . . . . . . . . . . . 29--44
             Mohamed Ismail and   
                  G. Edward Suh   Hardware-software co-optimization of
                                  memory management in dynamic languages   45--58
              Rodrigo Bruno and   
             Paulo Ferreira and   
            Ruslan Synytsky and   
        Tetiana Fydorenchyk and   
                    Jia Rao and   
                 Hang Huang and   
                        Song Wu   Dynamic vertical memory scalability for
                                  OpenJDK cloud applications . . . . . . . 59--70
               Gurneet Kaur and   
                 Keval Vora and   
          Sai Charan Koduru and   
                    Rajiv Gupta   OMR: out-of-core MapReduce for large
                                  data sets  . . . . . . . . . . . . . . . 71--83
               Daniel Byrne and   
              Nilufer Onder and   
                   Zhenlin Wang   mPart: miss-ratio curve guided
                                  partitioning in key--value stores  . . . 84--95
                Jacob Brock and   
                  Chen Ding and   
              Rahman Lavaee and   
               Fangzhou Liu and   
                     Liang Yuan   Prediction and bounds on shared cache
                                  demand from memory access interleaving   96--108
            Michihiro Horie and   
              Hiroshi Horii and   
             Kazunori Ogata and   
                 Tamiya Onodera   Balanced double queues for GC
                                  work-stealing on weak memory models  . . 109--119

ACM SIG{}PLAN Notices
Volume 53, Number 6, June, 2018

       Rodrigo C. M. Santos and   
          Guilherme F. Lima and   
        Francisco Sant'Anna and   
      Roberto Ierusalimschy and   
             Edward H. Haeusler   A memory-bounded, deterministic and
                                  terminating semantics for the
                                  synchronous programming language Céu  . . 1--18
               James Devine and   
                 Joe Finney and   
            Peli de Halleux and   
             Micha\l Moskal and   
                Thomas Ball and   
                   Steve Hodges   MakeCode and CODAL: intuitive and
                                  efficient embedded systems programming
                                  for education  . . . . . . . . . . . . . 19--30
                 Ben Taylor and   
          Vicent Sanz Marco and   
                Willy Wolff and   
             Yehia Elkhatib and   
                     Zheng Wang   Adaptive deep learning model selection
                                  on embedded systems  . . . . . . . . . . 31--43
                    Lei Han and   
               Zhaoyan Shen and   
                  Zili Shao and   
                         Tao Li   Optimizing RAID/SSD controllers with
                                  lifetime extension for flash-based SSD
                                  array  . . . . . . . . . . . . . . . . . 44--54
              Mladen Skelin and   
                    Marc Geilen   Compositionality in scenario-aware
                                  dataflow: a rendezvous perspective . . . 55--64
             Michael Stokes and   
                 Ryan Baird and   
              Zhaoxiang Jin and   
              David Whalley and   
                    Soner Onder   Decoupling address generation from loads
                                  and stores to improve data access energy
                                  efficiency . . . . . . . . . . . . . . . 65--75
             Bernhard Egger and   
                Eunjin Song and   
                 Hochan Lee and   
                  Daeyoung Shin   Verification of coarse-grained
                                  reconfigurable arrays through random
                                  test programs  . . . . . . . . . . . . . 76--88
      Andre Xian Ming Chang and   
             Aliasger Zaidy and   
             Lukasz Burzawa and   
            Eugenio Culurciello   Deep neural networks compiler for a
                                  trace-based accelerator (short WIP
                                  paper) . . . . . . . . . . . . . . . . . 89--93
        Francisco Sant'Anna and   
       Alexandre Sztajnberg and   
  Ana Lúcia de Moura and   
                Noemi Rodrigues   Transparent standby for low-power,
                                  resource-constrained embedded systems: a
                                  programming language-based approach
                                  (short WIP paper)  . . . . . . . . . . . 94--98
         Bharti Chimdyalwar and   
                 Priyanka Darke   Statically relating program properties
                                  for efficient verification (short WIP
                                  paper) . . . . . . . . . . . . . . . . . 99--103
                  Gaurav Chadha   JSCore: architectural support for
                                  accelerating JavaScript execution (short
                                  WIP paper) . . . . . . . . . . . . . . . 104--108
             Pavan Mehrotra and   
             Sabar Dasgupta and   
         Samantha Robertson and   
                Paul Nuyujukian   An open-source realtime computational
                                  platform (short WIP paper) . . . . . . . 109--112

ACM SIG{}PLAN Notices
Volume 53, Number 7, July, 2018

       Agustín Mista and   
            Alejandro Russo and   
                    John Hughes   Branching processes for QuickCheck
                                  generators . . . . . . . . . . . . . . . 1--13
               Joachim Breitner   A promise checked is a promise kept:
                                  inspection testing . . . . . . . . . . . 14--25
       Martin A. T. Handley and   
                  Graham Hutton   AutoBench: comparing the time
                                  performance of Haskell programs  . . . . 26--37
                Marilyn Sun and   
                Kathleen Fisher   Autobahn 2.0: minimizing bangs while
                                  maintaining performance (system
                                  demonstration) . . . . . . . . . . . . . 38--40
          Alejandro Serrano and   
        Victor Cacciari Miraldo   Generic programming of all kinds . . . . 41--54
        Baldur Blöndal and   
            Andres Löh and   
                     Ryan Scott   Deriving Via: or, how to turn
                                  hand-written instances into an
                                  anti-pattern . . . . . . . . . . . . . . 55--67
      Guido Martínez and   
           Mauro Jaskelioff and   
                  Guido De Luca   Improving typeclass relations by being
                                  open . . . . . . . . . . . . . . . . . . 68--80
              Thomas Winant and   
             Dominique Devriese   Coherent explicit dictionary application
                                  for Haskell  . . . . . . . . . . . . . . 81--93
       Richard A. Eisenberg and   
           Joachim Breitner and   
             Simon Peyton Jones   Type variables in patterns . . . . . . . 94--105
              Divesh Otwani and   
           Richard A. Eisenberg   The Thoralf plugin: for your fancy type
                                  needs  . . . . . . . . . . . . . . . . . 106--118
                    Matt Noonan   Ghosts of departed proofs (functional
                                  pearl) . . . . . . . . . . . . . . . . . 119--131
                 Niki Vazou and   
           Joachim Breitner and   
                Rose Kunkel and   
             David Van Horn and   
                  Graham Hutton   Theorem proving for all: equational
                                  reasoning in liquid Haskell (functional
                                  pearl) . . . . . . . . . . . . . . . . . 132--144
         Manuel Bärenz and   
                     Ivan Perez   Rhine: FRP with type-level clocks  . . . 145--157
           Kazutaka Matsuda and   
                      Meng Wang   Embedding invertible languages with
                                  binders: a case of the FliPpr language   158--171
                   Dong Han and   
                         Tao He   A high-performance multicore IO manager
                                  based on \tt libuv (experience report)   172--178
Matthías Páll Gissurarson   Suggesting valid hole fits for
                                  typed-holes (experience report)  . . . . 179--185

ACM SIG{}PLAN Notices
Volume 53, Number 8, October, 2018

     Preston Tunnell Wilson and   
               Ben Greenman and   
             Justin Pombrio and   
          Shriram Krishnamurthi   The behavior of gradual types: a user
                                  study  . . . . . . . . . . . . . . . . . 1--12
               Martin Bodin and   
          Tomás Diaz and   
             Éric Tanter   A trustworthy mechanized formalization
                                  of R . . . . . . . . . . . . . . . . . . 13--24
                    Mark Marron   Log++ logging for a cloud-native world   25--36
               Hanfeng Chen and   
      Joseph Vinish D'Silva and   
                Hongji Chen and   
              Bettina Kemme and   
                 Laurie Hendren   HorseIR: bringing array programming
                                  languages together with database query
                                  processing . . . . . . . . . . . . . . . 37--49
                 Manuel Serrano   JavaScript AOT compilation . . . . . . . 50--63
               Yoav Seginer and   
                 Theo Vosse and   
                 Gil Harari and   
                    Uri Kolodny   Query-based object-oriented programming:
                                  a declarative web of objects . . . . . . 64--75
                Guido Chari and   
        Javier Pimás and   
                  Jan Vitek and   
         Olivier Flückiger   Self-contained development environments  76--87
              David Herrera and   
               Hanfeng Chen and   
               Erick Lavoie and   
                 Laurie Hendren   Numerical computing on the web:
                                  benchmarking for the future  . . . . . . 88--100

ACM SIG{}PLAN Notices
Volume 53, Number 9, November, 2018

              Karl Smeltzer and   
                   Martin Erwig   A domain-specific language for
                                  exploratory data visualization . . . . . 1--13
             Nicolas Stucki and   
           Aggelos Biboudis and   
                 Martin Odersky   A practical unification of multi-stage
                                  programming and macros . . . . . . . . . 14--27
      William Gallard Hatch and   
                  Matthew Flatt   Rash: from reckless interactions to
                                  reliable programs  . . . . . . . . . . . 28--39
       Larissa Rocha Soares and   
              Jens Meinicke and   
                 Sarah Nadi and   
     Christian Kästner and   
     Eduardo Santana de Almeida   Exploring feature interactions without
                                  specifications: a controlled experiment  40--52
             Ebrahim Khalaj and   
              Marwan Abi-Antoun   Inferring ownership domains from
                                  refinements  . . . . . . . . . . . . . . 53--65
              Nic Volanschi and   
           Bernard Serpette and   
                 Charles Consel   Implementing a semi-causal
                                  domain-specific language for context
                                  detection over binary sensors  . . . . . 66--78
             Adilla Susungi and   
             Norman A. Rink and   
               Albert Cohen and   
        Jeronimo Castrillon and   
                 Claude Tadonki   Meta-programming for cross-domain tensor
                                  optimizations  . . . . . . . . . . . . . 79--92
              Sven Peldszus and   
        Daniel Strüber and   
               Jan Jürjens   Model-based security analysis of
                                  feature-oriented software product lines  93--106
         Laurent Christophe and   
             Coen De Roover and   
        Elisa Gonzalez Boix and   
             Wolfgang De Meuter   Orchestrating dynamic analyses of
                                  distributed processes for full-stack
                                  JavaScript programs  . . . . . . . . . . 107--118
           Sebastian Ruland and   
              Lars Luthmann and   
       Johannes Bürdek and   
                Sascha Lity and   
           Thomas Thüm and   
               Malte Lochau and   
          Márcio Ribeiro   Measuring effectiveness of sample-based
                                  product-line testing . . . . . . . . . . 119--133
               Weixin Zhang and   
        Bruno C. d. S. Oliveira   Pattern matching in an open world  . . . 134--146
      Ahmad Salim Al-Sibahi and   
           Thomas P. Jensen and   
     Aleksandar S. Dimovski and   
               Andrzej Wasowski   Verification of high-level
                                  transformations with inductive
                                  refinement types . . . . . . . . . . . . 147--160
        Jácome Cunha and   
                  Mihai Dan and   
               Martin Erwig and   
             Danila Fedorin and   
                    Alex Grejuc   Explaining spreadsheets with
                                  spreadsheets (short paper) . . . . . . . 161--167
       L. Thomas van Binsbergen   Funcons for HGMP: the fundamental
                                  constructs of homogeneous generative
                                  meta-programming (short paper) . . . . . 168--174
                    Yin Liu and   
                   Kijin An and   
                   Eli Tilevich   RT-trust: automated refactoring for
                                  trusted execution under real-time
                                  constraints  . . . . . . . . . . . . . . 175--187
              Michael Nieke and   
               Jacopo Mauro and   
            Christoph Seidl and   
           Thomas Thüm and   
            Ingrid Chieh Yu and   
                  Felix Franzke   Anomaly analyses for feature-model
                                  evolution  . . . . . . . . . . . . . . . 188--201
            Gabriel Radanne and   
                 Peter Thiemann   Regenerate: a language generator for
                                  extended regular expressions . . . . . . 202--214