Last update:
Thu Apr 11 10:27:11 MDT 2024
B. Stroustrup Why C++ is not just an Object-Oriented Programming Language . . . . . . . . . . 1--13 A. Koenig Idiomatic Design . . . . . . . . . . . . 14--19 B. Meyer Static Typing . . . . . . . . . . . . . 20--29 A. Goldberg What Should We Teach? . . . . . . . . . 30--45 Steven Fraser and Honna Segel and Jim Coplien and Judith White Application of Domain Analysis to Object-Oriented Systems . . . . . . . . 46--49 Debbie Meadows and Charles R. Gardner Building and Performance Tuning a Distributed Reporting Application for an OODBMS . . . . . . . . . . . . . . . . . 50--55 Charles R. Gardner Performance of an OODB in an Online $7\times24\times365$ Manufacturing Operation . . . . . . . . . . . . . . . 56--60 Stephen W. Strom and William F. Rich and Matthew T. Verona The Navigation Toolkit Project Revisited 61--66 Steven Marney and Mamdouh Ibrahim Using Objects to Manage In-memory Data Intensive Expert Systems . . . . . . . . 67--71 Jeff L. Burgett and Sheryl J. Adam Applying Object-Oriented Software Engineering Methods to the Development of Call Center Software: Case Study . . 72--76 J. Radford Implementing a Real-Time, Embedded, Telecommunication Switching System in Smalltalk . . . . . . . . . . . . . . . 77--82 M. B. Rosson OOPSLA '95 Doctoral Symposium . . . . . 83--84 S. Fraser Patterns: Cult to Culture? . . . . . . . 85--88 L. Hill Object-Oriented Project Management . . . 89--93 D. Mancl Tailoring OO Analysis and Design Methods 94--99 Dipayan Gangopadhyay and Wolfgang Pree and Albert Schappert Framework-Centered Software Development 100--104 Hafedh Y. Mili and François Pachet and Ilham Benyahia and Fred Eddy Metamodeling in OO . . . . . . . . . . . 105--110 Haim Kilov and Bill Harvey and Kevin Tyson Semantic Integration in Complex Systems: Collective Behavior in Business Rules and Software Transactions . . . . . . . 111--116 William Harrison and Harold Ossher and Hafedh Mili Subjectivity in Object-Oriented Systems 117--122 Fred Cummins and Roman Cunis and Gail Harris The Object Engine: Foundation for Next Generation Architectures . . . . . . . . 123--127 Dennis Kafura and Greg Lavender and Doug Schmidt Design Patterns for Concurrent, Parallel, and Distributed Object-Oriented Systems . . . . . . . . 128--131 G. Meszaros Patterns for Decision Making in Architectural Design . . . . . . . . . . 132--137 Dennis de Champeaux and Simon Horner and Granville Miller OO Process and Metrics for Effort Estimation . . . . . . . . . . . . . . . 138--142 B. Yates Testing Smalltalk Applications . . . . . 143--148 K. Lieberherr Adaptable and Adaptive Software . . . . 149--154 K. Narayanaswamy and Adrian Blakey Are Object-Oriented CASE Frameworks Ready for Prime Time? . . . . . . . . . 155--158 Benjamin G. Zorn and Akmal B. Chaudhri Object Database Behavior, Benchmarks, and Performance . . . . . . . . . . . . 159--163 Jen-Yao Chung and Yi-Jing Lin and Daniel T. Chang Objects and Relational Databases . . . . 164--169 J. Sutherland Business Object Design and Implementation . . . . . . . . . . . . . 170--175 Y. Jang Legacy Systems and Object Technology . . 176--179 Antero Taivalsaari and Roland Trauter and Eduardo Casais Object-Oriented Legacy Systems and Software Evolution . . . . . . . . . . . 180--185 Vijay Vaishnavi and Timothy Korson Role of a Corporate Object Technology Center . . . . . . . . . . . . . . . . . 186--190 Ashutosh Tiwary and Rajendra K. Raj and Douglas S. Lea and Christopher J. Bosch Building Large Distributed Software Systems Using Objects . . . . . . . . . 191--195 G. Brown Design and Construction of Large-scale Components . . . . . . . . . . . . . . . 196--202 Bob Wilhelm and John Gilbert and Mohamed Fayad Object-Oriented Real-Time Systems . . . 203--208 S. Arora Object-Oriented Technology for Health Care and Medical Information Systems . . 209--212 C. Laffra OO Technology in Large Financial Institutions . . . . . . . . . . . . . . 213--217
Limsoon Wong An introduction to Remy's fast polymorphic record projection . . . . . 34--39
R. J. Cichelli Minimal Perfect Hash Functions Made Simple . . . . . . . . . . . . . . . . . 17--19
R. J. Cichelli On Cichelli's Minimal Perfect Hash Functions Method . . . . . . . . . . . . 728--729 G. Jaeschke and G. Osterburg On Cichelli's Minimal Perfect Hash Functions Method . . . . . . . . . . . . 728--729
Curtis R. Cook and R. R. Oldehoeft A Letter Oriented Minimal Perfect Hashing Function . . . . . . . . . . . . 18--27
J. M. Caron and P. A. Darnell Bugfind: a tool for debugging optimizing compilers . . . . . . . . . . . . . . . 17--22 S. Srinivasan Compiler design for sets in Pascal . . . 23--24 R. T. Boute A heretical view on type embedding . . . 25--28 L. Wong and B. C. Ooi Treating failure as value . . . . . . . 29--32 D. Talia Survey and comparison of PARLOG and Concurrent Prolog . . . . . . . . . . . 33--42 P. P. K. Chiu and S. T. K. Fu A generative approach to Universal Cross Assembler design . . . . . . . . . . . . 43--51 Adrian Avenarius and Siegfried Oppermann \FWEB: A Literate Programming System for Fortran 8X . . . . . . . . . . . . . . . 52--58 M. Payne and C. Schaffert and B. Wichmann Proposal for a language compatible arithmetic standard . . . . . . . . . . 59--86
Edward J. Thomas and Paul W. Oman A Bibliography of Programming Style . . 7--16 D. J. Nordstrom Threading Lisp . . . . . . . . . . . . . 17--24 A. Radensky Toward integration of the imperative and logic programming paradigms: Horn-clause programming in the Pascal environment 25--34 B. Mehndiratta and P. S. Grover Software metrics --- an experimental analysis . . . . . . . . . . . . . . . . 35--41
A. Dinning and E. Schonberg An empirical comparison of monitoring algorithms for access anomaly detection 1--10 W. Hseush and G. E. Kaiser Modeling concurrency in parallel debugging . . . . . . . . . . . . . . . 11--20 D. Callahan and K. Kennedy and J. Subhlok Analysis of event synchronization in a parallel programming tool . . . . . . . 21--30 E. Tick and N. Ichiyoshi Programming techniques for efficiently exploiting parallelism in logic programming languages . . . . . . . . . 31--39 V. Ambriola and P. Ciancarini and M. Danelutto Design and distributed implementation of the parallel logic language shared Prolog . . . . . . . . . . . . . . . . . 40--49 M. Furuichi and K. Taki and N. Ichiyoshi A multi-level load balancing scheme for OR-parallel exhaustive search programs on the multi-PSI . . . . . . . . . . . . 50--59 H. P. Katseff and R. D. Gaglianello and B. S. Robinson The evolution of HPC/VORX . . . . . . . 60--69 M. L. Scott and T. J. LeBlanc and B. D. Marsh Multi-model parallel programming in psyche . . . . . . . . . . . . . . . . . 70--78 K. Li and J. F. Naughton and J. S. Plank Real-time, concurrent checkpoint for parallel programs . . . . . . . . . . . 79--88 D. M. Nicol Analysis of synchronization in massively parallel discrete-event simulations . . 89--98 B. Ramkumar and L. V. Kale A Chare kernel implementation of a parallel Prolog compiler . . . . . . . . 99--108 P. S. Chang and G. K. Egan An implementation of a barotropic Numerical Weather Prediction model in the functional language SISAL . . . . . 109--117 R. Gupta Employing register channels for the exploitation of instruction level parallelism . . . . . . . . . . . . . . 118--127 R. Hieb and R. Kent Dybvig Continuations and concurrency . . . . . 128--136 D. Whitfield and M. L. Soffa An approach to ordering optimizing transformations . . . . . . . . . . . . 137--146 M. Factor The process trellis architecture for real-time monitors . . . . . . . . . . . 147--155 W. Harvey and D. Kalp and M. Tambe and D. McKeown and A. Newell The effectiveness of task-level parallelism for high-level vision . . . 156--167 J. K. Bennett and J. B. Carter and W. Zwaenepoel Munin: distributed shared memory based on type-specific memory coherence . . . 168--176 A. A. Chien and W. J. Dally Concurrent aggregates (CA) . . . . . . . 177--186 C. Koelbel and P. Mehrotra and J. Van Rosendale Supporting shared data structures on distributed memory architectures . . . . 177--186 Andrew A. Chien and William J. Dally Concurrent aggregates (CA) . . . . . . . 187--196 M. Herlihy A methodology for implementing highly concurrent data structures . . . . . . . 197--206
Pierre Labr\`eche and Louis Lamarche \em Interactors: a real-time executive with multiparty interactions in C++ . . 20--32 Brian Meek The static semantics file . . . . . . . 33--42 Ronald E. Prather Proposal for a categorical programming language . . . . . . . . . . . . . . . . 43--50 Gregor Snelting How to build LR parsers which accept incomplete input . . . . . . . . . . . . 51--58 Frank G. Pagan Comparative efficiency of general and residual parsers . . . . . . . . . . . . 59--68 Ryan Stansifer Imperative versus functional . . . . . . 69--72 Robert Mandl On `powerloop' constructs in programming languages . . . . . . . . . . . . . . . 73--82 George H. Roberts From recursive ascent to recursive descent: via compiler optimizations . . 83--89
Henri E. Bal Orca: a language for distributed programming . . . . . . . . . . . . . . 17--24 Mark B. Wells Identifiers and static name abstraction 25--28 Michael P. Barnett Primitive string transformations as reductions to normal form . . . . . . . 29--33 Michael P. Barnett and Xu Rui Infix to prefix conversion as a PST reduction . . . . . . . . . . . . . . . 34--38 Xinjie Jiang and Yongsen Xu Diverse executable semantics definitions in NUSL and an implementation of functional types . . . . . . . . . . . . 39--52 Kenneth Louden P-code and compiler portability: experience with a Modula-2 optimizing compiler . . . . . . . . . . . . . . . . 53--59 Ivo Van Horebeek and Johan Lewi Are constructive formal specifications less abstract? . . . . . . . . . . . . . 60--68 Neelakantan Sundaresan Translation of nested Pascal routines to C . . . . . . . . . . . . . . . . . . . 69--81 H. Dobler and K. Pirklbauer Coco-2: a new compiler compiler . . . . 82--90 Klaus Kaiser Generating the minimal model in Prolog 91--94 Daniel Keller A Guide to Natural Naming . . . . . . . 95--102 Peter L. Treadway The use of sets as an application programming technique . . . . . . . . . 103--116 Boris Burshteyn On the modification of the formal grammar at parse time . . . . . . . . . 117--123 Michel de Champlain Synapse: a small and expressible object-based real-time programming language . . . . . . . . . . . . . . . . 124--134
Robert Giegerich On the structure of verifiable code generator specifications . . . . . . . . 1--8 Alan L. Wendt Fast code generation using automatically-generated decision trees 9--15 Karl Pettis and Robert C. Hansen Profile guided code positioning . . . . 16--27 Vatsa Santhanam and Daryl Odnert Register allocation across procedure and module boundaries . . . . . . . . . . . 28--39 Brian R. Nickerson Graph coloring register allocation for processors with multi-register operands 40--52 David Callahan and Steve Carr and Ken Kennedy Improving register allocation for subscripted variables . . . . . . . . . 53--65 Robert Hieb and R. Kent Dybvig and Carl Bruggeman Representing control in the presence of first-class continuations . . . . . . . 66--77 Peter B. Kessler Fast breakpoints. Design and implementation . . . . . . . . . . . . . 78--84 William Pugh and Grant Weddell Two-directional record layout for multiple inheritance . . . . . . . . . . 85--91 William Pugh and Grant Weddell Two-directional record layout for multiple inheritance . . . . . . . . . . 85--91 William D. Clinger How to Read Floating Point Numbers Accurately . . . . . . . . . . . . . . . 92--101 Vernon A. Lee, Jr. and Hans-J. Boehm Optimizing programs over the constructive reals . . . . . . . . . . . 102--111 Guy L. Steele Jr. and Jon L. White How to Print Floating-Point Numbers Accurately . . . . . . . . . . . . . . . 112--126 Gordon V. Cormack and Andrew K. Wright Type-dependent parameter inference . . . 127--136 Gordon V. Cormack and Andrew K. Wright Type-dependent parameter inference . . . 127--136 Steven Anderson and Paul Hudak Compilation of Haskell array comprehensions for scientific computing 137--149 Craig Chambers and David Ungar Iterative type analysis and extended message splitting: Optimizing dynamically-typed object-oriented programs . . . . . . . . . . . . . . . . 150--164 Dean Jacobs Type declarations as subtype constraints in logic programming . . . . . . . . . . 165--173 Saumya K. Debray and Nai-Wei Lin and Manuel Hermenegildo Task granularity analysis in logic programs . . . . . . . . . . . . . . . . 174--188 Thanasis Mitsolides and Malcolm Harrison Generators and the replicator control structure in the parallel environment of ALLOY . . . . . . . . . . . . . . . . . 189--196 Tim Teitelbaum and Richard Chapman Higher-order attribute grammars and editing environments . . . . . . . . . . 197--208 Tim Teitelbaum and Richard Chapman Higher-order attribute grammars and editing environments . . . . . . . . . . 197--208 Martin Jourdan and Didier Parigot and Catherine Julié and Olivier Durin and Carole Le Bellec Design, implementation and evaluation of the FNC-2 attribute grammar system . . . 209--222 Robert R. Henry and Kenneth M. Whaley and Bruce Forstall The University of Washington illustrating compiler . . . . . . . . . 223--233 Susan Horwitz Identifying the semantic and textual differences between two versions of a program . . . . . . . . . . . . . . . . 234--245 Hiralal Agrawal and Joseph R. Horgan Dynamic program slicing . . . . . . . . 246--256 Robert A. Ballance and Arthur B. Maccabe and Karl J. Ottenstein The Program Dependence Web: A Representation Supporting Control-, Data-, and Demand-Driven Interpretation of Imperative Languages . . . . . . . . 257--271 Rajiv Gupta A fresh look at optimizing array bound checking . . . . . . . . . . . . . . . . 272--282 Rajiv Gupta A fresh look at optimizing array bound checking . . . . . . . . . . . . . . . . 272--282 Zahira Ammarguellat and W. L. Harrison, III Automatic recognition of induction variables and recurrence relations by abstract interpretation . . . . . . . . 283--295 David R. Chase and Mark Wegman and F. Kenneth Zadeck Analysis of pointers and structures . . 296--310 Ping-Sheng Tseng Compiling programs for a linear systolic array . . . . . . . . . . . . . . . . . 311--321 Vivek Sarkar Instruction reordering for fork-join parallelism . . . . . . . . . . . . . . 322--336 Ron Cytron and Jeanne Ferrante and Vivek Sarkar Compact representations for control dependence . . . . . . . . . . . . . . . 337--351
Mikael Eriksson A correct example of multiple inheritance . . . . . . . . . . . . . . 7--10 Tsvetan T. Drashansky A concept for functional programming and distributed data processing in a local area network and its implementation . . 11--18 C. Lins Programming without enumerations in Oberon . . . . . . . . . . . . . . . . . 19--27 Jukka Paakki and Anssi Karhinen and Tomi Silander Orthogonal type extensions and reductions . . . . . . . . . . . . . . . 28--38 C. K. Yuen and W. F. Wong A self interpreter for BaLinda Lisp . . 39--58 Peter Greenfield Bagof/3 to ZF expression: an example Prolog application manually translated to Miranda . . . . . . . . . . . . . . . 59--62 Joanne L. Boyd and Gerald M. Karam Prolog in `C' . . . . . . . . . . . . . 63--71 Tom Axford An elementary language construct for parallel programming . . . . . . . . . . 72--80 Harold V. McIntosh and Gerardo Cisneros The programming languages REC and convert . . . . . . . . . . . . . . . . 81--94 Markku Sakkinen On embedding Boolean as a subtype of integer . . . . . . . . . . . . . . . . 95--96 Sanjay M. Krishamurthy A brief survey of papers on scheduling for pipelined processors . . . . . . . . 97--106
Darrel Ince An Annotated Bibliography of Software Metrics . . . . . . . . . . . . . . . . 15--23 L. Wong and B. C. Ooi Treating failure as state . . . . . . . 24--26 R. Steigerwald and M. Nelson Concurrent programming in Smalltalk-80 27--36 W. F. Elsworth and M. B. A. Parkes Automated compiler construction based on top-down syntax analysis and attribute evaluation . . . . . . . . . . . . . . . 37--42 V. Milanese Coupling FORTH and GKS in monitoring processes . . . . . . . . . . . . . . . 43--52 J. Dekeyser and Ph. Marquet and Ph. Pruex EVA: an explicit vector language . . . . 53--71 V. Schneider Compiler textbook bibliographies considered harmful . . . . . . . . . . . 72--74 B. Meek Two-valued datatypes . . . . . . . . . . 75--79 B. Meek Failure is not just one value . . . . . 80--83 H. Von Issendorff A theory of organization . . . . . . . . 84--102 M. Berry Adverbial programming . . . . . . . . . 103--105 D. Jonsson The flow of control notations Pancode and boxcharts . . . . . . . . . . . . . 106--119 D. Resler VisiCLANG: a visible compiler for CLANG 120--123
Stephen P. Spackman Book Review: Interpretation and Instruction Path Coprocessing by Eddy H. Debaere & Jan M. Van Campenhout: (MIT Press 1990) . . . . . . . . . . . . . . 7--9 J. Gyorkos and I. Rozman and T. Welzer Dynamical system specifications as validation media . . . . . . . . . . . . 10--16 D. Talla Notes on termination of OCCAM processes 17--24 C. Jung and E. Sibert Communication types . . . . . . . . . . 25--30 H. von Issendorff A theory of organization . . . . . . . . 31--38 A. B. Rulghaver and T. T. E. Yeo Language support for a semi-dataflow parallel programming environment . . . . 39--47
Grady Booch and Michael Vilot The design of the C++ Booch Components 1--11 Sanjiv Gossain and Bruce Anderson An iterative-design model for reusable object-oriented software . . . . . . . . 12--27 Stephen Bear and Phillip Allen and Derek Coleman and Fiona Hayes Graphical specification of object oriented systems . . . . . . . . . . . . 28--37 Oscar Nierstrasz and Michael Papathomas Viewing object as patterns of communicating agents . . . . . . . . . . 38--43 Jean-Marc Andreoli and Remo Pareschi LO and behold! Concurrent structured processes . . . . . . . . . . . . . . . 44--56 K. Kahn and Vijay A. Saraswat Actors as a special case of concurrent constraint (logic) programming . . . . . 57--66 Barbara Staudt Lerner and A. Nico Habermann Beyond schema evolution to database reorganization . . . . . . . . . . . . . 67--76 Bjorn N. Freeman-Benson Kaleidoscope: mixing objects, constraints, and imperative programming 77--88 José Meseguer A logical theory of concurrent objects 101--115 Jan A. Purchase and Russel L. Winder Message pattern specifications: a new technique for handling errors in parallel object oriented systems . . . . 116--125 Dennis Kafura and Doug Washabaugh and Jeff Nelson Garbage collection of actors . . . . . . 126--134 Dennis de Champeaux and Larry Constantine and Ivar Jacobson and Stephen Mellor and Paul Ward and Edward Yourdon Structured analysis and object oriented analysis . . . . . . . . . . . . . . . . 135--139 Ole Lehrmann Madsen and Boris Magnusson and Birger Mòlier-Pedersen Strong typing of object-oriented languages revisited . . . . . . . . . . 140--150 Jens Palsberg and Michael I. Schwartzbach Type substitution for object-oriented programming . . . . . . . . . . . . . . 151--160 Pierre America and Frank van der Linden A parallel object-oriented language with inheritance and subtyping . . . . . . . 161--168 Richard Helm and Ian M. Holland and Dipayan Gangopadhyay Contracts: specifying behavioral compositions in object-oriented systems 169--180 Lucy M. Berlin When objects collide experiences with reusing multiple class hierarchies . . . 181--193 Andreas Paepcke PCLOS: stress testing CLOS experiencing the metaobject protocol . . . . . . . . 194--211 Gary T. Leavens and William E. Weihl Reasoning about object-oriented programs that use subtypes . . . . . . . . . . . 212--223 Dave D. Straube and M. Tamer Oezsu Type consistency of queries in an object-oriented database system . . . . 224--233 Jacob Stein and Tim Andrews and Bill Kent and Kate Rotzell and Dan Weinreb Issues in object database management . . 235--236 Volker Haarslev and Ralf Möller A framework for visualizing object-oriented systems . . . . . . . . 237--244 John Alan McDonald and Werner Stuetzle and Andreas Buja Painting multiple views of complex objects . . . . . . . . . . . . . . . . 245--257 Yen-Ping Shan MoDE: a UIMS for Smalltalk . . . . . . . 258--268 Sabine Habert and Laurence Mosseri COOL: kernel support for object-oriented environments . . . . . . . . . . . . . . 269--275 John E. Faust and Henry M. Levy The performance of an object-oriented threads package . . . . . . . . . . . . 278--288 Yutaka Ishikawa and Hideyuki Tokuda Object-oriented real-time language design: constructs for timing constraints . . . . . . . . . . . . . . 289--298 Rick DeNatale and Charles Irby and John LaLonde and Burton Leathers and Reed Phillips OOP in the real world . . . . . . . . . 299--302 Gilad Bracha and William Cook Mixin-based inheritance . . . . . . . . 303--311 Bernard Carré and Jean-Marc Geib The point of view notion for multiple inheritance . . . . . . . . . . . . . . 312--321 Christophe Dony Exception handling and object-oriented programming: towards a synthesis . . . . 322--330 John R. Rymer and Richard Mark Soley and William Stephen Andreas and Ian Fuller and Neal Jacobson and Richard A. Demers OOPSLA distributed object management . . 331--333
SIGPLAN Notices staff Abstracts of the 1990 International Conference on Computer Languages Proceedings . . . . . . . . . . . . . . 26--34 H. Christiansen A survey of adaptable grammars . . . . . 35--44 B. Andersen Ellie language definition report . . . . 45--64 M. Ivanovic and Z. Budimac Involving coroutines in interaction between functional and conventional language . . . . . . . . . . . . . . . . 65--74 R. McLaughlin A plea for a readable Prolog programming style . . . . . . . . . . . . . . . . . 75--79 T. Kovats A conservative alternative to Pancode 80--84 T. Christopher and D. Ameiss Functional programming in a parallel environment: the implementation of FP in MDC . . . . . . . . . . . . . . . . . . 85--94
Susi Dulli and Vitaliano Milanese A database design for graphical models 30--36 Choun Tong Lieu and Djamil Sarni O.LISP theoretical basis and description 37--44 Boris Burshteyn Generation and recognition of formal languages by modifiable grammars . . . . 45--53 K. Bothe A Prolog space benchmark suite: a new tool to compare Prolog implementations 54--60 M. I. Auguston Programming language RIGAL as a compiler writing tool . . . . . . . . . . . . . . 61--69 Robert Jellinghaus Eiffel Linda: an object-oriented Linda dialect . . . . . . . . . . . . . . . . 70--84 Günter Dotzel Does Modula-2 generate racehorses?: comparison of compiler generated code quality for floating point arithmetic 85--88 C. S. Yovev Universal editor unattainable . . . . . 89--92 Cheng-xiang Zhai Preliminary ideas of a conceptual programming language . . . . . . . . . . 93--100
Lisa M. C. Smith and Mansur H. Samadzadeh An Annotated Bibliography of Literate Programming . . . . . . . . . . . . . . 14--20 Cherri M. Pancake and Sue Utter A bibliography of parallel debuggers, 1990 edition . . . . . . . . . . . . . . 21--37 Frank W. Calliss A comparison of module constructs in programming languages . . . . . . . . . 38--46 P. David Coward Path feasibility, linear optimizers and the evaluate standard form . . . . . . . 47--56 Shang Lujun Cluster: an informal report . . . . . . 57--74 Cheng-xiang Zhai Preliminary Ideas of a Conceptual Programming Language . . . . . . . . . . 77--84 Tan Watanabe and Kazuko Sakuma and Hideyuki Arai and Kohbun Umetani Essential language el($\alpha$) --- a reduced expression set language for system programming . . . . . . . . . . . 85--98 Manfred Stadel Object oriented programming techniques to replace software components on the fly in a running program . . . . . . . . 99--108 Dan Teodosiu HARE: an optimizing portable compiler for Scheme . . . . . . . . . . . . . . . 109--120 Michael Franz The rewards of generating true 32-bit code . . . . . . . . . . . . . . . . . . 121--123 Lem O. Ejiogu TM: a systematic methodology of software metrics . . . . . . . . . . . . . . . . 124--132 Mike Joy and Tom Axford GCODE: a revised standard for a graph representation for functional programs 133--139
Steven Pemberton A short introduction to the ABC language 11--16 Christopher Coyle and Peter Crogono Building abstract iterators using continuations . . . . . . . . . . . . . 17--24 E. Mark Gold Incremental reduction with nested constraints . . . . . . . . . . . . . . 25--34 Mark Cashman The benefits of enumerated types in Modula-2 . . . . . . . . . . . . . . . . 35--39 Randy M. Kaplan A plea for readable pleas for a readable Prolog programming style . . . . . . . . 41--50 Michael Klug VisiCola, a model and a language for visibility control in programming languages . . . . . . . . . . . . . . . 51--63 B. I. B. Madhav and Narayan Hegde Implementing C function calls in rules for an expert system shell . . . . . . . 64--66 Marco Pellegrini and Raimondo Sepe SetLog, a tool for experimenting with new semantics . . . . . . . . . . . . . 67--74 Putnik Zoran and Budimac Zoran and Ivanovic Mirjana Turtle walk through functional language 75--82 Robert Bernecky Fortran 90 arrays . . . . . . . . . . . 83--98 Michele Di Santo and Wilma Russo The ensemble system: concurrent programming on a personal computer . . . 99--108 Wolfgang Keller Automated generation of code using backtracking parsers for attribute grammars . . . . . . . . . . . . . . . . 109--117
John Placer Multiparadigm research: a new direction of language design . . . . . . . . . . . 9--17 George H. Roberts A note on modifiable grammars . . . . . 18--18 George H. Roberts Searching in discrete universes . . . . 19--24 A. Fantechi and S. Gnesi and F. Leggio and P. Talini Executing the formal definition of Ada 25--34 Claudio Delrieux and Pablo Azero and Fernando Tohme Toward integrating imperative and logic programming paradigms: WYSIWYG approach to PROLOG programming . . . . . . . . . 35--44 Paul R. Wilson Some issues and strategies in heap management and memory hierarchies . . . 45--52 Erhard Konrad Software metrics, measurement theory, and viewpoints . . . . . . . . . . . . . 53--62 Chung-Shyan Liu On the object-orientedness of C++ . . . 63--67 Yen-Jen Oyang Exploiting multi-way branching to boost superscalar processor performance . . . 68--78 H. Dobler Top-down parsing in Coco-2 . . . . . . . 79--87 Janice C. Shepherd Why a two pass front end? . . . . . . . 88--94
Andrew Wolfe and John P. Shen A Variable Instruction Stream Extension to the VLIW Architecture . . . . . . . . 2--14 Manolis Katevenis and Nestoras Tzartzanis Reducing the Branch Penalty by Rearranging Instructions in Double-Width Memory . . . . . . . . . . . . . . . . . 15--27 Roland L. Lee and Alex Y. Kwok and Fayé A. Briggs The Floating-Point Performance of a Superscalar SPARC Processor . . . . . . 28--37 David Callahan and Ken Kennedy and Allan Porterfield Software Prefetching . . . . . . . . . . 40--52 Gurindar S. Sohi and Manoj Franklin High-Bandwidth Data Memory Systems for Superscalar Processors . . . . . . . . . 53--62 Monica S. Lam and Edward E. Rothberg and Michael E. Wolf The Cache Performance and Optimization of Blocked Algorithms . . . . . . . . . 63--74 Jeffrey C. Mogul and Anita Borg The Effect of Context Switches on Cache Performance . . . . . . . . . . . . . . 75--84 David Keppel A Portable Interface for On-the-Fly Instruction Space Modification . . . . . 86--95 Andrew W. Appel and Kai Li Virtual Memory Primitives for User Programs . . . . . . . . . . . . . . . . 96--107 Thomas E. Anderson and Henry M. Levy and Brian N. Bershad and Edward D. Lazowska The Interaction of Architecture and Operating System Design . . . . . . . . 108--120 David G. Bradlee and Susan J. Eggers and Robert R. Henry Integrating Register Allocation and Instruction Scheduling for RISCs . . . . 122--131 Manuel E. Benitez and Jack W. Davidson Code Generation for Streaming: An Access/Execute Mechanism . . . . . . . . 132--141 Rajiv Bagrodia and Sharad Mathur Efficient Implementation of High Level Parallel Programs . . . . . . . . . . . 142--151 William Mangione-Smith and Santosh G. Abraham and Edward S. Davidson Vector Register Design for Polycyclic Vector Scheduling . . . . . . . . . . . 154--163 David E. Culler and Anurag Sah and Klaus E. Schauser and Thorsten von Eicken and John Wawrzynek Fine-Grain Parallelism with Minimal Hardware Support: A Compiler-Controlled Threaded Abstract Machine . . . . . . . 164--175 David W. Wall Limits of Instruction-Level Parallelism 176--188 Edward K. Lee and Randy H. Katz Performance Consequences of Parity Placement in Disk Arrays . . . . . . . . 190--199 Vincent Cate and Thomas Gross Integration of Compression and Caching for a Two-Level File System . . . . . . 200--211 William J. Bolosky and Michael L. Scott and Robert P. Fitzgerald and Robert J. Fowler and Alan L. Cox NUMA Policies and Their Relation to Memory Architecture . . . . . . . . . . 212--221 David Chaiken and John Kubiatowicz and Anant Agarwal LimitLESS Directories: A Scalable Cache Coherence Scheme . . . . . . . . . . . . 224--234 Sang Lyul Min and Jong-Deok Choi An Efficient Cache-Based Access Anomaly Detection Scheme . . . . . . . . . . . . 235--244 Kourosh Gharachorloo and Anoop Gupta and John L. Hennessy Performance Evaluation of Memory Consistency Models for Shared Memory Multiprocessors . . . . . . . . . . . . 245--257 Eric Freudenthal and Allan Gottlieb Process Coordination with Fetch-and-Increment . . . . . . . . . . 260--268 John M. Mellor-Crummey and Michael L. Scott Synchronization without Contention . . . 269--278 Douglas Johnson The Case for a Read Barrier . . . . . . 279--287 Robert F. Cmelik and Shing I. Kong and David R. Ditzel and Edmund J. Kelly An Analysis of MIPS and SPARC Instruction Set Utilization on the SPEC Benchmarks . . . . . . . . . . . . . . . 290--301 (or 290--302??) C. Brian Hall and Kevin O'Brien Performance Characteristics of Architectural Features of the IBM RISC System/6000 . . . . . . . . . . . . . . 303--309 Dileep Bhandarkar and Douglas W. Clark Performance from Architecture: Comparing a RISC and a CISC with Similar Hardware Organization . . . . . . . . . . . . . . 310--319
Reginald Meeson Book Review: Data Abstraction and Object-Oriented Programming in C++ by Keith Gorlen, Sanford Orlow, and Perry Plexico: (John Wiley & Sons, 1990) . . . 25--26 Horst Zuse and Peter Bollmann Erhard Konrad: software metrics, measurement theory, and viewpoints-critical remarks on a new approach . . . . . . . . . . . . . . . . 27--36 Ellis S. Cohen Trip report: UIST'90 The Annual Symposium on User Interface Software and Technology Snowbird, Utah, October 3--5, 1990 . . . . . . . . . . . . . . . . . . 37--42 David J. McNally and Antony J. T. Davie Two models for integrating persistence and lazy functional languages . . . . . 43--52 G. L. Sicherman An Algorithmic Language for Database Operations . . . . . . . . . . . . . . . 53--58 Jan Rekers and Wilco Koorn Substring parsing for arbitrary context-free grammars . . . . . . . . . 59--66
Dror E. Maydan and John L. Hennessy and Monica S. Lam Efficient and exact data dependence analysis . . . . . . . . . . . . . . . . 1--14 Gina Goff and Ken Kennedy and Chau-Wen Tseng Practical dependence testing . . . . . . 15--29 Michael E. Wolf and Monica S. Lam A data locality optimizing algorithm . . 30--44 W. G. Morris CCG: a prototype coagulating code generator . . . . . . . . . . . . . . . 45--58 David W. Wall Predicting program behavior using real or estimated profiles . . . . . . . . . 59--70 Scott McFarling Procedure merging with instruction caches . . . . . . . . . . . . . . . . . 71--79 John Launchbury Strictness and binding-time analyses: two for the price of one . . . . . . . . 80--91 John Launchbury Strictness and binding-time analyses: two for the price of one . . . . . . . . 80--91 Charles Consel and Siau Cheng Khoo Parameterized partial evaluation . . . . 92--106 G. A. Venkatesh The semantic approach to program slicing 107--119 Deborah Whitfield and Mary Lou Soffa Automatic generation of global optimizers . . . . . . . . . . . . . . . 120--129 Siddhartha Chatterjee and Guy E. Blelloch and Allan L. Fisher Size and access inference for data-parallel programs . . . . . . . . . 130--144 Mark Bromley and Steven Heller and Tim McNerney and Guy L. Steele, Jr. Fortran at ten gigaflops: the Connection Machine convolution compiler . . . . . . 145--156 Mark Bromley and Steven Heller and Tim McNerney and Guy L. Steele, Jr. Fortran at ten gigaflops: the Connection Machine convolution compiler . . . . . . 145--156 Hans-J. Boehm and Alan J. Demers and Scott Shenker Mostly parallel garbage collection . . . 157--164 Benjamin Goldberg Tag-free garbage collection for strongly typed programming languages . . . . . . 165--176 Benjamin Goldberg Tag-free garbage collection for strongly typed programming languages . . . . . . 165--176 Paul R. Wilson and Michael S. Lam and Thomas G. Moher Effective ``static-graph'' reorganization to improve locality in garbage-collected systems . . . . . . . 177--191 Paul R. Wilson and Michael S. Lam and Thomas G. Moher Effective ``static-graph'' reorganization to improve locality in garbage-collected systems . . . . . . . 177--191 David Callahan and Brian Koblenz Register allocation via hierarchical graph coloring . . . . . . . . . . . . . 192--203 Guang R. Gao and Yue-Bong Wong and Qi Ning A timed Petri-net model for fine-grain loop scheduling . . . . . . . . . . . . 204--218 Guang R. Gao and Yue-Bong Wong and Qi Ning A timed Petri-net model for fine-grain loop scheduling . . . . . . . . . . . . 204--218 Suneel Jain Circular scheduling: a new technique to perform software pipelining . . . . . . 219--228 David G. Bradlee and Robert R. Henry and Susan J. Eggers The Marion system for retargetable instruction scheduling . . . . . . . . . 229--240 David Bernstein and Michael Rodeh Global instruction scheduling for superscalar machines . . . . . . . . . . 241--255 Todd A. Proebsting and Charles N. Fischer Linear-time, optimal code scheduling for delayed-load architectures . . . . . . . 256--267 Todd A. Proebsting and Charles N. Fischer Linear-time, optimal code scheduling for delayed-load architectures . . . . . . . 256--267 Tim Freeman and Frank Pfenning Refinement types for ML . . . . . . . . 268--277 Robert Cartwright and Mike Fagan Soft typing . . . . . . . . . . . . . . 278--292 John H. Reppy CML: A higher concurrent language . . . 293--305 Joxan Jaffar and Spiro Michaylov and Roland H. C. Yap A methodology for managing hard constraints in CLP systems . . . . . . . 306--316 Peter Fritzson and Tibor Gyimothy and Mariam Kamkar and Nahid Shahmehri Generalized algorithmic debugging and testing . . . . . . . . . . . . . . . . 317--326 Yves Bertot Occurrences in debugger specifications 327--337 Amir Kishon and Paul Hudak and Charles Consel Monitoring semantics: a formal framework for specifying, implementing, and reasoning about execution monitors . . . 338--352
Alexandru Nicolau and Haigeng Wang Optimal schedules for parallel prefix computation with bounded resources . . . 1--10 J. Allan Yang and Young-il Choo Parallel-program transformation using a metalanguage . . . . . . . . . . . . . . 11--20 Hester Bakewell and Donna J. Quammen and Pearl Y. Wang Mapping concurrent programs to VLIW processors . . . . . . . . . . . . . . . 21--27 Lee-Chung Lu A unified framework for systematic loop transformations . . . . . . . . . . . . 28--38 Corinne Ancourt and François Irigoin Scanning polyhedra with DO loops . . . . 39--50 V. P. Krothapalli and P. Sadayappan Removal of redundant dependences in DOACROSS loops with constant dependences 51--60 Dz-Ching Ju and Wai-Mee Ching Exploitation of APL data parallelism on a shared-memory MIMD machine . . . . . . 61--72 Philip J. Hatcher and Anthony J. Lapadula and Robert R. Jones and Michael J. Quinn and Ray J. Anderson A production-quality C* compiler for Hypercube multicomputers . . . . . . . . 73--82 Vítor Santos Costa and David H. D. Warren and Rong Yang Andorra I: a parallel Prolog system that transparently exploits both And-and or-parallelism . . . . . . . . . . . . . 83--93 Monica S. Lam and Martin C. Rinard Coarse-grain parallel programming in Jade . . . . . . . . . . . . . . . . . . 94--105 John M. Mellor-Crummey and Michael L. Scott Scalable reader-writer synchronization for shared-memory multiprocessors . . . 106--113 Michael J. Feeley and Brian N. Bershad and Jeffrey S. Chase and Henry M. Levy Dynamic node reconfiguration in a parallel-distributed environment . . . . 114--121 Richard P. LaRowe, Jr. and James T. Wilkes and Carla S. Ellis Exploiting operating system support for dynamic page placement on a NUMA shared memory multiprocessor . . . . . . . . . 122--132 Robert H. B. Netzer and Barton P. Miller Improving the Accuracy of Data Race Detection . . . . . . . . . . . . . . . 133--144 Jong-Deok Choi and Sang Lyul Min Race Frontier: reproducing data races in parallel-program debugging . . . . . . . 145--154 David F. Bacon and Robert E. Strom Optimistic parallelization of communicating sequential processes . . . 155--166 H. T. Kung and Peter Steenkiste and Marco Gubitoso and Manpreet Khaira Parallelizing a new class of large applications over high-speed networks 167--177 Ulrike Meier and Rudolf Eigenmann Parallelization and performance of Conjugate Gradient algorithms on the Cedar hierarchical-memory multiprocessor 178--188 Jeffrey K. Hollingsworth and R. Bruce Irvin and Barton P. Miller The integration of application and system based metrics in a parallel program performance tool . . . . . . . . 189--200 Allen D. Malony Event-based performance perturbation: a case study . . . . . . . . . . . . . . . 201--212 Vasanth Balasundaram and Geoffrey Fox and Ken Kennedy and Ulrich Kremer A static performance estimator to guide data partitioning decisions . . . . . . 213--223
Richard C. Waters System validation via constraint modeling . . . . . . . . . . . . . . . . 27--36 Markku Sakkinen Another defense of enumerated types . . 37--41 Randy M. Kaplan The IL programming language . . . . . . 42--49 Jürgen Heymann A comprehensive analytical model for garbage collection algorithms . . . . . 50--59 J. Kempe and T. Lenz and B. Freitag and H. Shütz and G. Specht CL/TB an allegro common Lisp programming interface for TransBase . . . . . . . . 60--69 Charles Fiterman Multiple view programming languages . . 70--73 Diomidis Spinellis Type-safe Linkage for Variables and Functions . . . . . . . . . . . . . . . 74--79 J. Dana Eckart A cellular automata simulation system 80--85 Robert McLaughlin Thoughts on large scale programming projects . . . . . . . . . . . . . . . . 86--89 Paul Butcher and Hussein Zedan Lucinda --- an overview . . . . . . . . 90--100 Yutaka Ishikawa Reflection facilities and realistic programming . . . . . . . . . . . . . . 101--110 Tadeusz Gru\'zlewski and Zbigniew Weiss Semantic correctness of structural editing . . . . . . . . . . . . . . . . 111--120 K. C. Wong Detection of version features in distributed systems . . . . . . . . . . 121--127 Kei Yuasa A browsing interface for S-expressions 128--136 Stephen MacDonell Reliance on correlation data for complexity metric use and validation . . 137--144 Henry G. Baker Shallow binding makes functional arrays fast . . . . . . . . . . . . . . . . . . 145--147 Hermann von Issendorff A theory of organization . . . . . . . . 148--150
Akihiko Takano Generalized partial computation for a lazy functional language . . . . . . . . 1--11 Alexander Romanenko Inversion and metacomputation . . . . . 12--22 Dan Sahlin Determinacy analysis for full Prolog . . 23--30 Björn Lisper Detecting static algorithms by partial evaluation . . . . . . . . . . . . . . . 31--42 Timothy J. Hickey and Donald A. Smith Toward the partial evaluation of CLP languages . . . . . . . . . . . . . . . 43--51 Agostino Cortesi and Gilbert Filé Abstract interpretation of logic programs: an abstract domain for groundness, sharing, freeness and compoundness analysis . . . . . . . . . 52--61 Donald A. Smith Partial evaluation of pattern matching in constraint logic programming languages . . . . . . . . . . . . . . . 62--71 David Sherman and Robert Strandh and Ir\`ene Durand Optimization of equational programs using partial evaluation . . . . . . . . 72--82 R. S. Sundaresh Building incremental programs using partial evaluation . . . . . . . . . . . 83--93 Uwe Meyer Techniques for partial evaluation of imperative languages . . . . . . . . . . 94--105 Timothy S. McNerney Verifying the correctness of compiler transformations on basic blocks using abstract interpretation . . . . . . . . 106--115 Zena M. Ariola A syntactic approach to program transformations . . . . . . . . . . . . 116--129 John Hannan Staging transformations for abstract machines . . . . . . . . . . . . . . . . 130--141 Anne De Niel and Eddy Bevers and Karel De Vlaminck Program bifurcation for a polymorphically typed functional language . . . . . . . . . . . . . . . . 142--153 Sebastian Hunt and David Sands Binding time analysis: a new PERspective 154--165 Carsten K. Gomard and Peter Sestoft Globalization and live variables . . . . 166--177 Young Gil Park and Benjamin Goldberg Reference escape analysis: optimizing reference counting based on the lifetime of references . . . . . . . . . . . . . 178--189 Olin Shivers The semantics of Scheme control-flow analysis . . . . . . . . . . . . . . . . 190--198 Andrei V. Klimov Dynamic specialization in extended functional language with monotone objects . . . . . . . . . . . . . . . . 199--210 Siau Cheng Khoo and R. S. Sundaresh Compiling inheritance using partial evaluation . . . . . . . . . . . . . . . 211--222 Carsten Kehler Holst and Darsten Krogh Gomard Partial evaluation is fuller laziness 223--233 Robert Muller M-LISP: its natural semantics and equational logic . . . . . . . . . . . . 234--242 Torben Amtoft Hansen Properties of unfolding-based meta-level systems . . . . . . . . . . . . . . . . 243--254 Philip Wadler Is there a use for linear logic? . . . . 255--273 Maurizio Proietti and Alberto Pettorossi Semantics preserving transformation rules for Prolog . . . . . . . . . . . . 274--284 Spiro Michaylov and Frank Pfenning Compiling the polymorphic $\lambda$-calculus . . . . . . . . . . . 285--296 Ian A. Mason and Carolyn L. Talcott Program transformations for configuring components . . . . . . . . . . . . . . . 297--308 Robert Glück Towards multiple self-application . . . 309--320 Erik Ruf and Daniel Weise Using types to avoid redundant specialization . . . . . . . . . . . . . 321--333
Audrey A. Hook Book Review: The Software Factory: Managing Software Development and Maintenance (2nd. Ed) by James R. Johnson: (QED Information Sciences, Inc. 1991) . . . . . . . . . . . . . . . . . 8--8 G. Alan Creak Garbage-further investigations . . . . . 9--10 Haim Kilov Objects concepts and bibliography . . . 11--12 Jean Pierre LeJacq Function preconditions in object oriented software . . . . . . . . . . . 13--18 B. Carpentieri and G. Mou Compile-time transformations and optimization of parallel Divide-and-Conquer algorithms . . . . . 19--28 Christopher W. Fraser A retargetable compiler for ANSI C . . . 29--43 L. S. Tang C++'s destructors can be destructive . . 44--52 Noel Craske SNOOPS: An object-oriented language enhancement supporting dynamic program reconfiguration . . . . . . . . . . . . 53--63 Michael L. Nelson Concurrency & object-oriented programming 63--72 Ilka Miloucheva and Hans Loeper Compiler structure engineering with attribute grammars . . . . . . . . . . . 73--82 C. K. Yuen Which model of programming for LISP: sequential, functional or mixed? . . . . 83--92
Craig Chambers and David Ungar Making pure object-oriented languages practical . . . . . . . . . . . . . . . 1--15 Ravi Sharma and Mary Lou Soffa Parallel generational garbage collection 16--32 Barry Hayes Using key object opportunism to collect old objects . . . . . . . . . . . . . . 33--46 Richard Helm and Yoëlle S. Maarek Integrating information retrieval and domain specific approaches for browsing and retrieval in object-oriented class libraries . . . . . . . . . . . . . . . 47--61 Eric Gold and Mary Beth Rosson Portia: an instance-centered environment for Smalltalk . . . . . . . . . . . . . 62--74 Joseph A. Konstan and Lawrence A. Rowe Developing a GUIDE using object-oriented programming . . . . . . . . . . . . . . 75--88 Nuno Guimarães Building generic user interface tools: an experience with multiple inheritance 89--96 Simon Gibbs Composite multimedia and active objects 97--112 Rakesh Agrawal and Linda G. Demichiel and Bruce G. Lindsay Static type checking of multi-methods 113--128 Giorgio Ghelli A static type system for message passing 129--145 Jens Palsberg and Michael I. Schwartzbach Object-oriented type inference . . . . . 146--161 David R. Reed and Marty Cagan and Ted Goldstein and Barbara Moo Issues in moving from C to C++ . . . . . 163--165 Pierre America and Derek Coleman and Roger Duke and Doug Lea and Gary Leavens Formal techniques for OO software development . . . . . . . . . . . . . . 166--170 Fiona Hayes and Derek Coleman Coherent models for object-oriented analysis . . . . . . . . . . . . . . . . 171--183 John A. Lewis and Sallie M. Henry and Dennis G. Kafura and Robert S. Schulman An empirical study of the object-oriented paradigm and software reuse . . . . . . . . . . . . . . . . . 184--196 Shyam R. Chidamber and Chris F. Kemerer Towards a metrics suite for object oriented design . . . . . . . . . . . . 197--211 Jean-Marc Andreoli and Remo Pareschi Communication as fair distribution of knowledge . . . . . . . . . . . . . . . 212--229 Sergui S. Simmel and Ivan Godard The Kala basket: a semantic primitive unifying object transactions, access control, versions, and configurations 230--246 Rahim Yaseen and Stanley Y. W. Su and Herman Lam An extensible kernel object management system . . . . . . . . . . . . . . . . . 247--263 Martin Griss and Sam S. Adams and Howard Baetjer, Jr. and Brad J. Cox and Adele Goldberg The economics of software reuse . . . . 264--270 John Hogg Islands: aliasing protection in object-oriented languages . . . . . . . 271--285 Michael R. Wilk Equate: an object-oriented constraint solver . . . . . . . . . . . . . . . . . 286--298 Paul L. Bergstein Object-preserving class transformations 299--313 Eric N. Hanson and Tina M. Harvey and Mark A. Roth Experiences in DBMS implementation using an object-oriented persistent programming language and a database toolkit . . . . . . . . . . . . . . . . 314--328 Dan Benson and Greg Zick Symbolic and spatial database for structural biology . . . . . . . . . . . 329--339 Ivar Jacobson and Fredrik Lindström Reengineering of old systems to an object-oriented architecture . . . . . . 340--350 Daniel Bobrow and Carl Hewitt and Jean-François Perror and Reid Smith and Howard Shrobe OOP and AI . . . . . . . . . . . . . . . 351--354 Nelson Hazeltine and Tim Higenberg and Reed Philip and David Taylor Managing the transition to object-oriented technology . . . . . . . 355--358 Alan Snyder How to get your paper accepted at OOPSLA 359--363
Allen D. Malony and Daniel A. Reed Models for Performance Perturbation Analysis . . . . . . . . . . . . . . . . 15--25 Jong-Deok Choi and Janice M. Stone Balancing Runtime and Replay Costs in a Trace-and-Replay System . . . . . . . . 26--35 Victor Jon Griswold Core Algorithms for Autonomous Monitoring of Distributed Systems . . . 36--45 Dror Zernik and Larry Rudolph Animating Work and Time for Debugging Parallel Programs Foundation and Experience . . . . . . . . . . . . . . . 46--56 Carol Kilpatrick and Karsten Schwan ChaosMON --- Application-Specific Monitoring and Display of Performance Information for Parallel and Distributed Systems . . . . . . . . . . . . . . . . 57--67 Joan M. Francioni and Larry Albright and Jay Alan Jackson Debugging Parallel Programs Using Sound 68--75 David P. Helmbold and Charles E. McDowell Computing Reachable States of Parallel Programs . . . . . . . . . . . . . . . . 76--84 Anne Dinning and Edith Schonberg Detecting Access Anomalies in Programs with Critical Sections . . . . . . . . . 85--96 Stephen P. Masticola and Barbara G. Ryder A Model of Ada Programs for Static Deadlock Detection in Polynomial Time 97--107 Patricia Prather Pineo and Mary Lou Soffa Debugging Parallelized Code Using Code Liberation Techniques . . . . . . . . . 108--119 Andrew P. Tolmach and Andrew W. Appel Debuggable Concurrency Extensions for Standard ML . . . . . . . . . . . . . . 120--131 Robert Cohn Source Level Debugging of Automatically Parallelized Code . . . . . . . . . . . 132--143 Arthur P. Goldberg and Ajei Gopal and Andy Lowry and Rob Strom Restoring Consistent Global States of Distributed Computations . . . . . . . . 144--154 Madalene Spezialetti An Approach to Reducing Delays in Recognizing Distributed Event Occurrences . . . . . . . . . . . . . . 155--166 Robert Cooper and Keith Marzullo Consistent Detection of Global Predicates . . . . . . . . . . . . . . . 167--174 Michael M. Gorlick The Flight Recorder: An Architectural Aid for System Monitoring . . . . . . . 175--183 Bernd Bruegge A Portable Platform for Distributed Event Environments . . . . . . . . . . . 184--193 David F. Bacon and Seth Copen Goldstein Hardware-Assisted Replay of Multiprocessor Programs . . . . . . . . 194--206
Audrey A. Hook Book Review: Selecting an Ada Compilation System Edited by J. Dawes, M. J. Pickett, and A. Wearing: (Cambridge University Press 1990) . . . 13--13 J. A. N. Lee Book Review: The Rationale for the Design of the Ada Programming Language, The Ada Companion Series by J. ichbiah, J. Barnes, R. Firth, and M. Woodger.: (Cambridge University Press, Cambridge, UK) . . . . . . . . . . . . . . . . . . 14--14 Boris Burshteyn USSA: Universal Syntax and Semantics Analyzer . . . . . . . . . . . . . . . . 42--60 W. Kahan Analysis and Refutation of the LCAS . . 61--74 Bernard Thirion Edison, a Unix and C friendly Rete based production system . . . . . . . . . . . 75--84 Pei-Chi Wu and Feng-Jian Wang An object-oriented specification for compiler . . . . . . . . . . . . . . . . 85--94 H. G. Baker Computing $A * B \pmod{N}$ efficiently in ANSI C . . . . . . . . . . . . . . . 95--98 Henry G. Baker Computing A*B (mod N) efficiently in ANSI C . . . . . . . . . . . . . . . . . 95--98 D. C. Ince Arrays and pointers considered harmful 99--104 Antonio L. Furtado Analogy by generalization --- and the quest of the grail . . . . . . . . . . . 105--113 Cyrus F. Nourani Parallel module specification on SLPX 114--115
Alan Wexelblat Book Review: The Art of the Meta-Object Protocol by Gregor Kiczales, Jim des Rivieres, and Daniel G. Bobrow: (MIT Press, 1991) . . . . . . . . . . . . . . 9--9 Bret Michael Book Review: A Unifying Framework for Structured Analysis and Design Models by T. H. Tse: (Cambridge University Press, 1991) . . . . . . . . . . . . . . . . . 10--11 Juan Hernández and Juan Antonio Sanchez RT-MODULA2: an embedded in MODULA2 language for writing concurrent and real time programs . . . . . . . . . . . . . 26--36 Mouloud Arab Enhancing program comprehension: formatting and documenting . . . . . . . 37--46 J. M. Gwinn Object-oriented programs in realtime . . 47--56 Steven Ryan Linear control flow analysis . . . . . . 57--64 John Placer Integrating destructive assignment and lazy evaluation in the multiparadigm language G-2 . . . . . . . . . . . . . . 65--74 Rizaldo B. Caringal and Phan Minh Dung A FORTRAN IV to QuickBASIC translator 75--87 T. J. Parr and H. G. Dietz and W. E. Cohen PCCTS reference manual: version 1.00 . . 88--165
Henry G. Baker, Jr. CONS Should Not CONS its Arguments, or, A Lazy Alloc is a Smart Alloc . . . . . 24--34 Daniel J. Salomon Four Dimensions of programming-language independence . . . . . . . . . . . . . . 35--53 Salvatore Mamone Empirical study of motivation in a entry level programming course . . . . . . . . 54--60 J. M. Watt A compact syntax chart for Ada . . . . . 61--65 Henry G. Baker The treadmill: real-time garbage collection without motion sickness . . . 66--70 Thomas A. Anastasio and William W. Carlson An observation on the C library procedure \tt random() . . . . . . . . . 71--74
James Bret Michael Book Review: Discrete Mathematics: An Introduction for Software Engineers, by Mike Piff: (Cambridge University Press, 1991) . . . . . . . . . . . . . . . . . 10--10 Ian Gladwell Book Review: Fortran 90 Explained by M. Metcalf and J. Reid: (Oxford Science) 11--11 Pei-Chi Wu and Feng-Jian Wang and Kai-Ru Young Scanning regular languages by dual finite automata . . . . . . . . . . . . 12--16 Jürgen Angele and Detlef Küpper Modula-2 an alternative to C? . . . . . 17--26 Norman Young Two models of object-oriented programming and the Common Lisp Object System . . . . . . . . . . . . . . . . . 27--36 Michel Gauthier Noised or filtered programming? (about enumerated types) . . . . . . . . . . . 37--40 Edward A. Ipser, Jr. Exploratory language design . . . . . . 41--50 Ronald Fischer Two flaws of the current C++ language definition . . . . . . . . . . . . . . . 51--54 Steven Ryan Linear expression bounding . . . . . . . 55--58 Steven Ryan Linear data flow analysis . . . . . . . 59--67 Christopher W. Fraser and Robert R. Henry and Todd A. Proebsting BURG: fast optimal instruction selection and tree parsing . . . . . . . . . . . . 68--76 Peter N. van den Bosch A bibliography on syntax error handling in context free languages . . . . . . . 77--86 Andrew W. Appel Is POPL mathematics or science? . . . . 87--89
Paul Hudak and Joseph H. Fasel A gentle introduction to Haskell . . . . 1--52 Paul Hudak and Simon Peyton Jones and Philip Wadler and Brian Boutel and Jon Fairbairn and Joseph Fasel and María M. Guzmán and Kevin Hammond and John Hughes and Thomas Johnsson and Dick Kieburtz and Rishiyur Nikhil and Will Partain and John Peterson Report on the programming language Haskell: a non-strict, purely functional language (Version 1.2) . . . . . . . . . Ri--Rx, R1--R163
James Bret Michael Book Review: Verifying Temporal Properties of Systems, by Julian Charles Bradfield: (Birkhäuser Boston, Cambridge, Massachusetts, 1992) . . . . . . . . . . 8--8 Reginald Meeson Book Review: Implementation of Functional Multiprocessors by O. Boudillet, J. P. Gupta, and S. C. Winter: (John Wiley & Sons Inc. 1991) . . 9--9 Rommert J. Casimir Real programmers don't use spreadsheets 10--16 Jon Cargille and Barton P. Miller Binary wrapping: a technique for instrumenting object code . . . . . . . 17--18 Burt Leavenworth Proxy: an interpreter for rapid prototyping . . . . . . . . . . . . . . 19--28 Marc Sabatella Lazy evaluation of C++ static constructors . . . . . . . . . . . . . . 29--36 K. Coolsaet A quick introduction to the programming language MIKE . . . . . . . . . . . . . 37--46 José M. García Carrasco A new language for multicomputer programming . . . . . . . . . . . . . . 47--53 Ronald E. Prather The semantics of CAT . . . . . . . . . . 54--63 Corporate X3J16 Working Group on Extensions How to write a C++ language extension proposal for ANSI-X3J16/ISO-WG21 . . . . 64--71 Richard A. Frost Guarded attribute grammars: top down parsing and left recursive productions 72--75 Carl Ponder and Bill Bush Polymorphism considered harmful . . . . 76--79 R. P. Mody On understanding type declarations in C 80--83 Markku Sakkinen Where is the evidence against arrays and pointers? . . . . . . . . . . . . . . . 84--85
Gary Brooks and Gilbert J. Hansen and Steve Simmons A new approach to debugging optimized code . . . . . . . . . . . . . . . . . . 1--11 Rok Sosi\vc Dynascope. A tool for program directing 12--21 Norman Ramsey and David R. Hanson A retargetable debugger . . . . . . . . 22--31 Urs Hölzle and Craig Chambers and David Ungar Debugging optimized code with dynamic deoptimization . . . . . . . . . . . . . 32--43 Kazuhiro Ogata and Satoshi Kurihara and Mikio Inari and Norihisa Doi The design and implementation of HoME 44--54 Suresh Jagannathan and Jim Philbin A customizable substrate for concurrent languages . . . . . . . . . . . . . . . 55--67 David B. Wortman and Michael D. Junkin A concurrent compiler for Modula-2+ . . 68--81 Steven W. K. Tjiang and John L. Hennessy Sharlit --- a tool for building optimizers . . . . . . . . . . . . . . . 82--93 Marina Chen and James Cowie Prototyping Fortran-90 compilers for massively parallel machines . . . . . . 94--105 Jichang Tan and I-Peng Lin Compiling dataflow analysis of logic programs . . . . . . . . . . . . . . . . 106--115 Young Gil Park and Benjamin Goldberg Escape analysis on lists . . . . . . . . 116--127 Joxan Jaffar and Peter J. Stuckey and Spiro Michaylov and Roland H. C. Yap An abstract machine for CLP$(\mathcal{R})$ . . . . . . . . . . . 128--139 William Pugh and David Wonnacott Eliminating false data dependences using the Omega test . . . . . . . . . . . . . 140--151 Vadim Maslov Delinearization: an efficient way to break multiloop dependence equations . . 152--161 Michael Wolfe Beyond induction variables . . . . . . . 162--174 Vivek Sarkar and Radhika Thekkath A general framework for iteration-reordering loop transformations . . . . . . . . . . . . 175--187 Reinhard v. Hanxleden and Ken Kennedy Relaxing SIMD control flow constraints using loop transformations . . . . . . . 188--199 Reinhard von Hanxleden and Ken Kennedy Relaxing SIMD control flow constraints using loop transformations . . . . . . . 188--199 Steven Lucco A dynamic scheduling method for irregular parallel programs . . . . . . 200--211 Dhananjay M. Dhamdhere and Barry K. Rosen and F. Kenneth Zadeck How to analyze large programs efficiently and informatively . . . . . 212--223 Jens Knoop and Oliver Rüthing and Bernhard Steffen Lazy code motion . . . . . . . . . . . . 224--234 William Landi and Barbara G. Ryder A safe approximate algorithm for interprocedural aliasing . . . . . . . . 235--248 Laurie J. Hendren and Joseph Hummel and Alexandru Nicolau Abstractions for recursive pointer data structures. Improving the analysis and transformation of imperative programs 249--260 Roger Hoover Alphonse: Incremental computation as a programming abstraction . . . . . . . . 261--272 Amer Diwan and Eliot Moss and Richard Hudson Compiler support for garbage collection in a statically typed language . . . . . 273--282 B. R. Rau and M. Lee and P. P. Tirumalai and M. S. Schlansker Register allocation for software pipelined loops . . . . . . . . . . . . 283--299 Todd A. Proebsting and Charles N. Fischer Probabilistic register allocation . . . 300--310 Preston Briggs and Keith D. Cooper and Linda Torczon Rematerialization . . . . . . . . . . . 311--321 Frank Mueller and David B. Whalley Avoiding unconditional jumps by code replication . . . . . . . . . . . . . . 322--330 Todd A. Proebsting Simple and efficient BURS table generation . . . . . . . . . . . . . . . 331--340 Torbjörn Granlund and Richard Kenner Eliminating branches using a superoptimizer and the GNU C compiler 341--352
Reginald Meeson Book Review: ML for the Working Programmer by Laurence C. Paulson: (Cambridge University Press, 429 pp., 1991) . . . . . . . . . . . . . . . . . 14--14 Luca Cardelli and James Donahue and Lucille Glassman and Mick Jordan and Bill Kalsow and Greg Nelson Modula-3 language definition . . . . . . 15--42 Lutz H. Hamel Industrial strength compiler construction with equations . . . . . . 43--50 Andy Lowry The Hermes language in outline form . . 51--70 C. K. Yuen Hamming numbers, lazy evaluation, and eager disposal . . . . . . . . . . . . . 71--75 Nico Plat and Peter Gorm Larsen An overview of the ISO/VDM-SL standard 76--82 Hanspeter Mössenböck Treating statement sequences as block objects . . . . . . . . . . . . . . . . 83--86 Paul W. Abrahams Software patents: an example of the threat . . . . . . . . . . . . . . . . . 87--88 Henry G. Baker Lively linear Lisp: ``look ma, no garbage!'' . . . . . . . . . . . . . . . 89--98 J. Dana Eckart A cellular automata simulation system: version 2.0 . . . . . . . . . . . . . . 99--106 J. Dana Eckart Cellang 2.0: language reference manual 107--112
Michael Burrows and Charles Jerian and Butler Lampson and Timothy Mann On-line data compression in a log-structured file system . . . . . . . 2--9 Mary Baker and Satoshi Asami and Etienne Deprit and John Ousterhout and Margo Seltzer Non-volatile memory for fast, reliable file systems . . . . . . . . . . . . . . 10--22 Mark Holland and Garth A. Gibson Parity declustering for continuous operation in redundant disk arrays . . . 23--35 Anne Rogers and Kai Li Software support for speculative loads 38--50 Tien-Fu Chen and Jean-Loup Baer Reducing memory latency via non-blocking and prefetching caches . . . . . . . . . 51--61 Todd C. Mowry and Monica S. Lam and Anoop Gupta Design and evaluation of a compiler algorithm for prefetching . . . . . . . 62--73 Shien-Tai Pan and Kimming So and Joseph T. Rahmeh Improving the accuracy of dynamic branch prediction using branch correlation . . 76--84 Joseph A. Fisher and Stefan M. Freudenberger Predicting conditional branch directions from previous runs of a program . . . . 85--95 Thomas E. Anderson and Susan S. Owicki and James B. Saxe and Charles P. Thacker High speed switch scheduling for local area networks . . . . . . . . . . . . . 98--110 Dana S. Henry and Christopher F. Joerg A tightly-coupled processor-network interface . . . . . . . . . . . . . . . 111--122 Bob Wheeler and Brian N. Bershad Consistency management for virtually indexed caches . . . . . . . . . . . . . 124--136 Tzi-cker Chiueh and Randy H. Katz Eliminating the address translation bottleneck for physical address cache 137--148 Jack E. Veenstra and Robert J. Fowler A performance evaluation of optimal hybrid cache coherency protocols . . . . 149--160 Josep Torrellas and Anoop Gupta and John Hennessy Characterizing the caching and synchronization performance of a multiprocessor operating system . . . . 162--174 Eric J. Koldinger and Jeffrey S. Chase and Susan J. Eggers Architecture support for single address space operating systems . . . . . . . . 175--186 Kieran Harty and David R. Cheriton Application-controlled physical memory using external page-cache management . . 187--197 Robert Wahbe Efficient data breakpoints . . . . . . . 200--212 Kristy Andrews and Duane Sand Migrating a CISC computer family onto RISC via object code translation . . . . 213--222 Brian N. Bershad and David D. Redell and John R. Ellis Fast mutual exclusion for uniprocessors 223--233 Scott A. Mahlke and William Y. Chen and Wen-mei W. Hwu and B. Ramakrishna Rau and Michael S. Schlansker Sentinel scheduling for VLIW and superscalar processors . . . . . . . . . 238--247 Michael D. Smith and Mark Horowitz and Monica S. Lam Efficient superscalar performance through boosting . . . . . . . . . . . . 248--259 Mark D. Hill and James R. Larus and Steven K. Reinhardt and David A. Wood Cooperative shared memory: software and hardware for scalable multiprocessor . . 262--273 John Kubiatowicz and David Chaiken and Anant Agarwal Closing the window of vulnerability in multiphase memory transactions . . . . . 274--284 Wei Li and Keshav Pingali Access normalization: loop restructuring for NUMA compilers . . . . . . . . . . . 285--295
William R. Cook Interfaces and Specifications for the Smalltalk-80 Collection Classes . . . . 1--15 R. Ducournau and M. Habib and M. Huchard and Marie-Laure Mugnier Monotonic Conflict Resolution Mechanisms for Inheritance . . . . . . . . . . . . 16--24 Harold Ossher and William H. Harrison Combination of Inheritance Hierarchies 25--40 Paul McCollough and Bob Atkinson and Adele Goldberg and Martin Griss and John Morrison Reuse (panel): truth or fiction . . . . 41--44 Paul McCullough and Robert G. Atkinson and Adele Goldberg and Martin L. Griss and John Morrison Reuse: Truth or Fiction (Panel) . . . . 41--44 Dennis de Champeaux and Doug Lea and Penelope Faure The Process of Object-Oriented Design 45--62 Ralph E. Johnson Documenting Frameworks using Patterns 63--76 Chamond Liu and Stephen Goetze and Bill Glynn What Contributes to Successful Object-Oriented Learning? . . . . . . . 77--86 David Bulman and S. Tucker Taft and Bertrand Meyer and Greg Nelson and Mike Kilian OOP in Languages Providing Strong, Static Typing (Panel) . . . . . . . . . 87--87 S. Tucker Taft Position paper for OOPSLA '92 panel on OOP for languages based on strong, static typing . . . . . . . . . . . . . 88--88 Bertrand Meyer Ensuring strong typing in an object-oriented language (abstract) . . 89--90 Michael F. Kilian Trellis: what we have learned from a strongly typed language . . . . . . . . 91--91 Antony L. Hosking and J. Eliot B. Moss and Darko Stefanovic A Comparative Performance Evaluation of Write Barrier Implementations . . . . . 92--109 Pascal André and Jean-Claude Royer Optimizing method search with lookup caches and incremental coloring . . . . 110--126 Jean-Claude Royer Optimizing Method Search with Lookup Caches and Incremental Coloring . . . . 110--126 Hidehiko Masuhara and Satoshi Matsuoka and Takuo Watanabe and Akinori Yonezawa Object-Oriented Concurrent Reflective Languages can be Implemented Efficiently 127--144 Rick DeNatale and Grady Booch and Peter Coad and Dave A. Thomas and John Tibbets The Role of Methods and CASE in OO Development (Panel) . . . . . . . . . . 145--145 Michael F. Wangler and Peeter Hansen Visualizing Objects: Methods for Exploring Human Computer Interaction Concepts . . . . . . . . . . . . . . . . 146--153 Paul R. Calder and Mark A. Linton The Object-Oriented Implementation of a Document Editor . . . . . . . . . . . . 154--165 Thomas Eggenschwiler and Erich Gamma ET++SwapsManager: using object technology in the financial engineering domain . . . . . . . . . . . . . . . . . 166--177 Thomas Eggenschwiler and Erich Gamma ET++ Swaps Manager: Using Object Technology in the Financial Engineering Domain . . . . . . . . . . . . . . . . . 166--177 James F. Walsh Preliminary defect data from the iterative development of a large C++ program (experience report) . . . . . . 178--183 Brad A. Myers and Dario A. Giuse and Brad T. Vander Zanden Declarative Programming in a Prototype-Instance System: Object-Oriented Programming Without Writing Methods . . . . . . . . . . . . 184--200 Christophe Dony and Jacques Malenfant and Pierre Cointe Prototype-Based Languages: From a New Taxonomy to Constructive Proposals and Their Validation . . . . . . . . . . . . 201--217 Bruce Horn Constraint Patterns As a Basis for Object-Oriented Programming . . . . . . 218--233 Phillip M. Yelland Experimental Classification Facilities for Smalltalk . . . . . . . . . . . . . 235--246 Michael J. Feeley and Henry M. Levy Distributed Shared Memory with Versioned Objects . . . . . . . . . . . . . . . . 247--262 Joel Richardson and Peter Schwarz and Luis-Felipe Cabrera CACL: Efficient Fine-Grained Protection for Objects . . . . . . . . . . . . . . 263--275 Kazunori Takashio and Mario Tokoro DROL: An Object-Oriented Programming Language for Distributed Real-Time Systems . . . . . . . . . . . . . . . . 276--294 Larry L. Constantine and Ivar Jacobson and Meilir Page-Jones and John Palmer and Steven Weiss From Events to Objects: The Heresy of Event-Orientation in a World of Objects (Panel) . . . . . . . . . . . . . . . . 295--297 Larry L. Constantine and Ivar Jacobson and Meilir Page-Jones and John Palmer and Steven Weiss From events to objects (panel): the heresy of event-orientation in a world of objects . . . . . . . . . . . . . . . 295--297 Webb Stacy and Richard Helm and Gail E. Kaiser and Bertrand Meyer Ensuring Semantic Integrity of Reusable Objects (Panel) . . . . . . . . . . . . 298--302 Yutaka Ishikawa Communication Mechanism on Autonomous Objects . . . . . . . . . . . . . . . . 303--314 Ichiro Satoh and Mario Tokoro A Formalism for Real-Time Concurrent Object-Oriented Computing . . . . . . . 315--326 Klaus-Peter Löhr Concurrency Annotations . . . . . . . . 327--340 Mehmet Aksit and Lodewijk Bergmans Obstacles in Object-Oriented Software Development . . . . . . . . . . . . . . 341--358 Bernd Bruegge and Jim Blythe and Jeffrey Jackson and Jeff Shufelt Object-Oriented System Modeling with OMT 359--376 Dennis de Champeaux and Al Anderson and Ed Feldhousen Case Study of Object-Oriented Software Development . . . . . . . . . . . . . . 377--391 Peter Wegner and William L. Scherlis and James M. Purtilo and David C. Luckham and Ralph E. Johnson Object-Oriented Megaprogramming (Panel) 392--396 Jeffrey S. Chase and Henry M. Levy and Edward D. Lazowska and Miche Baker-Harvey Lightweight Shared Objects in a 64-Bit Operating System . . . . . . . . . . . . 397--413 Yasuhiko Yokote The Apertos Reflective Operating System: The Concept and its Implementation . . . 414--434 Gregor Kiczales and John Lamping Issues in the Design and Documentation of Class Libraries . . . . . . . . . . . 435--451 Gregor Kiczales and John Lamping Issues in the design and specification of class libraries . . . . . . . . . . . 435--451 Stephen W. Clyde and David E. Embley and Scott N. Woodfield Tunable Formalism in Object-Oriented Systems Analysis: Meeting the Needs of Both Theoreticians and Practitioners . . 452--465 Raymond J. A. Buhr and Ronald S. Casselman Architectures with Pictures . . . . . . 466--483 Dennis de Champeaux and Robert Balzer and Dave Bulman and Kathleen Culver-Lozo and Ivar Jacobson and Stephen J. Mellor The OO Software Development Process (Panel) . . . . . . . . . . . . . . . . 484--489
Reginald Meeson Book Review: An Introduction to Functional Programming Systems Using Haskell by Antony J. T. Davie: (Cambridge University Press, 1992) . . . 11--11 Steve Lawyer Book Review: Windows Graphics Programming with Borland C++ by Loren Heiny: (John Wiley & Sons, Inc., 1992) 12--12 R. P. Mody Functional programming is not self-modifying code . . . . . . . . . . 13--14 Henry G. Baker Less complex elementary functions . . . 15--16 Bing Liu and Yuen-Wah Ku ConstraintLisp: an object-oriented constraint programming language . . . . 17--26 Feng Yulin and Huang Tao and Li Jing LogC: a language and environment for embedded rule based systems . . . . . . 27--32 Maurizio Panti and Salvatore Valenti A Modulus Oriented Hash Function for the Construction of Minimal Perfect Tables 33--38 S. Cabasino and P. S. Paolucci and G. M. Todesco Dynamic parsers and evolving grammars 39--48 Chris Fickert and Thomas Sudkamp Unification based FP interpreters . . . 49--58 Alexander Sakharov Macro processing in high-level languages 59--66 Conrad Weisert Macros for defining C++ classes . . . . 67--76 C. K. Yuen An abstract machine design for lexically scoped parallel Lisp with speculative processing . . . . . . . . . . . . . . . 77--84 Srdjan Mijanovic MANEVRO: a new approach to class based programming . . . . . . . . . . . . . . 85--89 Paul Klint and Thomas Reps and Gregor Snelting Programming environments: report on an international workshop at Dagstuhl Castle . . . . . . . . . . . . . . . . . 90--96
Brad A. Myers Report on the CHI'91 Workshop on Languages for Developing User Interfaces 8--12 Erhard Konrad Application of Measurement Theory to Software Metrics --- Comments on the Bollmann-Zuse Approach . . . . . . . . . 13--19 Horst Zuse and Peter Bollmann-Sdorra Reply to: Erhard Konrad: ``Application of measurement theory to software metrics. Comments on the Bollmann-Zuse approach'' . . . . . . . . . . . . . . . 20--27 Robert Pool Did Turing Discover How the Leopard Got Its Spots?: Understanding the way a simple chemical system produces patterns may offer insights into animal development . . . . . . . . . . . . . . 28--28 Reiner R. Dumke and Kerstin Neumann and Kerstin Stoeffler The Metric Based Compiler --- A Current Requirement . . . . . . . . . . . . . . 29--38 Henry G. Baker Inlining Semantics for Subroutines which are Recursive . . . . . . . . . . . . . 39--46 Glen McCluskey and Robert B. Murray Template Instantiation For C++ . . . . . 47--56 Glen McCluskey and Robert B. Murray Template instantiation for C++ . . . . . 47--56 K. C. Wong Feature Inversion: A Practice on Language Versions Determination . . . . 57--60 Ryan Stansifer The Calculation of Easter . . . . . . . 61--65 Gottfried Razek Combining Objects and Relations . . . . 66--70 Benjamin G. Zorn and Dirk Grunwald Empirical Measurements of Six Allocation-intensive C Programs . . . . 71--80 G. Cattaneo and G. Di Giore and M. Ruotolo Another C Threads Library . . . . . . . 81--90
Guy L. Steele, Jr. High Performance Fortran: Status Report 1--4 Terrence W. Pratt Kernel-Control Parallel Versus Data Parallel: A Technical Comparison . . . . 5--8 Wei Li and Keshav Pingali Loop Transformations for NUMA Machines 9--12 S. Sharma and Chua-Huang Huang and P. Sadayappan On Data Dependence Analysis for Compiling Programs on Distributed-Memory Machines (Extended Abstract) . . . . . . 13--16 Jerome A. Feldman and Chu-Cheow Lim and Thomas Rauber The Shared-Memory Language pSather on a Distributed-Memory Multiprocessor . . . 17--20 Max Lemke and Daniel Quinlan Library for architecture-independent development of structured grid applications . . . . . . . . . . . . . . 21--23 Max Lemke and Daniel Quinlan P++, a Parallel C++ Array Class Library for Architecture-Independent Development of Structured Grid Applications . . . . 21--23 Scott B. Baden and Scott R. Kohn Lattice Parallelism: A Parallel Programming Model for Manipulating Non-Uniform Structured Scientific Data Structures . . . . . . . . . . . . . . . 24--27 Katherine A. Yelick Programming Models for Irregular Applications . . . . . . . . . . . . . . 28--31 T. Gross and S. Hinrichs and G. Lueh and D. O'Hallaron and J. Stichnoch and J. Subhlok Compiling Task and Data Parallel Programs for iWarp (Extended Abstract) 32--35 Vasanth Bala and Jeanne Ferrante Explicit Data Placement (XDP): A Methodology for Explicit Compile-Time Representation and Optimization of Data Movement (Extended Abstract) . . . . . . 36--39 Lawrence Snyder Synopsis of Orca, A Simple Language Implementation of Phase Abstractions . . 40--43 Bradley K. Seevers and Michael J. Quinn and Philip J. Hatcher A Parallel Programming Environment Supporting Multiple Data-Parallel Modules . . . . . . . . . . . . . . . . 44--47 Bill Maniatty and Boleslaw K. Szymanski and Balaram Sinharoy Efficiency of Data Alignment on Maspar 48--51 Ravi Ponnusamy and Joel Saltz and Raja Das and Charles Koelbel and Alok N. Choudhary Embedding Data Mappers with Distributed Memory Machine Compilers . . . . . . . . 52--55 Peter R. Bailey and Malcolm C. Newey Implementing ML on Distributed Memory Multiprocessors . . . . . . . . . . . . 56--59 Stuart Cox and Shell-Ying Huang and Paul Kelly and Junxian Liu and Frank Taylor Program Transformations for Static Process Networks . . . . . . . . . . . . 60--63 Peng Tu and David A. Padua Array Privatization for Shared and Distributed Memory Machines (Extended Abstract) . . . . . . . . . . . . . . . 64--67 Siddhartha Chatterjee and John R. Gilbert and Robert Schreiber and Shang-Hua Teng Optimal Evaluation of Array Expressions on Massively Parallel Machines (Extended Abstract) . . . . . . . . . . . . . . . 68--71 Barbara M. Chapman and Piyush Mehrotra and Hans P. Zima User Defined Mappings in Vienna Fortran 72--75 Matthew Rosing and Robert B. Schnabel and Robert P. Weaver A Programmable Preprocessor Approach to Efficient Parallel Language Design . . . 76--79 Eric A. Brewer and Adrian Colbrook and Wilson C. Hsieh and Paul Wang and William E. Weihl Pipes: linguistic support for ordered asynchronous invocations . . . . . . . . 80--80 Harold Carr and Robert R. Kessler and Mark R. Swanson Distributed C++ . . . . . . . . . . . . 81--81 S. K. S. Gupta and S. D. Kaushik and C.-H. Huang and J. R. Johnson and R. W. Johnson and P. Sadayappan On the Automatic Generation of Data Distributions . . . . . . . . . . . . . 82--82 Mitsuru Ikei and Michael Wolfe Functional Compiler techniques for an Imperative Language . . . . . . . . . . 83--83 David Kranz and Beng-Hong Lim and Kirk L. Johnson and John Kubiatowicz and Anant Agarwal Integrating Message-Passing and Shared-Memory: Early Experience . . . . 84--84 Aloke Majumdar and Marina C. Chen Efficient SPMD Constructs for Asynchronous Message Passing Architectures . . . . . . . . . . . . . 85--85 Sharon L. Smith Dynamic Scheduling of Irregularly Structured Parallel Computations in Heterogeneous Distributed Systems . . . 86--86 Steven Ericsson Zenith Ease: the Model and Its Implementation 87--87
Jacques Cohen Book Review: DLP --- A Language for Distributed Logic Programming by A. Eliens: (John Wiley and Sons, 1992) . . 13--13 Xu Baowen On subprograms with a variable number of parameters of varying types . . . . . . 14--20 Baowen Xu On Subprograms With A Variable Number Of Parameters Of Varying Types . . . . . . 14--20 W. M. Waite An Executable Language Definition . . . 21--40 Libero Nigro On the Type Extensions of Oberon-2 . . . 41--44 Rajiv Trehan and Nobuyuki Sawashima and Akira Morishita and Ichiro Tomoda and Toru Imai and Ken-Ichi Maeda Concurrent Object Oriented `C' (cooC) 45--52 Uwe Schreiweis and A. Keune and Horst Langendörfer An Integrated Prolog Programming Environment . . . . . . . . . . . . . . 53--60 Paul W. Abrahams Typographical Extensions for Programming Languages: Breaking out of the ASCII Straitjacket . . . . . . . . . . . . . . 61--68
Per Brinch Hansen Monitors and Concurrent Pascal: a personal history . . . . . . . . . . . . 1--35 Alain Colmerauer and Philippe Roussel The birth of Prolog . . . . . . . . . . 37--52 Ralph E. Griswold and Madge T. Griswold History of the Icon programming language 53--68 Alan C. Kay The early history of Smalltalk . . . . . 69--95 C. H. Lindsey A history of ALGOL 68 . . . . . . . . . 97--132 Barbara Liskov A history of CLU . . . . . . . . . . . . 133--147 Richard E. Nance A history of discrete event simulation programming languages . . . . . . . . . 149--175 Elizabeth D. Rather and Donald R. Colburn and Charles H. Moore The evolution of Forth . . . . . . . . . 177--199 Dennis M. Ritchie The development of the C language . . . 201--208 Jean E. Sammet The beginning and development of FORMAC (FORmula MAnipulation Compiler) . . . . 209--230 Guy L. Steele, Jr. and Richard P. Gabriel The evolution of Lisp . . . . . . . . . 231--270 Bjarne Stroustrup A history of C++: 1979--1991 . . . . . . 271--297 William A. Whitaker Ada---the project: the DoD High Order Language Working Group . . . . . . . . . 299--331 N. Wirth Recollections about the development of Pascal . . . . . . . . . . . . . . . . . 333--342 Anthony Gargaro A brief introduction to Ada . . . . . . 343--344 Henry J. Bowlden An introduction to ALGOL 68 . . . . . . 345--346 W. M. McKeeman A brief introduction to C . . . . . . . 347--348 Jerry Schwarz A brief introduction to C++ . . . . . . 349--350 John Guttag A brief introduction to CLU . . . . . . 351--352 Charles Hayden A brief introduction to Concurrent Pascal . . . . . . . . . . . . . . . . . 353--354 James H. Griesmer A brief introduction to FORMAC . . . . . 355--356 Philip J. Koopman, Jr. A brief introduction to Forth . . . . . 357--358 David R. Hanson A brief introduction to Icon . . . . . . 359--360 G. J. Sussman and G. L. Steele, Jr. and R. P. Gabriel A brief introduction to Lisp . . . . . . 361--362 Peter Lee A brief introduction to Pascal . . . . . 363--364 Fernando Pereira A brief introduction to Prolog . . . . . 365--366 Tim Budd A brief introduction to Smalltalk . . . 367--368 Philip Kiviat A brief introduction to discrete-event simulation programming languages . . . . 369--370 Anonymous Computer museum ephemera announcement viii Anonymous Special offer for HOPL books . . . . . . xiii John A. N. Lee Acknowledgements . . . . . . . . . . . . vii John A. N. Lee and Jean E. Sammet General introduction . . . . . . . . . . i Michael S. Mahoney `What makes history?' . . . . . . . . . x Jean E. Sammet Program development . . . . . . . . . . iii Richard L. Wexelblat Editor's introduction . . . . . . . . . ix
John W. Norris Book Review: Micro Focus Workbench: Developing Mainframe Applications on the PC by Alida Jatich and Phil Nowak: (John Wiley & Sons, New York, NY 1992) . . . . 7--7 Conrad Weisert Has the King Returned? . . . . . . . . . 9--10 J. Hernández and Pedro de Miguel and M. Barrena and J. M. Martínez and A. Polo and M. Nieto ALBA: A Parallel Language Based on Actors . . . . . . . . . . . . . . . . . 11--20 Uwe Schreiweis and A. Keune and Horst Langendörfer An Integrated Prolog Programming Environment . . . . . . . . . . . . . . 21--28 Mirjana Ivanovic and Zoran Budimac A Definition of an ISWIM-Like Language via Scheme . . . . . . . . . . . . . . . 29--38 William S. Shu Adapting a Debugger for Optimized Programs . . . . . . . . . . . . . . . . 39--44 Otto Stolz Anonymous Routine-Texts: an Orthogonal Approach to Block Objects . . . . . . . 45--48 Xu Baowen CRL/Pascal: a Pascal-oriented cross reference language and its applications 49--54 Baowen Xu CRL/Pascal: A Pascal-oriented Cross Reference Language And Its Applications 49--54 Henry G. Baker `Infant Mortality' and Generational Garbage Collection . . . . . . . . . . . 55--57 Andrew Davison 15th July 1972: A Significant Moment for Logic Programming . . . . . . . . . . . 58--60 Josef Templ A Systematic Approach to Multiple Inheritance Implementation . . . . . . . 61--66 Philip W. Hall, IV Parsing with C++ Constructors . . . . . 67--68
Shibin Hu Comment on Cooper and Kennedy's Flow-Insensitive Interprocedural Summary Information Computation Algorithm . . . 3--8 M. Badii and F. Abdollahzadeh Dynamic Semantic Specification by Two-Level Grammars for a Block Structured Language with Subroutine Parameters . . . . . . . . . . . . . . . 9--18 Zheng Yuhua and Tu Honglei and Xie Li And/Or Parallel Execution of Logic Programs: Exploiting Dependent And-Parallelism . . . . . . . . . . . . 19--28 Zheng Yuhua and Tu Honglei and Xie Li And/Or parallel execution of logic programs: exploiting dependent And-parallelism . . . . . . . . . . . . 19--28 Karl-Heinz Drechsler and Manfred P. Stadel A variation of Knoop, Rüthing, and Steffen's \em Lazy Code Motion . . . . . 29--38 Jacek Passia and Klaus-Peter Löhr Fips: A Functional-Imperative Language for Explorative Programming . . . . . . 39--48 E. P. Wentworth Generalized Regular Expressions --- a Programming Exercise in Haskell . . . . 49--54 Baowen Xu PIDL \slash Pascal: A Pascal-oriented Program Interface Description Language And Its Applications . . . . . . . . . . 53--62 Xu Baowen PIDL/Pascal: a Pascal-oriented program interface description language and its applications . . . . . . . . . . . . . . 55--62
Robert Wahbe and Steven Lucco and Susan L. Graham Practical data breakpoints: design and implementation . . . . . . . . . . . . . 1--12 Ali-Reza Adl-Tabatabai and Thomas Gross Detection and recovery of endangered variables caused by instruction scheduling . . . . . . . . . . . . . . . 13--25 Mickey R. Boyd and David B. Whalley Isolation and analysis of optimization errors . . . . . . . . . . . . . . . . . 26--35 Ron Cytron and Reid Gershbein Efficient accommodation of may-alias information in SSA form . . . . . . . . 36--45 François Bourdoncle Abstract debugging of higher-order imperative languages . . . . . . . . . . 46--55 William Landi and Barbara G. Ryder and Sean Zhang Interprocedural modification side effect analysis with pointer aliasing . . . . . 56--67 Evelyn Duesterwald and Rajiv Gupta and Mary Lou Soffa A practical data flow framework for array reference analysis and its use in optimizations . . . . . . . . . . . . . 68--77 Richard Johnson and Keshav Pingali Dependence-based program analysis . . . 78--89 Richard Johnson and Keshav Pingali Dependence-based program analysis . . . 78--89 Dan Grove and Linda Torczon Interprocedural constant propagation: a study of jump function implementations 90--99 Susan L. Graham and Steven Lucco and Oliver Sharp Orchestrating interactions among parallel computations . . . . . . . . . 100--111 Jennifer M. Anderson and Monica S. Lam Global optimizations for parallelism and locality on scalable parallel machines 112--125 Saman P. Amarasinghe and Monica S. Lam Communication optimization and code generation for distributed memory machines . . . . . . . . . . . . . . . . 126--138 Norman Adams and Pavel Curtis and Mike Spreitzer First-class data-type representations in SCHEMEXEROX . . . . . . . . . . . . . . 139--146 Norman Adams and Pavel Curtis and Mike Spreitzer First-class data-type representations in SCHEME XEROX . . . . . . . . . . . . . . 139--146 Dorai Sitaram Handling control . . . . . . . . . . . . 147--155 Daniel Weise and Roger F. Crew Programmable syntax macros . . . . . . . 156--165 Seongsoo Hong and Richard Gerber Compiling real-time programs into schedulable code . . . . . . . . . . . . 166--176 Seongsoo Hong and Richard Gerber Compiling real-time programs into schedulable code . . . . . . . . . . . . 166--176 Dirk Grunwald and Benjamin Zorn and Robert Henderson Improving the cache locality of memory allocation . . . . . . . . . . . . . . . 177--186 David A. Barrett and Benjamin G. Zorn Using lifetime predictors to improve memory allocation performance . . . . . 187--196 Hans-Juergen Boehm Space efficient conservative garbage collection . . . . . . . . . . . . . . . 197--206 R. Kent Dybvig and Carl Bruggeman and David Eby Guardians in a generation-based garbage collector . . . . . . . . . . . . . . . 207--216 R. Kent Dybvig and Carl Bruggeman and David Eby Guardians in a generation-based garbage collector . . . . . . . . . . . . . . . 207--216 Scott Nettles and James O'Toole Real-time replication garbage collection 217--226 Scott Nettles and James O'Toole Real-time replication garbage collection 217--226 John Peterson and Mark P. Jones Implementing type classes . . . . . . . 227--236 Cormac Flanagan and Amr Sabry and Bruce F. Duba and Matthias Felleisen The essence of compiling with continuations . . . . . . . . . . . . . 237--247 Shlomit S. Pinter Register allocation with instruction scheduling: a new approach . . . . . . . 248--257 Richard A. Huff Lifetime-sensitive modulo scheduling . . 258--267 Richard A. Huff Lifetime-sensitive modulo scheduling . . 258--267 Priyadarshan Kolte and Mary Jean Harrold Load/store range analysis for global register allocation . . . . . . . . . . 268--277 Priyadarshan Kolte and Mary Jean Harrold Load/store range analysis for global register allocation . . . . . . . . . . 268--277 Daniel R. Kerns and Susan J. Eggers Balanced scheduling: instruction scheduling when memory latency is uncertain . . . . . . . . . . . . . . . 278--289 Nancy J. Warter and Scott A. Mahlke and Wen-Mei W. Hwu and B. Ramakrishna Rau Reverse If-Conversion . . . . . . . . . 290--299 Nancy J. Warter and Scott A. Mahlke and Wen-Mei W. Hwu and B. Ramakrishna Rau Reverse If-Conversion . . . . . . . . . 290--299 Thomas Ball and James R. Larus Branch prediction for free . . . . . . . 300--313
David E. Culler and Richard M. Karp and David A. Patterson and Abhijit Sahay and Klaus E. Schauser and Eunice Santos and Ramesh Subramonian and Thorsten von Eicken LogP: towards a realistic model of parallel computation . . . . . . . . . . 1--12 Jaspal Subhlok and James M. Stichnoth and David R. O'Hallaron and Thomas Gross Exploiting task and data parallelism on a multicomputer . . . . . . . . . . . . 13--22 Gul Agha and Christian J. Callsen ActorSpace: an open distributed programming paradigm . . . . . . . . . . 23--32 Mary W. Hall and Timothy J. Harvey and Ken Kennedy and Nathaniel McIntosh and Kathryn S. McKinley and Jeffrey D. Oldham and Michael H. Paleczny and Gerald Roth Experiences using the ParaScope Editor: an interactive parallel programming tool 33--43 Sekhar R. Sarukkai and Allen D. Malony Perturbation analysis of high level instrumentation for SPMD programs . . . 44--53 David Kranz and Kirk Johnson and Anant Agarwal and John Kubiatowicz and Beng-Hong Lim Integrating message-passing and shared-memory: early experience . . . . 54--63 David Kranz and Kirk L. Johnson and Anant Agarwal and John Kubiatowicz and Beng-Hong Lim Integrating message-passing and shared-memory: early experience . . . . 54--63 Leonidas Kontothanasiss and Robert W. Wisniewski Using schedular information to achieve optimal barrier synchronization performance . . . . . . . . . . . . . . 64--72 Leonidas Kontothanassis and Robert W. Wisniewski Using scheduler information to achieve optimal barrier synchronization performance . . . . . . . . . . . . . . 64--72 Lorenz Huelsbergen and James R. Larus A concurrent copying garbage collector for languages that distinguish (im)mutable data . . . . . . . . . . . . 73--82 Shun-Tak Leung and John Zahorjan Improving the performance of runtime parallelization . . . . . . . . . . . . 83--91 Barbara M. Chapman and Piyush Mehrotra and Hans P. Zima High performance Fortran without templates: an alternative model for distribution and alignment . . . . . . . 92--101 Guy E. Blelloch and Siddhartha Chatterjee and Jonathan C. Hardwick and Jay Sipelstein and Marco Zagha Implementation of a portable nested data-parallel language . . . . . . . . . 102--111 Pushpa Rao and Clifford Walinsky An equational language for data-parallelism . . . . . . . . . . . . 112--118 Jan F. Prins and Daniel W. Palmer Transforming high-level data-parallel programs into vector operations . . . . 119--128 Jan F. Prins and Daniel W. Palmer Transforming high-level data-parallel programs into vector operations . . . . 119--128 Stephen P. Masticola and Barbara G. Ryder Non-concurrency analysis . . . . . . . . 129--138 Stephen P. Masticola and Barbara G. Ryder Non-concurrency analysis . . . . . . . . 129--138 Vasanth Bala and Jeanne Ferrante and Larry Carter Explicit data placement (XDP): a methodology for explicit compile-time representation and optimization of data movement . . . . . . . . . . . . . . . . 139--148 Siddhartha Chatterjee and John R. Gilbert and Fred J. E. Long and Robert Schreiber and Shang-Hua Teng Generating local addresses and communication sets for data-parallel programs . . . . . . . . . . . . . . . . 149--158 Dirk Grunwald and Harini Srinivasan Data flow equations for explicitly parallel programs . . . . . . . . . . . 159--168 Soumen Chakrabarti and Katherine A. Yelick Implementing an irregular application on a distributed memory multiprocessor . . 169--178 Kurt Siegl Parallelizing algorithms for symbolic computation using $\parallel$Maple$\parallel$ . . . . . . 179--186 Donald Yeung and Anant Agarwal Experience with fine-grain synchronization in MIMD machines for preconditioned conjugate gradient . . . 187--192 Donald Yeung and Anant Agarwal Experience with fine-grain synchronization in MIMD machines for preconditioned conjugate gradient . . . 187--197 J. Gregory Morrisett and Andrew P. Tolmach Procs and locks: a portable multiprocessing platform for Standard ML of New Jersey . . . . . . . . . . . . . 198--207 David B. Wagner and Bradley G. Calder Leapfrogging: a portable technique for implementing efficient futures . . . . . 208--217 Kenjiro Taura and Satoshi Matsuoka and Akinori Yonezawa An efficient implementation scheme of concurrent object-oriented languages on stock multicomputers . . . . . . . . . . 218--228 Harjinder S. Sandhu and Benjamin Gamsa and Songnian Zhou The shared regions approach to software cache coherence on multiprocessors . . . 229--238 Wilson C. Hsieh and Paul Wang and William E. Weihl Computation migration: enhancing locality for distributed-memory parallel systems . . . . . . . . . . . . . . . . 239--248 Rohit Chandra and Anoop Gupta and John L. Hennessy Data locality and load balancing in COOL 249--259
Scott Guthery Are we still having fun?: a minority report from HOPL-II . . . . . . . . . . 1--1 Alan Wexelblat Book Review: Obfuscated C and Other Mysteries by Don Libes: (John Wiley & Sons, Inc.) . . . . . . . . . . . . . . 2--2 Jan Hesse and Rainer König and Filippo Logi and Jens Herder A Prototype of an Interface Builder for the Common Lisp Interface Manager --- CLIB . . . . . . . . . . . . . . . . . . 19--28 Kailash Chandra C++ in Eight Weeks . . . . . . . . . . . 29--38 Jonathan L. Schilling Fail-Safe Programming in Compiler Optimization . . . . . . . . . . . . . . 39--42 Dick Grune Two-level grammars are more expressive than Type 0 grammars: or are they? . . . 43--45 Zongming Fei and Jian Lu An Approach Toward Mechanization of Acquiring Reusable Software Components 46--52 Edward W. Czeck and James M. Feldman On defusing a small landmine in the type casting of pointers in the ``C'' language . . . . . . . . . . . . . . . . 53--56 Pascal Janssens and Annie Cuyt How Does PASCAL-XSC Compare to Other Programming Languages with Respect to the IEEE Standard? . . . . . . . . . . . 57--66 Lem O. Ejiogu Five Principles for the Formal Validation of Models of Software Metrics 67--76 Mark Cashman Edicates --- A Specification of Calling Sequences . . . . . . . . . . . . . . . 77--80 Mark Caslunan Edicates --- a specification of calling sequences . . . . . . . . . . . . . . . 77--80 Noemi de La Rocque Rodriguez and Roberto Ierusalimschy and José Lucas Rangel Types in School . . . . . . . . . . . . 81--89 Noemi de la Rocque Rodriguez and Roberto Ierusalimschy and José Lucas Rangel Types in school . . . . . . . . . . . . 81--89 Malcolm J. Shute Abotec: an automatic back-of-the-envelope calculator . . . . 90--98 Michael Philippsen and Ernst A. Heinz and Paul Lukowicz Compiling Machine-Independent Parallel Programs . . . . . . . . . . . . . . . . 99--108 Johann Rost ``D2R'': a dynamic dataflow representation for task scheduling . . . 109--116 Johann Rost $D^2R$: A Dynamic Dataflow Representation for Task Scheduling . . . 109--116 Henrik Arro and Jonas Barklund and Johan Bevemyr Parallel Bounded Quantification --- Preliminary Results . . . . . . . . . . 117--124
Thomas W. Getzinger and Ralph Clarke Haygood and Peter Van Roy Announcing the Release of Aquarius Prolog . . . . . . . . . . . . . . . . . 5--5 Phil Pfeiffer Report on the Second Annual Alan J. Perlis Symposium on Programming Languages . . . . . . . . . . . . . . . 6--12 Richie Bielak Object Oriented Programming: The Fundamentals . . . . . . . . . . . . . . 13--14 Mark Woodman A Taste of the Modula-2 Standard . . . . 15--24 John Banning Comment on a Comment by Shibin Hu . . . 25--25 Doug Bell and Mike Parr Spreadsheets: A Research Agenda . . . . 26--28 Yaoqing Gao and Chung Kwong Yuen A Survey of Implementations of Concurrent, Parallel and Distributed Smalltalk . . . . . . . . . . . . . . . 29--35 Rainer H. Liffers Inheritance versus Containment . . . . . 36--38 Jurgen Heymann A 100% Portable Inline-Debugger . . . . 39--46 Michael E. Goldsby A simple implementation technique for mixin inheritance . . . . . . . . . . . 47--56 Bernd Müller Is Object-Oriented Programming Structured Programming? . . . . . . . . 57--66 Thomas J. Marlowe and William G. Landi and Barbara G. Ryder and Jong-Deok Choi and Michael G. Burke and Paul Carini Pointer-Induced Aliasing: A Clarification . . . . . . . . . . . . . 67--70
Oscar Nierstrasz Regular types for active objects . . . . 1--15 Barbara Liskov and Jeannette M. Wing Specifications and their use in defining subtypes . . . . . . . . . . . . . . . . 16--28 Kim B. Bruce and Jon Crabtree and Thomas P. Murtagh and Robert van Gent and Allyn Dimock and Robert Muller Safe and decidable type checking in an object-oriented language . . . . . . . . 29--46 Rich Mendez and Rebecca Wirfs-Brock and James Rumbaugh and Stephen J. Mellor and Ivar Jacobson and Grady Booch Which method is best? Shoot out at the OO corral . . . . . . . . . . . . . . . 46--47 (or 47--47??) Keith Krueger and David Loftesness and Amin Vahdat and Thomas Anderson Tools for the development of application-specific virtual memory management . . . . . . . . . . . . . . . 48--64 Bernd Bruegge and Tim Gottschalk and Bin Luo A framework for dynamic program analyzers . . . . . . . . . . . . . . . 65--82 Tim Bingham and Nancy Hobbs and Dave Husson Experiences Developing and Using an Object-Oriented Library for Program Manipulation . . . . . . . . . . . . . . 83--89 J. G. Van Stee and Dan Clarke and David Filani and Dmitry Lenkov and Raymond Obin Status of object-oriented COBOL (panel) 90--90 J. G. van Stee and Megan Adams and Dan Clarke and Dimitri Lenkov and Raymond Obin Status of object-oriented COBOL . . . . 90--90 Laxmikant V. Kalé and Sanjeev Krishnan CHARM++: A portable concurrent object oriented system based on C++ . . . . . . 91--108 Satoshi Matsuoka and Kenjiro Taura and Akinori Yonezawa Highly efficient and encapsulated re-use of synchronization code in concurrent object-oriented languages . . . . . . . 109--126 S. Tucker Taft Ada 9X. From abstraction-oriented to object-oriented . . . . . . . . . . . . 127--136 Ed Seidewitz and Brad Balfour and Sam S. Adams and David M. Wade and Brad Cox Developing software for large-scale reuse (panel) . . . . . . . . . . . . . 137--143 Vinny Cahill and Seán Baker and Chris Horn and Gradimir Starovic The Amadeus GRT: generic runtime support for distributed persistent programming 144--161 Henri E. Bal and M. Frans Kaashoek Object distribution in Orca using Compile-Time and Run-Time techniques . . 162--177 Mohammed H. Odeh and Julian A. Padget Object-oriented execution of OPS5 production systems . . . . . . . . . . . 178--190 Mohammed H. Odeh and Julian A. Padget Object-oriented execution of OPS5 production systems . . . . . . . . . . . 178--190 Angela Jo Coppola and William Ruth Doing business with governments . . . . 191--191 Paul S. Strauss IRIS Inventor, A 3D graphics toolkit . . 192--200 John Lamping Typing the specialization interface . . 201--214 John Larnping Typing the specialization interface . . 201--214 Gilad Bracha and David Griswold Strongtalk: typechecking Smalltalk in a production environment . . . . . . . . . 215--230 Franz J. Hauck Inheritance modeled with explicit bindings: An approach to typed inheritance . . . . . . . . . . . . . . 231--239 Geir Magne Hoydalsvik and Guttorm Sindre On the purpose of object-oriented analysis . . . . . . . . . . . . . . . . 240--255 Geir Magne Hòydalsvik and Guttorm Sindre On the purpose of object-oriented analysis . . . . . . . . . . . . . . . . 240--255 Dave Thomas and Adele Goldberg and James Coplien and Peter Coad and Geir Magne Hòydalsvik A discussion of On the Purpose of Object-Oriented Analysis . . . . . . . . 256--258 Karel Driesen Selector table indexing & sparse arrays 259--270 Yves Casean Efficient handling of multiple inheritance hierarchies . . . . . . . . 271--287 Yves Caseau Efficient handling of multiple inheritance hierarchies . . . . . . . . 271--287 Antony L. Hosking and J. Eliot B. Moss Object fault handling for persistent programming languages: A performance evaluation . . . . . . . . . . . . . . . 288--303 Bhavani Thuraisingham Integrating object-oriented technology and security technology . . . . . . . . 304--304 Bhavani M. Thuraisingham Integrating object technology and security technology: A panel discussion 304--304 T. C. Ting Modeling Security Requirements for Applications (Panel) . . . . . . . . . . 305--305 Peter J. Sell Object Oriented Approach to MLS Database Application Design (Panel) . . . . . . . 306--306 Ravi S. Sandhu Security for OODBMS (or Systems) (Panel) 307--307 Thomas F. Keefe Reconciling Objects and Multilevel Security (Panel) . . . . . . . . . . . . 308--308 Larry Koved and Wayne L. Wooten GROOP: an object-oriented toolkit for animated $3$D graphics . . . . . . . . . 309--325 Larry Koved and Wayne L. Wooten GROOP: An object-oriented toolkit for animated 3D graphics . . . . . . . . . . 309--325 Wim De Pauw and Richard Helm and Doug Kimelman and John Vlissides Visualizing the behavior of object-oriented systems . . . . . . . . 326--337 Wim De Pauw and Richard Helm and Doug Kimelman and John Vlissides Visualizing the behavior of object-oriented systems . . . . . . . . 326--337 Toshimi Minoura and Shirish S. Pargaonkar and Kurt Rehfuss Structural active object systems for simulation . . . . . . . . . . . . . . . 338--355 Bruce Anderson and Mary Shaw and Larry Best and Kent Beck Software architecture: the next step for object technology (panel) . . . . . . . 356--359 Mary Shaw and Larry Best and Kent Beck Software architecture: The next step for object technology (Panel) . . . . . . . 356--362 Yen-Ping Shan and Tom Cargill and Brad Cox and William Cook and Mary Loomis and Alan Snyder Is multiple inheritance essential to OOP? (panel) . . . . . . . . . . . . . . 360--363 Yeng-Ping Shan and Tom Cargill and Brad Cox and William Cook and Mary Loomis and Alan Snyder Panel: Is multiple inheritance essential to OOP? . . . . . . . . . . . . . . . . 363--363 Oscar Nierstrasz Panel: Distributed processing . . . . . 364--364 Mike Stark Impacts of object-oriented technologies: seven years of SEL studies . . . . . . . 365--373 Mike Stark Impacts of object-oriented technologies: Seven years of SEL studies . . . . . . . 365--373 Steven D. Litvintchonk and Mike Stark and Brad Balfour and Mohamed Fayad and Bernie Rosenfeld Panel: Evolving toward object-oriented technology in large organizations . . . 374--375 Steven D. Litvintchouk and Mike Stark and Brad Balfour and Mohamed Fayad and Bernie Rosenfeld Evolving toward object-oriented technology in large organizations (panel) . . . . . . . . . . . . . . . . 374--375 Franco Civello Roles for composite objects in object-oriented analysis and design . . 376--393 Robert Godin and Hafedh Mili Building and maintaining analysis-level class hierarchies using Galois Lattices 394--410 William Harrison and Harold Ossher Subject-oriented programming: a critique of pure objects . . . . . . . . . . . . 411--428 William Harrison and Harold Ossher Subject-oriented programming (a critique of pure objects) . . . . . . . . . . . . 411--428 Kent Beck and Grady Booch and William Cook and Richard Gabriel and Rebecca Wirfs-Brock How to get a paper accepted at OOPSLA (Panel) . . . . . . . . . . . . . . . . 429--436 Ralph E. Johnson and Kent Beck and Grady Booch and William Cook and Richard Gabriel and Rebecca Wirfs-Brock How to get a paper accepted at OOPSLA (panel) . . . . . . . . . . . . . . . . 429--436 Dennis de Champeaux and Andrew J. Baer and Brian Bernsen and Alan R. Korncoff and Tim Korson and Daniel S. Tkach Strategies for object-oriented technology transfer (panel) . . . . . . 437--447 Anonymous Title index . . . . . . . . . . . . . . 448--448 Anonymous Author index . . . . . . . . . . . . . . 449
J. Bret Michael Book Review: NeXTStep Programming: Step One, Object-Oriented Applications, by Simson L. Garfinkel and Michael K. Mahoney: (Springer-Verlag, New York, 1993) . . . . . . . . . . . . . . . . . 2--2 John Banning Comment on a Comment by Shibin Hu . . . 3--3 Simon L. Peyton Jones and John Hughes and John Launchbury How to give a good research talk . . . . 9--12 Simon L. Peyton Jones and John Hughes and John Launchbury How to Give a Good Research Talk . . . . 9--12 Frank A. Adrian A Modest Proposal Concerning Variables and Assignment Statements . . . . . . . 13--15 Babak Dehbonei and Fernando Mejia Verification of Proofs for the B Formal Development Process . . . . . . . . . . 16--21 Henry G. Baker Complex Gaussian Integers for `Gaussian Graphics' . . . . . . . . . . . . . . . 22--27 José de Oliveira Guimarães Parametrized Methods . . . . . . . . . . 28--32 José de Oliveira Guimarães Parametrized methods . . . . . . . . . . 28--32 Mark Harman and Sebastian Danicic Projecting Functional Models of Imperative Programs . . . . . . . . . . 33--41 Tony Hetherington An Introduction to the Extended Pascal Language . . . . . . . . . . . . . . . . 42--51 Heiko Kießling and Uwe Krüger Blocks and Procedures . . . . . . . . . 52--61
Robert H. B. Netzer Optimal tracing and replay for debugging shared-memory parallel programs . . . . 1--11 Doug Kimelman and Dror Zernik On-the-fly topological sort --- a basis for interactive debugging and live visualization of parallel programs . . . 12--20 Doug Kimelman and Dror Zernik On-the-fly topological sort: A basis for interactive debugging and live visualization of parallel programs . . . 12--20 Alexander I. Tomlinson and Vijay K. Garg Detecting relational global predicates in distributed systems . . . . . . . . . 21--31 Michel Hurfin and Noël Plouzeau and Michel Raynal Detecting atomic sequences of predicates in distributed computations . . . . . . 32--42 Céline Valot Characterizing the accuracy of distributed timestamps . . . . . . . . . 43--52 Diane T. Rover and Abdul Waheed Multiple-domain analysis methods . . . . 53--63 Diane T. Rover and Abdul Waheed Multiple-domain analysis methods . . . . 53--63 Cherri M. Pancake Customizable portrayals of program structure . . . . . . . . . . . . . . . 64--74 Thomas Kunz Process clustering for distributed debugging . . . . . . . . . . . . . . . 75--84 Janice E. Cuny and George Forman and Alfred Hough and Joydip Kundu and Calvin Lin and Lawrence Snyder and David W. Stemple The Ariadne debugger: scalable application of event-based abstraction 85--95 John May and Francine Berman Panorama: A portable, extensible parallel debugger . . . . . . . . . . . 96--106 Yong-Kee Jun and Kern Koh On-the-fly detection of access anomalies in nested parallel loops . . . . . . . . 107--117 Yong-Kee Jun and Kern Koh On-the-fly detection of access anomolies in nested parallel loops . . . . . . . . 107--117 Suresh K. Damodaran-Kamal and Joan M. Francioni Nondeterminancy: testing and debugging in message passing parallel programs . . 118--128 John Mellor-Crummey Compile-time support for efficient data race detection in shared-memory parallel programs . . . . . . . . . . . . . . . . 129--139 John Mellor-Crummey Compile-time support for efficient data race detection in shared-memory parallel programs . . . . . . . . . . . . . . . . 129--139 Mark E. Crovella and Thomas J. LeBlanc Performance debugging using parallel performance predicates . . . . . . . . . 140--150 M. Timmerman and Frank Gielen and P. Lambrix High level tools for the debugging of real time multiprocessor systems . . . . 151--157 Eric A. Brewer and William E. Weihl Developing parallel applications using high-performance simulation . . . . . . 158--168 Cherri M. Pancake and Robert H. B. Netzer A bibliography of parallel debuggers, 1993 edition . . . . . . . . . . . . . . 169--186 Jeff Brown and B. Irvin and G. Forman Session 6. Chair . . . . . . . . . . . . xvi J. Cargille and A. Tomlinson and G. Forman and F. Gielen Open forum. Moderator, Bart Miller, speaker, Pat Helland. The users' view of debugging . . . . . . . . . . . . . . . xviii Jong Choi and J. Lumpp and F. Gielen Session 5. Chair . . . . . . . . . . . . xv Joan Francioni and S. Damodaran-Kamal and J. Hollingsworth and C. McDowell Session 3. Chair . . . . . . . . . . . . ix J. Hollingsworth and S. Damodaran-Kamal and B. Irvin and J. Lumpp Program visualization: Are you drawing useful pictures? . . . . . . . . . . . . xi Keith Marzullo and G. Forman and J. Lumpp Session 2. Chair . . . . . . . . . . . . viii Bart Miller and F. Gielen and Suresh K. Damodaran-Kamal Session 1. Chair . . . . . . . . . . . . vii Dan Recd and A. Tomlinson and J. Cargille Session 4. Chair . . . . . . . . . . . . xiii
Atanas Radenski Module types, module variables, and their use as a universal encapsulation mechanism . . . . . . . . . . . . . . . 3--8 P. Kokol The self-similarity and computer programs . . . . . . . . . . . . . . . . 9--12 Peter Kokol The self-similarity and computer programs . . . . . . . . . . . . . . . . 9--12 Ming-Yuan Zhu Computational reflection in Power Epsilon . . . . . . . . . . . . . . . . 13--19 Li-Xin Zeng and Ming-Yuan Zhu Extending PowerEpsilon with algebraic rewriting . . . . . . . . . . . . . . . 20--26 Aaron Kans and Clive Hayton Using ABC to prototype VDM specifications . . . . . . . . . . . . . 27--36 John F. Reiser and Joseph P. Skudlarek Program profiling problems, and a solution via machine language rewriting 37--45 Damian Conway Parsing with C++ classes . . . . . . . . 46--52 Martin J. Dürst Uniprep: preparing a C/C++ compiler for Unicode . . . . . . . . . . . . . . . . 53--53 Henk Alblas and Rieks op den Akker and Paul Oude Luttighuis and Klaas Sikkel A bibliography on parallel parsing . . . 54--65
Henry G. Baker, Jr. A ``linear logic'' Quicksort . . . . . . 13--18 Genjiang Zhu and Li Xie and Zhongxiu Sun A path-based method of parallelizing C++ programs . . . . . . . . . . . . . . . . 19--24 K. Zhang A review of exploitation of AND-parallelism and combined AND/OR-parallelism in logic programs . . 25--32 Kang Zhang A review of exploitation of AND-parallelism and combined AND/OR-parallelism in logic programs . . 25--32 Boyko B. Bantchev Terminable statements and destructive computation . . . . . . . . . . . . . . 33--38 Bob Brown Non-linear type extensions . . . . . . . 39--43 B. Brown Nonlinear type extensions . . . . . . . 39--43 A. Michael Berman Does Scheme enhance an introductory programming course?: some preliminary empirical results . . . . . . . . . . . 44--48
Andrew Black and Jens Palsberg Foundations of object-oriented languages 3--11 C. K. Yuen and M. D. Feng Parallel multiplication: a case study in parallel programming . . . . . . . . . . 12--17 S. Srinivasan A critical look at some Ada features . . 18--22 S. Srinivasan A critical look at some Ada features . . 18--22 C. K. Yuen Programming the premature loop exit: from functional to navigational . . . . 23--27 Alexander Sakharov Propagation of Constants and Assertions 28--32 Michael Rizzo Using producer and consumer manipulators to extend stream I/O formatting in C++ 33--35
K. S. R. Anjaneyulu Bug analysis of Pascal programs . . . . 15--22 R. A. Frost Using memoization to achieve polynomial complexity of purely functional executable specifications of non-deterministic top-down parsers . . . 23--30 J.-L. Dekeyser and D. Lazure and P. Marquet A geometrical data-parallel language . . 31--40 Jean-Luc Dekeyser and Dominique Lazure and Philippe Marquet A geometrical data-parallel language . . 31--40 Jon Loeliger and R. Metzger Developing an interprocedural optimizing compiler . . . . . . . . . . . . . . . . 41--48 Brian L. Meek Programming languages: towards greater commonality . . . . . . . . . . . . . . 49--57 Henry G. Baker Thermodynamics and garbage collection 58--63
Alexander Sakharov Propagation of constants and assertions 3--6, 6 Gerardo Cisneros Configurable REC . . . . . . . . . . . . 7--16 Birger Andersen A general, fine-grained, machine independent, object-oriented language 17--26 B. Andersen A general, fine-grained, machine independent, object-oriented language 17--26 Scott L. Burson Continuations without copying . . . . . 27--30 Ahsan J. Sharafuddin and Nathan Ida and James E. Grover Passing large dynamic objects out of function frame boundaries: the temporary linked list method . . . . . . . . . . . 31--36 Emilia Zivkova Experience in teaching object-oriented programming with C++ . . . . . . . . . . 37--40 Xu Manwu and Lu Jianfeng and Zeng Fancong and Dai Jingwen Agent language NUML and its reduction implementation model based on HO$\pi$ 41--48 Manwu Xu and Jianfeng Lu and Fancong Zeng and Jingwen Dai Agent language NUML and its reduction implementation model based on HO pi . . 41--48
Amr Sabry and Matthias Felleisen Is Continuation-Passing Useful for Data Flow Analysis? . . . . . . . . . . . . . 1--12 Andrew W. Appel and David B. MacQueen Separate Compilation for Standard ML . . 13--23 John Launchbury and Simon L. Peyton Jones Lazy Functional State Threads . . . . . 24--35 Kemal Ebcio\uglu and Randy D. Groves and Ki-Chang Kim and Gabriel M. Silberman and Isaac Ziv VLIW Compilation Techniques in a Superscalar Environment . . . . . . . . 36--48 Amitabh Srivastava and David W. Wall Link-time optimization of address calculation on a 64--bit architecture 49--60 Torbjörn Granlund and Peter L. Montgomery Division by Invariant Integers using Multiplication . . . . . . . . . . . . . 61--72 Ko-Yang Wang Precise Compile-Time Performance Prediction for Superscalar-Based Computers . . . . . . . . . . . . . . . 73--84 Tim A. Wagner and Vance Maverick and Susan L. Graham and Michael A. Harrison Accurate Static Estimators for Program Optimization . . . . . . . . . . . . . . 85--96 Andreas Krall Improving Semi-static Branch Prediction by Code Replication . . . . . . . . . . 97--106 Reinhard von Hanxleden and Ken Kennedy \tt GIVE-N-TAKE --- a balanced code placement framework . . . . . . . . . . 107--120 William Pugh Counting Solutions to Presburger Formulas: How and Why . . . . . . . . . 121--134 Allan L. Fisher and Anwar Mohammed Ghuloum Parallelizing complex scans and reductions . . . . . . . . . . . . . . . 135--146 Jens Knoop and Oliver Rüthing and Bernhard Steffen Partial Dead Code Elimination . . . . . 147--158 Preston Briggs and Keith D. Cooper Effective Partial Redundancy Elimination 159--170 Richard Johnson and David Pearson and Keshav Pingali The Program Structure Tree: Computing Control Regions in Linear Time . . . . . 171--185 Jack W. Davidson and Sanjay Jinturkar Memory Access Coalescing: A Technique for Eliminating Redundant Memory Accesses . . . . . . . . . . . . . . . . 186--195 Amitabh Srivastava and Alan Eustace ATOM: A System for Building Customized Program Analysis Tools . . . . . . . . . 196--205 Mark B. Reinhold Cache Performance of Garbage-Collected Programs . . . . . . . . . . . . . . . . 206--217 Joseph Hummel and Laurie J. Hendren and Alexandru Nicolau A General Data Dependence Test for Dynamic, Pointer-Based Data Structures 218--229 Alain Deutsch Interprocedural may-alias analysis for pointers: beyond $k$-limiting . . . . . 230--241 Maryam Emami and Rakesh Ghiya and Laurie J. Hendren Context-Sensitive Interprocedural Points-to Analysis in the Presence of Function Pointers . . . . . . . . . . . 242--256 Maryam Emami and Rakesh Ghiya and Laurie J. Hendren Context-sensitive interprocedural points-to analysis in the presence of function pointers . . . . . . . . . . . 242--256 Steven M. Kurlander and Charles N. Fischer Zero-cost range splitting . . . . . . . 257--265 Steven M. Kurlander and Charles N. Fischer Zero-cost Range Splitting . . . . . . . 257--265 Cindy Norris and Lori L. Pollock Register Allocation over the Program Dependence Graph . . . . . . . . . . . . 266--277 Roland Wismüller Debugging of Globally Optimized Programs Using Data Flow Analysis . . . . . . . . 278--289 Todd M. Austin and Scott E. Breach and Gurindar S. Sohi Efficient Detection of All Pointer and Array Access Errors . . . . . . . . . . 290--301 Hiralal Agrawal On Slicing Programs with Jump Statements 302--312 Robert H. B. Netzer and Mark H. Weaver Optimal Tracing and Incremental Reexecution for Debugging Long-Running Programs . . . . . . . . . . . . . . . . 313--325 Urs Hölzle and David Ungar Optimizing Dynamically-Dispatched Calls with Run-Time Type Feedback . . . . . . 326--336 P. Van Hentenryck and A. Cortesi and B. Le Charlier Type analysis of Prolog using type graphs . . . . . . . . . . . . . . . . . 337--348 P. Van Hentenryck and A. Cortesi and B. Le Charlier Type Analysis of Prolog using Type Graphs . . . . . . . . . . . . . . . . . 337--348 Pascal Van Hentenryck and Viswanath Ramachandran Backtracking without trailing in CLP($ R_{\rm Lin}$) . . . . . . . . . . . . . 349--360
Thomas Kühne Higher Order Objects in pure Object-Oriented Languages . . . . . . . 15--20 Peter Grogono and Mark Gargul A Graph Model for Object Oriented Programming . . . . . . . . . . . . . . 21--28 Frank J. van der Linden Formal methods: from object-based to object-oriented . . . . . . . . . . . . 29--38 Andrew Davison KL1 and the Early Days of the FGCS Project . . . . . . . . . . . . . . . . 39--41 Pei-Chi Wu and Feng-Jian Wang Is Circularity Problem for Attribute Grammars Exponential-Time Complete? . . 42--42 Tereza G. Kirner Detection of Cycle in Real-Time System Specification . . . . . . . . . . . . . 43--50 M. Wolfe $J^+=J$ (control flow graphs) . . . . . 51--53 Michael Wolfe J+=J . . . . . . . . . . . . . . . . . . 51--53 Lev J. Dyadkin Multibox Parsers . . . . . . . . . . . . 54--60 Carlos Baquero and Francisco Moura Concurrency Annotations in C++ . . . . . 61--67
Joshua S. Auerbach and James R. Russell The Concert Signature Representation: IDL as Intermediate Language . . . . . . 1--12 Sriram Sankar and Roger Hayes ADL --- an interface definition language for specifying and testing software . . 13--21 Dinesh Katiyar and David Luckham and John Mitchell and Sigurd Meldal Polymorphism and Subtyping in Interfaces 22--34 Robert Allen and David Garlan Beyond Definition/Use: Architectural Interconnection . . . . . . . . . . . . 35--45 Burkhard Freitag and Tiziana Margaria and Bernhard Steffen A Pragmatic Approach to Software Synthesis . . . . . . . . . . . . . . . 46--58 James R. Russell and Robert E. Strom and Daniel M. Yellin A Checkable Interface Language for Pointer-Based Structures . . . . . . . . 59--73 Yang Meng Tan Interface Language for Supporting Programming Styles . . . . . . . . . . . 74--83 Don Cohen and Neil Goldman and K. Narayanaswamy Adding Performance Information to ADT Interfaces: Why and How . . . . . . . . 84--93 Peter B. Kessler A Client-Side Stub Interpreter . . . . . 94--100 David E. Gay Interface Definition Language Conversions: Recursive Types . . . . . . 101--110 Stefan Kahrs and Donald Sannella and Andrzej Tarlecki Interfaces and Extended ML . . . . . . . 111--118 Graham Hamilton and Sanjay Radia Using Interface Inheritance to Address Problems in System Software Evolution 119--128 Gary T. Leavens Inheritance of interface specifications (extended abstract) . . . . . . . . . . 129--138
Stephen J. Bevan Letter to the Editor: SIGPLAN Notices 27(12) 1992: ``The Calculation of Easter'' . . . . . . . . . . . . . . . . 8--8 Damian Conway Parsing with C++ Deferred Expressions 9--16 A. Romanovsky About Conversations for Concurrent OO Languages . . . . . . . . . . . . . . . 17--21 Christophe Giraud-Carrier A Reconfigurable Data Flow Machine for Implementing Functional Programming Languages . . . . . . . . . . . . . . . 22--28 Christophe Giraud-Carrier A reconfigurable dataflow machine for implementing functional programming languages . . . . . . . . . . . . . . . 22--28 Timothy P. Justice and Rajeev K. Pandey and Timothy A. Budd A Multiparadigm Approach to Compiler Construction . . . . . . . . . . . . . . 29--37 Henry G. Baker Minimizing Reference Count Updating with Deferred and Anchored Pointers for Functional Data Structures . . . . . . . 38--43 Michael Klug Basic Operations of the VisiCola Scope Model . . . . . . . . . . . . . . . . . 44--50 C. K. Yuen and M. D. Feng Breadth-first search in the Eight Queens Problem . . . . . . . . . . . . . . . . 51--55 M. Desainte-Catherine and K. Barbar Using attribute grammars to find solutions for musical equational programs . . . . . . . . . . . . . . . . 56--63 Pei-Chi Wu and Feng-Jian Wang Padded String: Treating String as Sequence of Machine Words . . . . . . . 64--67 Pei-Chi Wu and Feng-Jian Wang Pool: an unbounded array . . . . . . . . 68--71 Jing Li and Yulin Feng A Production System Language KDOPS . . . 72--76 René Elmstròm and Peter Gorm Larsen and Poul Bògh Lassen The IFAD VDM-SL Toolbox: A Practical Approach to Formal Specifications . . . 77--80 Bent Bruun Kristensen and Kasper Òsterbye Conceptual Modeling and Programming Languages . . . . . . . . . . . . . . . 81--90 Anthony H. Dekker The Game of Life: A CLEAN Programming Tutorial and Case Study . . . . . . . . 91--104 Katsumi Maruyama and Nicholas Raguideau Concurrent Object-Oriented Language ``COOL'' . . . . . . . . . . . . . . . . 105--114 João José Neto Adaptive automata for context-dependent languages . . . . . . . . . . . . . . . 115--124 Vladimir I. Shelekhov and Sergey V. Kuksenko Object Analysis of Program . . . . . . . 125--134 Zerksis D. Umrigar Fully Static Dimensional Analysis with C++ . . . . . . . . . . . . . . . . . . 135--139 Weiming Gu and Jeffrey Vetter and Karsten Schwan An Annotated Bibliography of Interactive Program Steering . . . . . . . . . . . . 140--148 Nandakumar Sankaran A Bibliography on Garbage Collection and Related Topics . . . . . . . . . . . . . 149--158 Brian Meek A taxonomy of datatypes . . . . . . . . 159--167
Craig Chambers and Gary T. Leavens Typechecking and Modules for Multi-Methods . . . . . . . . . . . . . 1--15 Jonathan Eifrig and Scott Smith and Valery Trifonov and Amy Zwarico Application of OOP Type Theory: State, Decidability, Integration . . . . . . . 16--30 N. Kobayashi and A. Yonezawa Type-Theoretic Foundations for Concurrent Object-Oriented Programming 31--45 Naoki Kobayashi and Akinori Yonezawa Type-theoretic foundations for concurrent object-oriented programming 31--45 Judy Cohen and Mary Lynn Manns and Susan Lilly and Richard P. Gabriel and Janet Conway and Desmond D'Souza Training Professionals in Object Technology (panel) . . . . . . . . . . . 46--50 Scott P. Robertson and John M. Carroll and Robert L. Mack and Mary Beth Rosson and Sherman R. Alpert and Jürgen Koenenmann-Belliveau ODE: A Self-Guided, Scenario-Based Learning Environment for Object-Oriented Design Principles . . . . . . . . . . . 51--64 Jean-Yves Vion-Dury and Miguel Santana Virtual Images: Interactive Visualization of Distributed Object-Oriented Systems . . . . . . . . 65--84 Kaj Grònbæk and Jawahar Malhotra Building Tailorable Hypermedia Systems: the embedded interpreter approach . . . 85--101 Randall B. Smith and Mark Lentczner and Walter R. Smith and Antero Taivalsaari and David Ungar Prototype-Based Languages: Object Lessons from Class-Free Programming (Panel) . . . . . . . . . . . . . . . . 102--112 Isabelle Puaut A Distributed Garbage Collector for Active Objects . . . . . . . . . . . . . 113--128 Daniel Hagimont and P.-Y. Chevalier and A. Freyssinet and S. Krakowiak and S. Lacourte and J. Mossi\`ere and X. Rousset de Pina Persistent Shared Object Support in the Guide System: Evaluation and Related Work . . . . . . . . . . . . . . . . . . 129--144 Yen-Ping Shan and Ken Auer and Andrew J. Bear and Jim Adamczyk and Adele Goldberg and Tom Love and Dave Thomas Smalltalk in the Business World: the Good, the Bad, and the Future (panel) 145--152 Ed Seidewitz Genericity versus Inheritance Reconsidered: Self-Reference Using Generics . . . . . . . . . . . . . . . . 153--163 R. Ducournau and M. Habib and M. Huchard and M. L. Mugnier Proposal for a Monotonic Multiple Inheritance Linearization . . . . . . . 164--175 Daniel M. Yellin and Robert E. Strom Interfaces, Protocols, and the Semi-Automatic Construction of Software Adaptors . . . . . . . . . . . . . . . . 176--190 John F. Karpovich and Andrew S. Grimshaw and James C. French ExtensibLe File Systems (ELFS): An Object-Oriented Approach to High Performance File I/O . . . . . . . . . . 191--204 Darryl James Rothering Development of an OO Infrastructure for Mainframe Database Applications . . . . 205--211 Andrea Spinelli and Paolo Salvaneschi and Mauro Cadei and Marino Rocca MI: an object oriented environment for integration of scientific applications 212--222 David Monarchi and Grady Booch and Brian Henderson-Sellers and Ivar Jacobson and Steve Mellor and James Rumbaugh and Rebecca Wirfs-Brock Methodology Standards: Help or Hindrance? . . . . . . . . . . . . . . . 223--228 Urs Hölzle and David Ungar A Third Generation SELF Implementation: Reconciling Responsiveness with Performance . . . . . . . . . . . . . . 229--243 E. Amiel and O. Gruber and E. Simon Optimizing Multi-Method Dispatch Using Compressed Dispatch Tables . . . . . . . 244--244 Eric Amiel and Olivier Gruber and Eric Simon Optimizing multi-method dispatch using compressed dispatch tables . . . . . . . 244--258 Gus Lopez and Bjorn Freeman-Benson and Alan Borning Implementing Constraint Imperative Programming Languages: The Kaleidoscope '93 Virtual Machine . . . . . . . . . . 259--271 Bent Bruun Kristensen Complex Associations: Abstractions in Object-Oriented Modeling . . . . . . . . 272--286 Richard Jordan and Ruth Smilan and Alex Wilkinson Streamlining the Project Cycle with Object-Oriented Requirements . . . . . . 287--300 R. J. A. Buhr and R. S. Casselman Timethread-Role Maps for Object-Oriented Design of Real-Time-and-Distributed Systems . . . . . . . . . . . . . . . . 301--301 R. J. A. Buhr and R. S. Casselman Timethread-role maps for object-oriented design of real-time-and-distributed systems . . . . . . . . . . . . . . . . 301--316 Lutz Heuser and John Dilley and Hari Madduri and Steven Rabin and Shawn Woods Development of distributed and client/server object-oriented applications: industry solutions . . . . 317--323 John Plevyak and Andrew A. Chien Precise Concrete Type Inference for Object-Oriented Languages . . . . . . . 324--340 Phillip Bogle and Barbara Liskov Reducing Cross Domain Call Overhead Using Batched Futures . . . . . . . . . 341--354 Ole Agesen and David Ungar Sifting out the gold. Delivering compact applications from an exploratory object-oriented programming environment 355--370 Thomas Atwood and Jnan Dash and Jacob Stein and Michael Stonebraker and Mary Loomis Objects and Databases (Panel) . . . . . 371--372 Bob Beck and Steve Hartley Persistent Storage for a Workflow Tool Implemented in Smalltalk . . . . . . . . 373--387 Rodolfo F. Resende and Divyakant Agrawal and Amr El Abbadi Semantic Locking in Object-Oriented Database Systems . . . . . . . . . . . . 388--402 Tamiya Onodera Experience with Representing C++ Program Information in an Object-Oriented Database . . . . . . . . . . . . . . . . 403--413 Michael J. Carey and David J. DeWitt and Chander Kant and Jeffrey F. Naughton A status report on the OO7 OODBMS benchmarking effort . . . . . . . . . . 414--426 Ira R. Forman and Scott Danforth and Hari Madduri Composition of Before/After metaclasses in SOM . . . . . . . . . . . . . . . . . 427--439 Scott Danforth and Ira R. Forman Reflections on Metaclass Programming in SOM . . . . . . . . . . . . . . . . . . 440--452 Victor B. Lortz and Kang G. Shin Combining Contracts and Exemplar-Based Programming for Class Hiding and Customization . . . . . . . . . . . . . 453--467 Steven Fraser and Kent Beck and Grady Booch and Derek Coleman and Jim Coplien and Richard Helm and Kenny Rubin How Do Teams Shape Objects? --- How Do Objects Shape Teams? . . . . . . . . . . 468--473
Chandramohan A. Thekkath and Henry M. Levy and Edward D. Lazowska Separating data and control transfer in distributed operating systems . . . . . 2--11 Rohit Chandra and Scott Devine and Ben Verghese and Anoop Gupta and Mendel Rosenblum Scheduling and page migration for multiprocessor compute servers . . . . . 12--24 Beng-Hong Lim and Anant Agarwal Reactive synchronization algorithms for multiprocessors . . . . . . . . . . . . 25--35 John Heinlein and Kourosh Gharachorloo and Scott Dresser and Anoop Gupta Integration of message passing and shared memory in the Stanford FLASH multiprocessor . . . . . . . . . . . . . 38--50 Vijay Karamcheti and Andrew A. Chien Software overhead in messaging layers: where does the time go? . . . . . . . . 51--60 Satish Chandra and James R. Larus and Anne Rogers Where is time spent in message-passing and shared-memory programs? . . . . . . 61--73 William J. Schmidt and Kelvin D. Nilsen Performance of a hardware-assisted real-time garbage collector . . . . . . 76--85 William J. Schmidt and Kelvin D. Nilsen Performance of a hardware-assisted real-time garbage collector . . . . . . 76--85 Michael Wu and Willy Zwaenepoel eNVy: a non-volatile, main memory storage system . . . . . . . . . . . . . 86--97 Michael Wu and Willy Zwaenepoel eNVy: a non-volatile, main memory storage system . . . . . . . . . . . . . 86--97 Michael Upton and Thomas Huff and Trevor Mudge and Richard Brown Resource allocation in a high clock rate microprocessor . . . . . . . . . . . . . 98--109 Chandramohan A. Thekkath and Henry M. Levy Hardware and software support for efficient exception handling . . . . . . 110--119 Pramod V. Argade and David K. Charles and Craig Taylor A technique for monitoring run-time dynamics of an operating system and a microprocessor executing user applications . . . . . . . . . . . . . . 122--131 Richard Uhlig and David Nagle and Trevor Mudge and Stuart Sechrest Trap-driven simulation with Tapeworm II 132--144 Richard Uhlig and David Nagle and Trevor Mudge and Stuart Sechrest Trap-driven simulation with Tapeworm II 132--144 Ann Marie Grizzaffi Maynard and Colette M. Donnelly and Bret R. Olszewski Contrasting characteristics and cache performance of technical and multi-user commercial workloads . . . . . . . . . . 145--156 Brian N. Bershad and Dennis Lee and Theodore H. Romer and J. Bradley Chen Avoiding conflict misses dynamically in large direct-mapped caches . . . . . . . 158--170 Madhusudhan Talluri and Mark D. Hill Surpassing the TLB performance of superpages with less operating system support . . . . . . . . . . . . . . . . 171--182 David M. Gallagher and William Y. Chen and Scott A. Mahlke and John C. Gyllenhaal and Wen-mei W. Hwu Dynamic memory disambiguation using the memory conflict buffer . . . . . . . . . 183--193 Kenichi Hayashi and Tsunehisa Doi and Takeshi Horie and Yoichi Koyanagi and Osamu Shiraki and Nobutaka Imamura and Toshiyuki Shimizu and Hiroaki Ishihata and Tatsuya Shindo AP1000+: architectural support of PUT/GET interface for parallelizing compiler . . . . . . . . . . . . . . . . 196--207 James R. Larus and Brad Richards and Guhan Viswanathan LCM: memory system support for parallel language implementation . . . . . . . . 208--218 Steven Cameron Woo and Jaswinder Pal Singh and John L. Hennessy The performance advantages of integrating block data transfer in cache-coherent multiprocessors . . . . . 219--229 Cliff Young and Michael D. Smith Improving the accuracy of static branch prediction using branch correlation . . 232--241 Brad Calder and Dirk Grunwald Reducing branch costs via branch alignment . . . . . . . . . . . . . . . 242--251 Steve Carr and Kathryn S. McKinley and Chau--Wen Tseng Compiler optimizations for improving data locality . . . . . . . . . . . . . 252--262 Dawson R. Engler and Todd A. Proebsting DCG: an efficient, retargetable dynamic code generation system . . . . . . . . . 263--272 Mark Heinrich and Jeffrey Kuskin and David Ofelt and John Heinlein and Joel Baxter and Jaswinder Pal Singh and Richard Simoni and Kourosh Gharachorloo and David Nakahira and Mark Horowitz and Anoop Gupta and Mendel Rosenblum and John Hennessy The performance impact of flexibility in the Stanford FLASH multiprocessor . . . 274--285 Jonas Skeppstedt and Per Stenström Simple compiler algorithms to reduce ownership overhead in cache coherence protocols . . . . . . . . . . . . . . . 286--296 Ioannis Schoinas and Babak Falsafi and Alvin R. Lebeck and Steven K. Reinhardt and James R. Larus and David A. Wood Fine-grain access control for distributed shared memory . . . . . . . 297--306 Ioannis Schoinas and Babak Falsafi and Alvin R. Lebeck and Steven K. Reinhardt and James R. Larus and David A. Wood Fine-grain access control for distributed shared memory . . . . . . . 297--306 James Laudon and Anoop Gupta and Mark Horowitz Interleaving: a multithreading technique targeting multiprocessors and workstations . . . . . . . . . . . . . . 308--318 Nicholas P. Carter and Stephen W. Keckler and William J. Dally Hardware support for fast capability-based addressing . . . . . . 319--327 Radhika Thekkath and Susan J. Eggers The effectiveness of multiple hardware contexts . . . . . . . . . . . . . . . . 328--337
Thilo Kielmann and Mira Mezini and Arjan Loeffen 4th Workshop for Doctoral Students in Object-Oriented Systems . . . . . . . . 7--10 Azer Bestavros and Richard Gerber and Stephen P. Masticola Workshop on language, compiler, and tool support for real-time systems . . . . . 11--17 Joseph Bergin A report on object-oriented extensions to Pascal . . . . . . . . . . . . . . . 18--24 Amit Ganesh Fusing loops with backward inter loop data dependence . . . . . . . . . . . . 25--30 Robert P. Wilson and Robert S. French and Christopher S. Wilson and Saman P. Amarasinghe and Jennifer M. Anderson and Steve W. K. Tjiang and Shih-Wei Liao and Chau-Wen Tseng and Mary W. Hall and Monica S. Lam and John L. Hennessy SUIF: an infrastructure for research on parallelizing and optimizing compilers 31--37 Brian A. Malloy and John D. McGregor and Anand Krishnaswamy and Murali Medikonda An extensible program representation for object-oriented software . . . . . . . . 38--47 Wim Codenie and Koen De Hondt and Theo D'Hondt and Patrick Steyaert Agora: message passing as a foundation for exploring OO language concepts . . . 48--57 David L. Shang Covariant specification . . . . . . . . 58--65 Michael L. Nelson Considerations in choosing a concurrent/distributed object-oriented programming language . . . . . . . . . . 66--71 Conrad Weisert Comment on poor practice in coding examples . . . . . . . . . . . . . . . . 72--72 Farooq Butt Rapid development of a source-level debugger for PowerPC microprocessors . . 73--77 Rakesh Agarwal The C++ interface in objectivity . . . . 78--86 Joseph P. Skudlarek Remarks on ``A methodology for implementing highly concurrent data'' 87--93 Bruce Hahne and Hiroyuki Sat\=o Using YACC and Lex with C++ . . . . . . 94--103 Thomas Wang Better C: an Object-Oriented C language with automatic memory manager suitable for interactive applications . . . . . . 104--111 Thomas Wang Eliminate memory fragmentation through holes in the heap . . . . . . . . . . . 112--113
Dianxiang Xu and Guoliang Zheng Logical Objects with Constraints . . . . 5--10 Ming-Yuan Zhu Program Transformation in Constructive Type Theory . . . . . . . . . . . . . . 11--19 Myung Ho Kim A New Iteration Mechanism for the C++ Programming Language . . . . . . . . . . 20--26 Erkan Tin and Varol Akman and Murat Ersan Towards situation-oriented programming languages . . . . . . . . . . . . . . . 27--36 E. Tin and V. Akman and M. Ersan Towards Situation-Oriented Programming Languages . . . . . . . . . . . . . . . 27 Max Copperman and Jeff Thomas Poor Man's Watchpoints . . . . . . . . . 37--44 Henry G. Baker ``Use-once'' variables and linear objects: storage management, reflection and multi-threading . . . . . . . . . . 45--52 H. G. Baker `Use-Once' Variables and Linear Objects-Storage Management, Reflection and Multi-Threading . . . . . . . . . . 45 Pierre Mellier and François Grize OVIDE: A Tool for Data Acquisition and Validation . . . . . . . . . . . . . . . 53--61
Katsumi Maruyama A name change from ``COOL'' to ``ACOOL'' 2--2 Giuseppe Castagna and Gary T. Leavens Foundations of Object-Oriented Languages: 2nd Workshop report . . . . . 5--11 L. Raiha A Brief Look at Extension Programming Before and Now . . . . . . . . . . . . . 12--20 Liisa Räihä A brief look at extension programming before and now . . . . . . . . . . . . . 12--20 J. A. Gallud and J. M. García The Specification of a Generic Multicomputer Using Lotos . . . . . . . 21--24 Steven J. Beaty ParsesraP: Using one grammar to specify both input and output . . . . . . . . . 25--32 Jean-Louis Boulanger Object Oriented Method for Axiom . . . . 33--41 Youfeng Wu Strength Reduction of Multiplications by Integer Constants . . . . . . . . . . . 42--48 Szabolcs Ferenczi Guarded methods vs. inheritance anomaly: inheritance anomaly solved by nested guarded method calls . . . . . . . . . . 49--58 Cyrus F. Nourani Intelligent and multi agent object level computing: the preliminary overview . . 59--64
Vugranam C. Sreedhar and Guang R. Gao and Yong-fong Lee Incremental Computation of Dominator Trees . . . . . . . . . . . . . . . . . 1--12 Richard A. Kelsey A Correspondence Between Continuation Passing Style and Static Single Assignment Form . . . . . . . . . . . . 13--22 David A. Berson and Rajiv Gupta and Mary Lou Soffa GURRR: A Global Unified Resource Requirements Representation . . . . . . 23--34 Cliff Click and Michael Paleczny A Simple Graph-Based Intermediate Representation . . . . . . . . . . . . . 35--49 Erik Ruf Optimizing Sparse Representations for Dataflow Analysis . . . . . . . . . . . 50--61 Bjarne Steensgaard Sparse Functional Stores for Imperative Programs . . . . . . . . . . . . . . . . 62--70 Kevin O'Brien and Kathryn M. O'Brien and Martin Hopkins and Arvin Shepherd and Ron Unrau XIL and YIL: The Intermediate Languages of TOBEY . . . . . . . . . . . . . . . . 71--82 Pascal Aubry and Thierry Gautier GC: The Data-Flow Graph Format of Synchronous Programming . . . . . . . . 83--93 Sachin V. Chitnis and Manoranjan Satpathy and Sundeep Oberoi Rationalized Three Instruction Machine 94--102 Frédéric Broustaut and Christian Fabre and François de Ferri\`ere and Éric Ivanov and Mauro Fiorentini Verification of ANDF Components . . . . 103--110 James Gosling Java intermediate bytecodes: ACM SIGPLAN workshop on intermediate representations (IR'95) . . . . . . . . . . . . . . . . 111--118 Brian T. Lewis and L. Peter Deutsch and Theodore C. Goldstein Clarity MCode: A Retargetable Intermediate Representation for Compilation . . . . . . . . . . . . . . 119--128
Klaus Krauter Book Review: Tool Integration: Environments and Frameworks, Edited by: D. Schefstrom and G. van den Broek . . . 7--7 Rod Falanga Book Review: ObjectWindows for C++: A Shortcut to Windows Programming by Robert J. Traister . . . . . . . . . . . 8--8 Peter Grogono Book Review: Visual Basic Professional 3.9 Programming by Thomas W. Torgerson 9--9 James Noble Book Review: Parallel Logic Programming by Akikazu Takeuchi . . . . . . . . . . 10--10 Diomidis Spinellis Book Review: High-Speed Windows Applications: Multitasking Design Methods by Dr. Bruce E. Krell . . . . . 11--11 Christine Youngblut Book Review: User Interface Software, edited by Len Bass and Prasun Dewan . . 12--12 Jonathan Schilling Dynamically-Valued Constants: An Underused Language Feature . . . . . . . 13--20 Jonathan L. Schilling Dynamically-valued constants: an underused language feature . . . . . . . 13--20 John English Multithreading in C++ . . . . . . . . . 21--28 John A. Trono A Comparison of Three Strategies for Computing Letter Oriented, Minimal Perfect Hashing Functions . . . . . . . 29--35 Peter Kokol and Ivan Rozman and Vlado Venuti User Interface Metrics . . . . . . . . . 36--38 Limsoon Wong Polymorphic Queries Across Sets, Bags, and Lists . . . . . . . . . . . . . . . 39--44 Thant Tessman Adding Generic Functions to Scheme . . . 45--50 George Becker and Neil V. Murray Efficient Execution of Programs with Static Semantics . . . . . . . . . . . . 51--60 Paul Kleinrubatscher and Albert Kriegshaber and Robert Zöchling and Robert Glück Fortran Program Specialization . . . . . 61--70 Marjan Mernik and Nikolay Korbar and Viljem \vZumer LISA: A Tool for Automatic Language Implementation . . . . . . . . . . . . . 71--79 Marjan Mernik and Nikolaj Korbar and Viljem \vZumer LISA: a tool for automatic language implementation . . . . . . . . . . . . . 71--79 John F. \vCigas Proper Packaging Promotes Parameter Passing Proficiency . . . . . . . . . . 80--80
Bruno Stiglic and Marjan Heri\vcko and Ivan Rozman How to Evaluate Object-Oriented Software Development? . . . . . . . . . . . . . . 3--10 P. D. Terry Umbriel --- another minimal programming language . . . . . . . . . . . . . . . . 11--17 Apostolos Syropoulos and Alexandros Karakos Bottom in the Imperative World . . . . . 18--20 David L. Shang Covariant Deep Subtyping Reconsidered 21--28 Farooq Butt Implementing FORTRAN77 Support in the GNU gdb Debugger . . . . . . . . . . . . 29--36 Peter Kokol and Viljem \vZumer and Janez Brest and Marjan Mernik PROMIS: A Software Metrics Tool Generator . . . . . . . . . . . . . . . 37--42 Igor A. Borovikov L-systems with inheritance: an object-oriented extension of L-systems 43--60 Igor A. Borovikov L-Systems with Inheritance: An Object-Oriented Extension of L-Systems 43
Robert P. Wilson and Monica S. Lam Efficient context-sensitive pointer analysis for C programs . . . . . . . . 1--12 Robert P. Wilson and Monica S. Lam Efficient context-sensitive pointer analysis for C programs . . . . . . . . 1--12 Erik Ruf Context-insensitive alias analysis reconsidered . . . . . . . . . . . . . . 13--22 Erik Ruf Context-insensitive alias analysis reconsidered . . . . . . . . . . . . . . 13--22 Paul R. Carini and Michael Hind Flow-sensitive interprocedural constant propagation . . . . . . . . . . . . . . 23--31 Paul R. Carini and Michael Hind Flow-sensitive interprocedural constant propagation . . . . . . . . . . . . . . 23--31 Keshav Pingali and Gianfranco Bilardi APT: a data structure for optimal control dependence computation . . . . . 32--46 Peng Tu and David Padua Efficient building and placing of gating functions . . . . . . . . . . . . . . . 47--55 Frank Mueller and David B. Whalley Avoiding conditional branches by code replication . . . . . . . . . . . . . . 56--66 Jason R. C. Patterson Accurate static branch prediction by value range propagation . . . . . . . . 67--78 Brad Calder and Dirk Grunwald and Donald Lindsay and James Martin and Michael Mozer and Benjamin Zorn Corpus-based static branch prediction 79--92 Brad Calder and Dirk Grunwald and Donald Lindsay and James Martin and Michael Mozer and Benjamin G. Zorn Corpus-based static branch prediction 79--92 Jeffrey Dean and Craig Chambers and David Grove Selective specialization for object-oriented languages . . . . . . . 93--102 Mary F. Fernández Simple and effective link-time optimization of Modula-3 programs . . . 103--115 Zhong Shao and Andrew W. Appel A type-based compiler for Standard ML 116--129 Robert G. Burger and Oscar Waddell and R. Kent Dybvig Register allocation using lazy saves, eager restores, and greedy shuffling . . 130--138 Erik R. Altman and R. Govindarajan and Guang R. Gao Scheduling and mapping: software pipelining in the presence of structural hazards . . . . . . . . . . . . . . . . 139--150 Jack L. Lo and Susan J. Eggers Improving balanced scheduling with compiler optimizations that increase instruction-level parallelism . . . . . 151--162 Pascalin Amagbégnon and Lo\"\ic Besnard and Paul Le Guernic Implementation of the data-flow synchronous language SIGNAL . . . . . . 163--173 Pascalin Amagbégnon and Lo\"\ic Besnard and Paul Le Guernic Implementation of the data-flow synchronous language SIGNAL . . . . . . 163--173 Alexander Aiken and Manuel Fähndrich and Raph Levien Better static memory management: improving region-based analysis of higher-order languages . . . . . . . . . 174--185 Stan Liao and Srinivas Devadas and Kurt Keutzer and Steve Tjiang and Albert Wang Storage assignment to decrease code size 186--195 Arvind Krishnamurthy and Katherine Yelick Optimizing parallel programs with explicit synchronization . . . . . . . . 196--204 Micha\l Cierniak and Wei Li Unifying data and control transformations for distributed shared-memory machines . . . . . . . . . 205--217 Lawrence Rauchwerger and David Padua The LRPD test: speculative run-time parallelization of loops with privatization and reduction parallelization . . . . . . . . . . . . 218--232 Jens Knoop and Oliver Rüthing and Bernhard Steffen The power of assignment motion . . . . . 233--245 Cliff Click Global code motion: global value numbering . . . . . . . . . . . . . . . 246--257 Gagan Agrawal and Joel Saltz and Raja Das Interprocedural partial redundancy elimination and its application to distributed memory compilation . . . . . 258--269 Priyadarshan Kolte and Michael Wolfe Elimination of redundant array subscript range checks . . . . . . . . . . . . . . 270--278 Stephanie Coleman and Kathryn S. McKinley Tile size selection using cache organization and data layout . . . . . . 279--290 James R. Larus and Eric Schnarr EEL: machine-independent executable editing . . . . . . . . . . . . . . . . 291--300 James R. Larus and Eric Schnarr EEL: machine-independent executable editing . . . . . . . . . . . . . . . . 291--300 David A. Barrett and Benjamin G. Zorn Garbage collection using a dynamic threatening boundary . . . . . . . . . . 301--314 M. Anton Ertl Stack caching for interpreters . . . . . 315--327
Klaus Krauter Book Review: Tool Integration: Environments and Frameworks, Edited by: D. Schefstrom and G. van den Broek . . . 2--2 Piaw Na Book Review: Debugging: Creative Techniques and Tools for Software Repair, by Martin Stitt . . . . . . . . 3--3 Diomidis Spinellis Book Review: High-Speed Windows Applications: Multitasking Design Methods, by Dr. Bruce E. Krell . . . . . 4--4 Mukund Raghavachari Book Review: The High Performance Fortran Handbook by Charles Koelbel, David Loveman, Robert Schreiber, Guy Steele Jr., and Mary Zosel . . . . . . . 5--5 Nandakumar Sankaran Book Review: Categories for Types by Roy L. Crole . . . . . . . . . . . . . . . . 6--6 Peter Parsons Book Review: Parallel Algorithms for Digital image Processing, Computer Vision and Neural Networks, by Ed. I. Pitas . . . . . . . . . . . . . . . . . 7--7 Samuel Kamin and Eric Golin Report of a workshop on future directions in programming languages and compilers . . . . . . . . . . . . . . . 9--28 Anonymous Report: Future Directions Workshop . . . 9 Marco de Vivo and Gabriela O. de Vivo and Luis Gonzalez A Brief ESSAY on Capabilities . . . . . 29--36 James Howatt A project-based approach to programming language evaluation . . . . . . . . . . 37--40 James Howatt A Project-Based Approach to Programming Language Evaluation . . . . . . . . . . 37 Jon Hallett Formulating Update Messages . . . . . . 41--44 Pavol Návrat and Maria Bieliková Representing Calendrical Algorithms and Data in Prolog and Prolog III Languages 45--51 Li XueDong and Zheng Guoliang Introducing virtual instance variables in classes to provide sufficient support for encapsulation . . . . . . . . . . . 52--56 XueDong Li and GuoLiang Zheng Introducing Virtual Instance Variables in Classes to Provide Sufficient Support for Encapsulation . . . . . . . . . . . 52
Rajesh Bordawekar and Alok Choudhary and Ken Kennedy and Charles Koelbel and Michael Paleczny A model and compilation strategy for out-of-core data parallel programs . . . 1--10 Jacob Gotwals and Suresh Srinivas and Dennis Gannon pC++/streams: A Library for I/O on Complex Distributed Data Structures . . 11--18 John Darlington and Yi-ke Guo and Hing Wing To and Jin Yang Parallel skeletons for structured composition . . . . . . . . . . . . . . 19--28 Martin C. Carlisle and Anne Rogers Software caching and computation migration in Olden . . . . . . . . . . . 29--38 William W. Carlson and Jesse M. Draper Distributed data access in AC . . . . . 39--47 Niclas Andersson and Peter Fritzson Generating parallel code from object oriented mathematical models . . . . . . 48--57 Anwar M. Ghuloum and Allan L. Fisher Flattening and parallelizing irregular, recurrent loop nests . . . . . . . . . . 58--67 Shubhendu S. Mukherjee and Shamik D. Sharma and Mark D. Hill and James R. Larus and Anne Rogers and Joel Saltz Efficient support for irregular applications on distributed-memory machines . . . . . . . . . . . . . . . . 68--79 Eric A. Brewer High-level optimization via automated statistical modeling . . . . . . . . . . 80--91 E. A. Brewer High-level optimization via automated statistical modeling . . . . . . . . . . 80--91 Jean-François Collard and Denis Barthou and Paul Feautrier Fuzzy array dataflow analysis . . . . . 92--101 Ken Kennedy and Nenad Nedeljkovic and Ajay Sethi A Linear-Time Algorithm for Computing the Memory Access Sequence in Data-Parallel Programs . . . . . . . . . 102--111 Gwan-Hwan Hwang and Jenq Kuen Lee and Dz-Ching Ju An array operation synthesis scheme to optimize Fortran 90 programs . . . . . . 112--122 David A. Bader and Joseph JáJá Parallel algorithms for image histogramming and connected components with an experimental study (extended abstract) . . . . . . . . . . . . . . . 123--133 Jaspal Subhlok and Gary Vondran Optimal mapping of sequences of data parallel tasks . . . . . . . . . . . . . 134--143 Chau-Wen Tseng Compiler optimizations for eliminating barrier synchronization . . . . . . . . 144--155 Michael Philippsen Automatic alignment of array data and processes to reduce communication time on DMPPs . . . . . . . . . . . . . . . . 156--165 Jennifer M. Anderson and Saman P. Amarasinghe and Monica S. Lam Data and computation transformations for multiprocessors . . . . . . . . . . . . 166--178 Tor E. Jeremiassen and Susan J. Eggers Reducing false sharing on shared memory multiprocessors through compile time data transformations . . . . . . . . . . 179--188 Ellen Spertus and William J. Dally Evaluating the locality benefits of active messages . . . . . . . . . . . . 189--198 Robert W. Wisniewski and Leonidas I. Kontothanassis and Michael L. Scott High performance synchronization algorithms for multiprogrammed multiprocessors . . . . . . . . . . . . 199--206 Robert D. Blumofe and Christopher F. Joerg and Bradley C. Kuszmaul and Charles E. Leiserson and Keith H. Randall and Yuli Zhou Cilk: an efficient multithreaded runtime system . . . . . . . . . . . . . . . . . 207--216 Deborah A. Wallach and Wilson C. Hsieh and Kirk L. Johnson and M. Frans Kaashoek and William E. Weihl Optimistic active messages: a mechanism for scheduling communication with computation . . . . . . . . . . . . . . 217--226 Anonymous Conference Organization . . . . . . . . III Anonymous External Referees . . . . . . . . . . . IV
Stuart Maclean and Sean Smith Object-oriented programming for embedded systems . . . . . . . . . . . . . . . . 3--8 Stuart MacLean and Sean Smith Object-Oriented Programming for Embedded Systems . . . . . . . . . . . . . . . . 3 Gabriela O. de Vivo and Marco de Vivo A Pragmatic Approach to C++, Eiffel and Ada 9X Programming . . . . . . . . . . . 9--16 Henry G. Baker CONS Should Not CONS Its Arguments, Part II: Cheney on the M.T.A. . . . . . . . . 17--20 C. K. Yuen A Functional FOR Loop . . . . . . . . . 21--24 Karl Traunmüller The checkers problem --- a solution with linear time complexity . . . . . . . . . 25--32 Brian L. Meek What is a procedure call? . . . . . . . 33--40 Brian L. Meek What is a Procedure Call? . . . . . . . 33 Jian Lu Introducing Data Decomposition into VDM for Tractable Development of Programs 41--50
Arthur Allen and Dennis de Champeaux Extending the Statechart Formalism: Event Scheduling and Disposition . . . . 1--16 Aamod Sane and Roy Campbell Object-oriented state machines: subclassing, composition, delegation, and genericity . . . . . . . . . . . . . 17--32 A. Sane and R. Campbell Object-Oriented State Machines: Subclassing, Composition, Delegation and Genericity . . . . . . . . . . . . . . . 17--32 Ruth Malan and Derek Coleman and Reed Letsinger Lessons from the Experiences of Leading-Edge Object Technology Projects in Hewlett--Packard . . . . . . . . . . 33--46 Randall B. Smith and John Maloney and David Ungar The Self-4.0 User Interface: Manifesting a System-wide Vision of Concreteness, Uniformity, and Flexibility . . . . . . 47--60 Walter R. Smith Using a prototype-based language for user interface: the Newton project's experience . . . . . . . . . . . . . . . 61--72 W. R. Smith Using a Prototype-based Language for User Interface: The Newton Project's Experience . . . . . . . . . . . . . . . 61--72 David Ungar Annotating Objects for Transport to Other Worlds . . . . . . . . . . . . . . 73--87 Laura Hill and Kenny Rubin and John Daniels and Charles Berman and James Coplien and Doug Johnson Managing object oriented projects (panel session) . . . . . . . . . . . . . . . . 88--90 Ole Agesen and Urs Hölzle Type Feedback vs. Concrete Type Inference: A Comparison of Optimization Techniques for Object-Oriented Languages 91--107 David Grove and Jeffrey Dean and Charles Garrett and Craig Chambers Profile-guided receiver class prediction 108--123 D. Grove and J. Dean and C. Garrett and C. Chambers Profile-Guided Receiver Class Prediction 108--123 Andrew C. Myers Bidirectional Object Layout for Separate Compilation . . . . . . . . . . . . . . 124--139 John D. McGregor and Ed Berard and Don Firesmith and Brian Marick and Dave Thomson OO testing in the real world (panel): lessons for all . . . . . . . . . . . . 140--140 Karel Driesen and Urs Hölzle Minimizing Row Displacement Dispatch Tables . . . . . . . . . . . . . . . . . 141--155 Mark Day and Robert Gruber and Barbara Liskov and Andrew C. Myers Subtypes vs. Where Clauses: Constraining Parametric Polymorphism . . . . . . . . 156--168 Jonathan Eifrig and Scott Smith and Valery Trifonov Sound Polymorphic Type Inference for Objects . . . . . . . . . . . . . . . . 169--184 Frank Armour and Todd Cotton and Geoff Hambrick and Barbara Moo and Dennis Mancl Tailoring OO analysis and design methods (panel) . . . . . . . . . . . . . . . . 185--186 Jonathan G. Rossie, Jr. and Daniel P. Friedman An Algebraic Semantics of Subobjects . . 187--199 Raymie Stata and John V. Guttag Modular Reasoning in the Presence of Subclassing . . . . . . . . . . . . . . 200--214 J. Malenfant On the Semantic Diversity of Delegation-Based Programming Languages 215--230 Steven Fraser and Grady Booch and Frank Buschmann and Jim Coplien and Norm Kerth and Ivar Jacobson and Mary Beth Rosson Patterns: cult to culture? . . . . . . . 231--234 H. Ossher and M. Kaplan and W. Harrison and A. Katz Subject-Oriented Composition Rules . . . 235--250 Harold Ossher and Matthew Kaplan and William Harrison and Alexander Katz and Vincent Kruskal Subject-oriented composition rules . . . 235--250 Dirk Riehle How and Why to Encapsulate Class Trees 251--264 S. Ducasse and M. Blay-Fornarino and A. M. Pinna-Dery A Reflective Model for First Class Dependencies . . . . . . . . . . . . . . 265--280 Martin Griss and Ted Biggerstaff and Sallie Henry and Ivar Jacobson and Doug Lea and Will Tracz Systematic software reuse (panel session): objects and frameworks are not enough . . . . . . . . . . . . . . . . . 281--282 Bob Marcus and Bob Atkinson and Chris Horn and Hari Madduri The future of distributed object computing (Panel Session) . . . . . . . 283--284 Shigeru Chiba A Metaobject Protocol for C++ . . . . . 285--299 Hidehiko Masuhara and Satoshi Matsuoka and Kenichi Asai and Akinori Yonezawa Compiling away the meta-level in object-oriented concurrent reflective languages using partial evaluation . . . 300--315 H. Masuhara and S. Matsuoka and K. Asai and Yonezawa and A. Compiling Away the Meta-Level in Object-Oriented Concurrent Reflective Languages Using Partial Evaluation . . . 300--315 Philippe Mulet and Jacques Malenfant and Pierre Cointe Towards a Methodology for Explicit Composition of MetaObjects . . . . . . . 316--330 Rick Cattell and Frank Manola and Richard Soley and Jeff Sutherland and Mary Loomis Objects and database standards (panel) 331--332 Sanjiv Gossain and Don Batory and Hassan Gomaa and Mitch Lubars and Christopher Pidgeon and Ed Seidewitz Objects and domain engineering (panel) 333--336 Richard Helm ``Patterns in Practice'' . . . . . . . . 337--341 Danny B. Lange and Yuichi Nakamura Interactive Visualization of Design Patterns Can Help in Framework Understanding . . . . . . . . . . . . . 342--357 H. Hueni and R. Johnson and R. Engel A Framework for Network Protocol Software . . . . . . . . . . . . . . . . 358--369 Hermann Hüni and Ralph Johnson and Robert Engel A framework for network protocol software . . . . . . . . . . . . . . . . 358--369 H. Albrecht Schmid Creating the Architecture of a Manufacturing Framework by Design Patterns . . . . . . . . . . . . . . . . 370--384 Hans Albrecht Schmid Creating the architecture of a manufacturing framework by design patterns . . . . . . . . . . . . . . . . 370--384 Jun-ichiro Itoh and Yasuhiko Yokote and Mario Tokoro SCONE: Using Concurrent Objects For Low-level Operating System Programming 385--398 A. Kristensen and C. Low Problem-Oriented Object Memory: Customizing Consistency . . . . . . . . 399--413 Anders Kristensen and Colin Low Problem-oriented object memory: customizing consistency . . . . . . . . 399--413 Don Barton and Tom Arnold Evolving to objects --- the Witches' Brew . . . . . . . . . . . . . . . . . . 414--425 I. R. Forman and M. H. Conner and S. H. Danforth and L. K. Raper Ira Forman, ``Release-to-Release Binary Compatibility in SOM'' . . . . . . . . . 426--438 Ira R. Forman and Michael H. Conner and Scott H. Danforth and Larry K. Raper Release-to-release binary compatibility in SOM . . . . . . . . . . . . . . . . . 426--438 Thomas P. Vayda ``Lessons from the Battlefield'' . . . . 439--452 Matthew Haines and Piyush Mehrotra and John Van Rosendale SmartFiles: An OO Approach to Data File Interoperability . . . . . . . . . . . . 453--466 Jerry Kiernan and Michael J. Carey Extending SQL-92 for OODB Access: Design and Implementation Experience . . . . . 467--480
T.-Y. Huang and W.-S. Liu Predicting the worst-case execution time of the concurrent execution of instructions and cycle-stealing DMA I/O operations . . . . . . . . . . . . . . . 1--6 Jongwon Lee and Sungyoung Lee and Hyungill Kim Scheduling of hard aperiodic tasks in hybrid static/dynamic priority systems 7--19 Kelvin D. Nilsen and Bernt Rygg Worst-case execution time analysis on modern processors . . . . . . . . . . . 20--30 Kelvin D. Nilsen and Bernt Rygg Worst-case execution time analysis on modern processors . . . . . . . . . . . 20--30 Flavio Bonfatti and Gianni Gadda and Paola Daniela Monari Re-usable software design for programmable logic controllers . . . . . 31--40 Flavio Bonfatti and Gianni Gadda and Paola Daniela Monari Re-usable software design for programmable logic controllers . . . . . 31--40 Tai M. Chung and Hank G. Dietz Language constructs and transformation for hard real-time systems . . . . . . . 41--49 Shangping Ren and Gul A. Agha RTsynchronizer: language support for real-time specifications in distributed systems . . . . . . . . . . . . . . . . 50--59 Filip Thoen and Marco Cornero and Gert Goossens and Hugo De Man Software synthesis for real-time information processing systems . . . . . 60--69 S. Campos and E. Clarke and W. Marrero and M. Minea Verus: a tool for quantitative analysis of finite-state real-time systems . . . 70--78 M. Jourdan and F. Maraninchi Static timing analysis of real-time systems . . . . . . . . . . . . . . . . 79--87 Yau-Tsun Steven Li and Sharad Malik Performance analysis of embedded software using implicit path enumeration 88--98 Lo Ko and David B. Whalley and Marion G. Harmon Supporting user-friendly analysis of timing constraints . . . . . . . . . . . 99--107 Hermann Kopetz and Roman Nossal The Cluster Compiler --- a tool for the design of time-triggered real-time systems . . . . . . . . . . . . . . . . 108--116 David Wilner WindView: a tool for understanding real-time embedded software through system vizualization . . . . . . . . . . 117--123 Rich Gerber and Steve Tjiang and David Whalley and David Wilner and Mike Wolfe Appropriate interfaces between design tools, languages, compilers and runtimes in real-time systems (panel) . . . . . . 124--124 Frank Mueller Compiler support for software-based cache partitioning . . . . . . . . . . . 125--133 André Bakkers and Johan Sunter and Evert Ploeg Automatic generation of scheduling and communication code in real-time parallel programs . . . . . . . . . . . . . . . . 134--145 Stan Schneider and Vincent Chen and Jay Steele and Gerardo Pardo-Castellote The ControlShell component-based real-time programming system, and its application to the Marsokhod Martian Rover . . . . . . . . . . . . . . . . . 146--155 Stan Schneider and Vincent Chen and Jay Steele and Gerardo Pardo-Castellote The ControlShell component-based real-time programming system, and its application to the Marsokhod Martian Rover . . . . . . . . . . . . . . . . . 146--155
Conrad Weisert Making C++ Practical for Business Applications: 3 essential classes . . . 4--8 Per Brinch Hansen Efficient Parallel Recursion . . . . . . 9--16 Tao Li A Rule-based and Object-Oriented AI Programming Language . . . . . . . . . . 17--24 Gansheng Li A New Approach for Efficient Implementation of Ada Multi-Tasking . . 25--31 John D. Ramsdell CST: C State Transformers . . . . . . . 32--36 Zhu Genjiang and Xie Li and Sun Zhongxiu A New Methodology of Data Dependence Analysis for Parallelizing C++ . . . . . 37--42 Yves L. Noyelle Disciplined C . . . . . . . . . . . . . 43--50 Zhang Xinger An Approach to Executable Specifications, Based on Formal Source-To-Source Conversion . . . . . . 51--58
Ron K. Cytron Notices: Editorial: A new look for an old friend . . . . . . . . . . . . . . . 1--1 Richard Helm Patterns, architecture and software . . 2--3 Richard Helm Patterns: Language Trends: Patterns, Architecture and Software . . . . . . . 2--3 Preston Briggs Programming: Literate Programming: Remembering . . . . . . . . . . . . . . 4--5 Preston Briggs Remembering . . . . . . . . . . . . . . 4--5 G. Bowden Wise Language Tips: C++ Toolbox: A New Resource for C++ Programmers and an Invitation for Participation . . . . . . 6--8 G. Bowden Wise A new resource for C++ programmers and an invitation for participation . . . . 6--8 Kate Stewart Online: ../SIGPLAN/Hotlist: Starting Points . . . . . . . . . . . . . . . . . 9--11 Kate Stewart Starting points . . . . . . . . . . . . 9--11 Barbara Ryder Activities: Executive Committee News: Letter from the Chair: Changes to ACM SIGPLAN Bylaws . . . . . . . . . . . . . 12--17 Barbara Ryder Letter from the Chair: changes to ACM SIGPLAN bylaws . . . . . . . . . . . . . 12--17 Anonymous Conference Announcements --- MASPLAS'96 18--18 C. K. Yuen and M. D. Feng Tail-Recursive Parallel Summing of a Multi-List . . . . . . . . . . . . . . . 20--21 Andreas Zeller and Dorothea Lütkehaus DDD---A Free Graphical Front-End for UNIX Debuggers . . . . . . . . . . . . . 22--27 K. John Gough Bottom-up Tree Rewriting Tool MBURG . . 28--31 Myles F. Barrett and Marshall E. Giguere A Note on Covariance and Contravariance Unification . . . . . . . . . . . . . . 32--35 Jennifer Hamilton A Model for Implementing an Object-Oriented Design without Language Extensions . . . . . . . . . . . . . . . 36--43 Michael Klug Towards a Classification of Visibility Rules . . . . . . . . . . . . . . . . . 44--50
Ron K. Cytron Conference Corner: Call for Participation: MASPLAS '96 . . . . . . . 1--1 Mary Lou Soffa Activities: Executive Committee News: Letter from the Vice Chair for Conferences . . . . . . . . . . . . . . 2--3 A. Michael Berman Curricular Patterns: OO Techniques in the Classroom: Column Constructor . . . 4--5 A. Michael Berman OO techniques in the classroom: column constructor . . . . . . . . . . . . . . 4--5 Pankaj Agarwal Languages: Special-Purpose Languages: Describing Biological Cells by Computer Program . . . . . . . . . . . . . . . . 6--7 Pankaj Agarwal Special-purpose languages: describing biological cells by computer programs 6--7 Gabby Silberman Conference Corner: Conference Report: The Third International Conference on PARALLEL COMPUTING TECHNOLOGIES (PaCT-95), Saint Petersburg, Russia . . 8--9 Gabby Silberman Conference report: The International Conference on Parallel Computing Technologies (PaCT-95), Saint Petersburg, Russia . . . . . . . . . . . 8--9 Anonymous Call for Participation: ACM SIGPLAN International Conference on Functional Programming . . . . . . . . . . . . . . 10--10 Anonymous Call for Participation: ACM SIGPLAN Workshop on Functional Languages in Introductory Computing . . . . . . . . . 11--11 Richard L. Wexelblat Technical Correspondence . . . . . . . . 12--12 Alexey L. Lastovetsky mpC: A Multi-Paradigm Programming Language for Massively Parallel Computers . . . . . . . . . . . . . . . 13--20 Antti-Pekka Tuovinen and Jukka Paakki Translating SQL for Database Reengineering . . . . . . . . . . . . . 21--26 Terence J. Parr and Russell W. Quong LL and LR Translators Need $k > 1$ Lookahead . . . . . . . . . . . . . . . 27--34 Peter Kokol and Janez Brest and Viljem \vZumer Software complexity --- an alternative view . . . . . . . . . . . . . . . . . . 35--41 Bent Bruun Kristensen and Kasper Òsterbye A Conceptual Perspective on the Comparison of Object-Oriented Programming Languages . . . . . . . . . 42--54 Andrew W. Appel Intensional Equality ;=) for Continuations . . . . . . . . . . . . . 55--57
Brent Hailpern Activities: Executive Committee News: Awards Announcements . . . . . . . . . . 1--1 A. Michael Berman Curricular Patterns: OO Techniques in the Classroom: Philadelphia Dreaming . . 2--3 A. Michael Berman OO techniques in the classroom: Philadelphia dreaming . . . . . . . . . 2--3 Mary Beth Rossen Activities: Executive Committee News: The SIGPLAN Professional Activities Committee . . . . . . . . . . . . . . . 4--4 Mary Beth Rossen The SIGPLAN Professional Activities Committee . . . . . . . . . . . . . . . 4--4 Dan Yellin Debates: Point/Counterpoint: Do Programmers Need Seat Belts? . . . . . . 5--5 Dan Yellin Point/counterpoint: do programmers need seatbelts? . . . . . . . . . . . . . . . 5--5 Rob Strom Debates: Point: Do Programmers Need Seat Belts? . . . . . . . . . . . . . . . . . 6--7 Rob Strom Point: do programmers need seatbelts? 6--7 Richard Gabriel Counterpoint: do programmers need seatbelts? . . . . . . . . . . . . . . . 8--10 Richard Gabriel Debates: Counterpoint: Do Programmers Need Seat Belts? . . . . . . . . . . . . 8--10 Ron K. Cytron Conference Corner: Calendar . . . . . . 11--11 Anonymous Technical Correspondence . . . . . . . . 13--13 Guoping Jia and Guoliang Zheng Fair Transition System Specification: An Integrated Approach . . . . . . . . . . 14--21 Robin A. Vowels PL/I for OS/2 . . . . . . . . . . . . . 22--27 Sunny Y. Wang A New Sort Algorithm: Self-Indexed Sort 28--36
A. Michael Berman On beyond OOP . . . . . . . . . . . . . 1--3 A. Michael Berman Curricular Patterns: On Beyond OOP . . . 1--3 G. Bowden Wise Language Tips: C++ Toolbox: An Overview of the Standard Template Library . . . . 4--10 G. Bowden Wise An overview of the standard template library . . . . . . . . . . . . . . . . 4--10 Preston Briggs Automatic parallelization . . . . . . . 11--15 Preston Briggs Programming: Literate Programming: Automatic Parallelization . . . . . . . 11--15 Anonymous Conference Corner: Calendar . . . . . . 16--17 Anonymous Call for Papers: Principles of Programming Languages . . . . . . . . . 18--18 Anonymous Technical Correspondence . . . . . . . . 19--19 Robert E. Bruccoleri Technical Correspondence: WRAPGEN --- A Tool for the Use of Fortran and C Together in Portable Programs . . . . . 20--27 Robert E. Bruccoleri WRAPGEN: a tool for the use of Fortran and C together in portable programs . . 20--27 Michael Karr A translator from C to a $\lambda$-calculus representation . . . 28--31 Michael Karr A translator from C to a $\lambda$-calculus representation . . . 28--31 S. J. Goldsack and K. Lano and E. H. Dürr Annealing and data decomposition in VDM$^{++}$ . . . . . . . . . . . . . . . 32--38 Bradford J. Rodriguez and W. F. S. Poehlman A Survey of Object-Oriented Forths . . . 39--42 Bradford J. Rodriquez and W. F. S. Poehlman A survey of object-oriented Forths . . . 39--42 Leonard Zettel Toward an Object-Oriented Forth . . . . 43--44 Robin Whitty Object-Oriented Metrics: An Annotated Bibliography . . . . . . . . . . . . . . 45--75
John Ruttenberg and G. R. Gao and A. Stoutchinin and W. Lichtenstein Software Pipelining Showdown: Optimal vs. Heuristic Methods in a Production Compiler . . . . . . . . . . . . . . . . 1--11 Alexandre E. Eichenberger and Edward S. Davidson A reduced multipipeline machine description that preserves scheduling constraints . . . . . . . . . . . . . . 12--22 Cormac Flanagan and Matthew Flatt and Shriram Krishnamurthi and Stephanie Weirich and Matthias Felleisen Catching Bugs in the Web of Program Invariants . . . . . . . . . . . . . . . 23--32 Ali-Reza Adl-Tabatabai and Thomas Gross Source-Level debugging of Scalar Optimized Code . . . . . . . . . . . . . 33--43 David Evans Static Detection of Dynamic Memory Errors . . . . . . . . . . . . . . . . . 44--53 Martin C. Rinard and Pedro C. Diniz Commutativity Analysis: A New Analysis Framework for Parallelizing Compilers 54--67 Soumen Chakrabarti and Manish Gupta and Jong-Deok Choi Global Communication Analysis and Optimization . . . . . . . . . . . . . . 68--78 P. W. Trinder and K. Hammond and J. S. Mattson, Jr. and A. S. Partridge and S. L. Peyton Jones GUM: A Portable Parallel Implementation of Haskell . . . . . . . . . . . . . . . 79--88 Hans-J. Boehm Simple Garbage-Collector-Safety . . . . 89--98 Carl Bruggeman and Oscar Waddell and R. Kent Dybvig Representing Control in the Presence of One-Shot Continuations . . . . . . . . . 99--107 Robert G. Burger and R. Kent Dybvig Printing Floating-Point Numbers Quickly and Accurately . . . . . . . . . . . . . 108--116 Steven Dawson and C. R. Ramakrishnan and David S. Warren Practical Program Analysis Using General Purpose Logic Programming Systems --- A Case Study . . . . . . . . . . . . . . . 117--126 Ali-Reza Adl-Tabatabai and Geoff Langdale and Steven Lucco and Robert Wahbe Efficient and Language-Independent Mobile Programs . . . . . . . . . . . . 127--136 Peter Lee and Mark Leone Optimizing ML with Run-Time Code Generation . . . . . . . . . . . . . . . 137--148 Joel Auslander and Matthai Philipose and Craig Chambers and Susan J. Eggers and Brian N. Bershad Fast, Effective Dynamic Compilation . . 149--159 Dawson R. Engler \sc VCODE: A Retargetable, Extensible, Very Fast Dynamic Code Generation System 160--170 John Reppy and Jon Riecke Simple Objects for Standard ML . . . . . 171--180 D. Tarditi and G. Morrisett and P. Cheng and C. Stone and R. Harper and P. Lee TIL: A Type-Directed Optimizing Compiler for ML . . . . . . . . . . . . . . . . . 181--192 Suresh Jagannathan and Andrew Wright Flow-directed Inlining . . . . . . . . . 193--205 Michael Sperber and Peter Thiemann Realistic Compilation by Partial Evaluation . . . . . . . . . . . . . . . 206--214 Todd B. Knoblock and Erik Ruf Data Specialization . . . . . . . . . . 215--225 Norman Ramsey Relocating Machine Instructions by Currying . . . . . . . . . . . . . . . . 226--236 Satish Chandra and Brad Richards and James R. Larus Teapot: Language Support for Writing Memory Coherence Protocols . . . . . . . 237--248 Mark W. Bailey and Jack W. Davidson Target-Sensitive Construction of Diagnostic Programs for Procedure Calling Sequence Generators . . . . . . 249--257 Mark Russinovich and Bryce Cogswell Replay For Concurrent Non-Deterministic Shared-Memory Applications . . . . . . . 258--266 G. Ramalingam Data Flow Frequency Analysis . . . . . . 267--277 Vugranam C. Sreedhar and Guang R. Gao and Yong-Fong Lee A New Framework for Exhaustive and Incremental Data Flow Analysis using DJ Graphs . . . . . . . . . . . . . . . . . 278--290 Gianfranco Bilardi and Keshav Pingali A Framework for Generalized Control Dependence . . . . . . . . . . . . . . . 291--300
Simon Peyton Jones and Will Partain and André Santos Let-floating: Moving bindings to give faster programs . . . . . . . . . . . . 1--12 Amr Sabry and Philip Wadler A reflection on call-by-value . . . . . 13--24 Thér\`ese Hardin and Luc Maranget and Bruno Pagano Functional back-ends within the lambda-sigma calculus . . . . . . . . . 25--33 Niklas Röjemo and Colin Runciman Lag, drag, void and use --- Heap profiling and space-efficient compilation revisited . . . . . . . . . 34--41 David S. Wise and Joshua Walgenbach Static and dynamic partitioning of pointers as links and threads . . . . . 42--49 Manuel Serrano and Marc Feeley Storage use analysis and its applications . . . . . . . . . . . . . . 50--61 Chris Okasaki The role of lazy evaluation in amortized data structures . . . . . . . . . . . . 62--72 Zhenjiang Hu and Hideya Iwasaki and Masato Takeichi Deriving structural hylomorphisms from recursive definitions . . . . . . . . . 73--82 Martín Abadi and Butler Lampson and Jean-Jacques Lévy Analysis and caching of dependencies . . 83--91 Julia L. Lawall and Harry G. Mairson Optimality and inefficiency: What isn't a cost model of the lambda calculus? . . 92--101 Brian T. Howard Inductive, coinductive, and pointed types . . . . . . . . . . . . . . . . . 102--109 Pedro Palao Gostanza and Ricardo Peña and Manuel Núñez A new look at pattern matching in abstract data types . . . . . . . . . . 110--121 François Pottier Simplifying subtyping constraints . . . 122--133 Giorgio Ghelli Complexity of kernel Fun subtype checking . . . . . . . . . . . . . . . . 134--145 Luc Moreau The semantics of Scheme with future . . 146--156 Franklyn Turbak First-class synchronization barriers . . 157--168 Cormac Flanagan and Rishiyur S. Nikhil pHluid: the design of a parallel functional language implementation on workstations . . . . . . . . . . . . . . 169--179 Peter J. Thiemann Cogen in six lines . . . . . . . . . . . 180--189 Tyng-Ruey Chuang and Wen L. Hwang A probabilistic approach to the problem of automatic selection of data representations . . . . . . . . . . . . 190--200 William Ferreira and Matthew Hennessy and Alan Jeffrey A theory of weak bisimulation for core CML . . . . . . . . . . . . . . . . . . 201--212 Guy E. Blelloch and John Greiner A provable time and space efficient implementation of NESL . . . . . . . . . 213--225 Paul Caspi and Marc Pouzet Synchronous Kahn networks . . . . . . . 226--238 Shinn-Der Lee and Daniel P. Friedman Enriching the lambda calculus with contexts: Toward a theory of incremental program construction . . . . . . . . . . 239--250 Christian Queinnec and David De Roure Sharing code through first-class environments . . . . . . . . . . . . . . 251--261 Dominic Duggan and Constantinos Sourelis Mixin modules . . . . . . . . . . . . . 262--273
Anonymous Executive Committee News . . . . . . . . 1 Anonymous Call for Papers: PLDI '97 . . . . . . . 2 Michael Hind and Phil Pfeiffer Using regional conferences to mentor student development: a case study . . . 4--7 Michael Hind and Phil Pfeiffer Conference Report: Mentoring Student Development . . . . . . . . . . . . . . 4 Anonymous Conference Calendar . . . . . . . . . . 8 C. Gibbon and C. Higgins Language Tips: C++ Toolbox: Teaching object-oriented design with heuristics 12--16 C. Gibbon and C. Higgins Teaching object-oriented design with heuristics . . . . . . . . . . . . . . . 12--16 Anonymous Call for Papers: JMLC '97 . . . . . . . 17 Alexander Aiken Cool: A Portable Project for Teaching Compiler Construction . . . . . . . . . 19--24 Arthur Sorkin Some Comments on `The Priority-Based Coloring Approach to Register Allocation' . . . . . . . . . . . . . . 25--29 Jiun-Liang Chen and Feng-Jian Wang Encapsulation in Object-Oriented Programs . . . . . . . . . . . . . . . . 30--32 M. Panti and A. Cucchiarelli and M. Mattiucci and S. Valenti Process to Process Communication in Prolog . . . . . . . . . . . . . . . . . 33--39 Vitaliano Milanese Interpreting RSets, SSets and Features by Denotational Semantics . . . . . . . 40--47
Anonymous Letter from the Chair . . . . . . . . . 1--1 Anonymous 1995--96 Annual Report . . . . . . . . . 2--3 Anonymous Press Release . . . . . . . . . . . . . 4--4 Preston Briggs Literate Programming: Sparse Matrix Manipulation . . . . . . . . . . . . . . 5--7 Preston Briggs Sparse matrix manipulation . . . . . . . 5--7 Ronald P. Loui Why GAWK for AI? . . . . . . . . . . . . 8--9 G. Bowden Wise Casting in C++: bringing safety and smartness to your programs . . . . . . . 10--15 G. Bowden Wise C++ Toolbox . . . . . . . . . . . . . . 10--15 Nikolaos S. Papaspynou Denotational Semantics in C++ . . . . . 16--25 Nikolaos S. Papaspyrou A framework for programming denotational semantics in C++ . . . . . . . . . . . . 16--25 Paul Frenger Forth Report: Thoughts on the 1996 Rochester FORTH Conference . . . . . . . 26--27 Paul Frenger Thoughts on the 1996 Rochester FORTH Conference . . . . . . . . . . . . . . . 26--27 Charles D. Norton The International Workshop on Parallel C++ (IWPC++) Kanazawa, Ishikawa prefecture, Japan . . . . . . . . . . . 28--30 Charles D. Norton Workshop Report: The International Workshop on Parallel C++ (IWPC++), Kanazawa, Ishikawa Prefecturem, Japan 28--30 Anonymous Call for Papers: SCM 7 . . . . . . . . . 31--31 Anonymous Call for Papers: PPoPP 97 . . . . . . . 32--33 Anonymous Conference Calendar . . . . . . . . . . 34--39 Arne Andersson and Andrej Brodnik Comment on ``Self-Indexed Sort'' . . . . 40--42 Stéphane Vialle and Thierry Cornu and Yannick Lallement ParCeL-1: a parallel programming language based on autonomous and synchronous actors . . . . . . . . . . . 43--51 Mohd Hanafiah Abdullah hcc: a portable ANSI C compiler (with a code generator for the PowerPCs) . . . . 52--59 Apostolos Syropoulos A Note On Type Checking Linear Functional Languages . . . . . . . . . . 60--63 Farooq Butt Porting the mcc Compiler into an Interactive Development Environment . . 64--73 Farooq Butt Porting the mcc PowerPC C/C++ compiler into an interactive development environment . . . . . . . . . . . . . . 64--73 C. Pronk and M. Schönhacker ISO/IEC 10514-1, the Standard for Modula-2: Process Aspects . . . . . . . 74--83 M. Schönhacker and C. Pronk ISO/IEC 10514-1, the Standard for Modula-2: Changes, Clarifications and Additions . . . . . . . . . . . . . . . 84--95
Kunle Olukotun and Basem A. Nayfeh and Lance Hammond and Ken Wilson and Kunyung Chang The case for a single-chip multiprocessor . . . . . . . . . . . . . 2--11 Kunle Olukotun and Basem A. Nayfeh and Lance Hammond and Ken Wilson and Kunyung Chang The Case for a Single-Chip Multiprocessor . . . . . . . . . . . . . 2--11 Vijay S. Pai and Parthasarathy Ranganathan and Sarita V. Adve and Tracy Harton An Evaluation of Memory Consistency Models for Shared-Memory Systems with ILP Processors . . . . . . . . . . . . . 12--23 Steven L. Scott Synchronization and Communication in the T3E Multiprocessor . . . . . . . . . . . 26--36 Arvind Krishnamurthy and Klaus E. Schauser and Chris J. Scheiman and Randolph Y. Wang and David E. Culler and Katherine Yelick Evaluation of Architectural Support for Global Address-Based Communication in Large-Scale Parallel Machines . . . . . 37--48 Dirk Grunwald and Richard Neves Whole-Program Optimization for Time and Space Efficient Threads . . . . . . . . 50--59 Dirk Grunwald and Richard Neves Whole-program optimization for time and space efficient threads . . . . . . . . 50--59 James Philbin and Jan Edler and Otto J. Anshus and Craig C. Douglas and Kai Li Thread Scheduling for Cache Locality . . 60--71 Peter M. Chen and Wee Teck Ng and Subhachandra Chandra and Christopher Aycock and Gurushankar Rajamani and David Lowell The Rio File Cache: Surviving Operating System Crashes . . . . . . . . . . . . . 74--83 Edward K. Lee and Chandramohan A. Thekkath Petal: Distributed Virtual Disks . . . . 84--92 Kathryn S. McKinley and Olivier Temam A Quantitative Analysis of Loop Nest Locality . . . . . . . . . . . . . . . . 94--104 Andrew S. Huang and John Paul Shen The Intrinsic Bandwidth Requirements of Ordinary Programs . . . . . . . . . . . 105--114 André Seznec and Stéphan Jourdan and Pascal Sainrat and Pierre Michaud Multiple-Block Ahead Branch Predictors 116--127 André Seznec and Stéphan Jourdan and Pascal Sainrat and Pierre Michaud Multiple-block ahead branch predictors 116--127 I-Cheng K. Chen and John T. Coffey and Trevor N. Mudge Analysis of Branch Prediction Via Data Compression . . . . . . . . . . . . . . 128--137 Mikko H. Lipasti and Christopher B. Wilkerson and John Paul Shen Value Locality and Load Value Prediction 138--147 Theodore H. Romer and Dennis Lee and Geoffrey M. Voelker and Alec Wolman and Wayne A. Wong and Jean-Loup Baer and Brian N. Bershad and Henry M. Levy The Structure and Performance of Interpreters . . . . . . . . . . . . . . 150--159 Armando Fox and Steven D. Gribble and Eric A. Brewer and Elan Amir Adapting to Network and Client Variability via On-Demand Dynamic Distillation . . . . . . . . . . . . . . 160--170 Daniel J. Scales and Kourosh Gharachorloo and Chandramohan A. Thekkath Shasta: A Low Overhead, Software-Only Approach for Supporting Fine-Grain Shared Memory . . . . . . . . . . . . . 174--185 Sandhya Dwarkadas and Alan L. Cox and Willy Zwaenepoel An Integrated Compile-Time/Run-Time Software Distributed Shared Memory System . . . . . . . . . . . . . . . . . 186--197 R. Bianchini and L. I. Kontothanassis and R. Pinto and M. De Maria and M. Abud and C. L. Amorim Hiding Communication Latency and Coherence Overhead in Software DSMs . . 198--209 Andrew Erlichson and Neal Nuckolls and Greg Chesson and John Hennessy SoftFLASH: Analyzing the Performance of Clustered Distributed Virtual Shared Memory . . . . . . . . . . . . . . . . . 210--220 Chi-Keung Luk and Todd C. Mowry Compiler-based prefetching for recursive data structures . . . . . . . . . . . . 222--233 Chi-Keung Luk and Todd C. Mowry Compiler-Based Prefetching for Recursive Data Structures . . . . . . . . . . . . 222--233 Mazen A. R. Saghir and Paul Chow and Corinna G. Lee Exploiting Dual Data-Memory Banks in Digital Signal Processors . . . . . . . 234--243 Edouard Bugnion and Jennifer M. Anderson and Todd C. Mowry and Mendel Rosenblum and Monica S. Lam Compiler-directed page coloring for multiprocessors . . . . . . . . . . . . 244--255 Edouard Bugnion and Jennifer M. Anderson and Todd C. Mowry and Mendel Rosenblum and Monica S. Lam Compiler-Directed Page Coloring for Multiprocessors . . . . . . . . . . . . 244--255 Hervé A. Jamrozik and Michael J. Feeley and Geoffrey M. Voelker and James Evans, II and Anna R. Karlin and Henry M. Levy and Mary K. Vernon Reducing Network Latency Using Subpages in a Global Memory Environment . . . . . 258--267 Jih-Kwon Peir and Windsor W. Hsu and Honesty Young and Shauchi Ong Improving Cache Performance with Balanced Tag and Data Paths . . . . . . 268--278 Ben Verghese and Scott Devine and Anoop Gupta and Mendel Rosenblum Operating System Support for Improving Data Locality on CC-NUMA Compute Servers 279--289 Anonymous Author Index . . . . . . . . . . . . . . 290--290 Anonymous ASPLOS-VI Reviewers . . . . . . . . . . v--v Anonymous Conference Committee . . . . . . . . . . iv--iv
Susumu Nishimura and Atsushi Ohori and Keishi Tajima An equational object-oriented data model and its data-parallel query language . . 1--17 Susumu Nishimura and Atsushi Ohori and Keishi Tajima An Equational Object-Oriented Data Model and its Data-Parallel Query Language . . 1 Lorette Cameron and Charles Berman and Brian Henderson-Sellers and Laura Hill and Randall Smith and Sanjiv Gossain Panel 1: Perspectives on Reuse . . . . . 10 Phillip M. Yelland Creating Host Compliance in a Portable Framework: A Study in the Use of Existing Design Patterns . . . . . . . . 18--29 Saniya Ben Hassen and Irina Athanasiu and Henri E. Bal A Flexible Operation Execution Model for Shared Distributed Objects . . . . . . . 30--50 Ali-Reza Adl-Tabatabai and Thomas Gross and Guei-Yuan Lueh Code Reuse in an Optimizing Compiler . . 51--68 Kim Barrett and Bob Cassels and Paul Haahr and David A. Moon and Keith Playford and Andrew L. M. Shalit and P. Tucker Withington A Monotonic Superclass Linearization for Dylan . . . . . . . . . . . . . . . . . 69--82 Jeffrey Dean and Greg DeFouw and David Grove and Vassily Litvinov and Craig Chambers Vortex: an optimizing compiler for object-oriented languages . . . . . . . 83--100 Lorette Cameron and Charles Berman and Brian Henderson-Sellers and Laura Hill and Randall Smith and Sanjiv Gossain Perspectives on reuse (panel) . . . . . 101--103 Allen Dutoit and Sean Levy and Douglas Cunningham and Robert Patrick The Basic Object System: Supporting a Spectrum from Prototypes To Hardened Code . . . . . . . . . . . . . . . . . . 104--121 Daniel Bardou and Christophe Dony Split Objects: A Disciplined Use of Delegation within Objects . . . . . . . 122--137 Hernán Astudillo R. Reorganizing split objects . . . . . . . 138--149 Hernan R. Astudillo Reorganizing Split Objects . . . . . . . 138 Jan Kleindienst and Franti\vsek Plá\vsil and Petr T\ocircuma Lessons Learned from Implementing the CORBA Persistent Object Service . . . . 150--167 Evan Wallace and Kurt C. Wallnau A Situated Evaluation of the Object Management Group's (OMG) Object Management Architecture (OMA) . . . . . 168--178 Frank Tip and Jong-Deok Choi and John Field and G. Ramalingam Slicing Class Hierarchies in C++ . . . . 179--197 Ralf Möller A Functional Layer for Description Logics: Knowledge Representation Meets Object-Oriented Programming . . . . . . 198--213 Joseph Gil and David H. Lorenz Environmental Acquisition: A New Inheritance-Like Abstraction Mechanism 214--231 Paul S. R. Chisholm and Larry Constantine and Ward Cunningham and Luke Hohmann and Norman Kerth Soft issues and hard problems in software development (panel) . . . . . . 232--234 Paul S. R. Chisholm and Larry Constantine and Ward Cunningham and Luke Hohmann and Norman Kerth Panel 2: Soft Issues and Hard Problems in Software Development . . . . . . . . 232 Ivan Moore Automatic Inheritance Hierarchy Restructuring and Method Refactoring . . 235--250 H. Dicky and C. Dony and M. Huchard and T. Libourel On Automatic Class Insertion with Overloading . . . . . . . . . . . . . . 251--267 Patrick Steyaert and Carine Lucas and Kim Mens and Theo D'Hondt Reuse Contracts: Managing the Evolution of Reusable Assets . . . . . . . . . . . 268--285 Steven D. Fraser and Alistair Cockburn and Jim Coplien and Larry Constantine and Dave West and Leo Brajkovich OO anthropology (panel): crossing the chasm . . . . . . . . . . . . . . . . . 286--291 Steven D. Fraser and Alistair Cockburn and Leo Brajkovich and Jim Coplien and Larry Constantine and Dave West Panel 3: OO Anthropology: Crossing the Chasm . . . . . . . . . . . . . . . . . 286 Amer Diwan and J. Eliot B. Moss and Kathryn S. McKinley Simple and Effective Analysis of Statically-Typed Object-Oriented Programs . . . . . . . . . . . . . . . . 292--305 Karel Driesen and Urs Hölzle The Direct Cost of Virtual Function Calls in C++ . . . . . . . . . . . . . . 306--323 David F. Bacon and Peter F. Sweeney Fast Static Analysis of C++ Virtual Function Calls . . . . . . . . . . . . . 324--341 Earl F. Ecklund, Jr. and Lois M. L. Delcambre and Michael J. Freiling Change Cases: Use Cases that Identify Future Requirements . . . . . . . . . . 342--358 Michael VanHilst and David Notkin Using Role Components to Implement Collaboration-Based Designs . . . . . . 359--369 Nils Klarlund and Jari Koistinen and Michael I. Schwartzbach Formal Design Constraints . . . . . . . 370--383 Yen-Ping Shan and Tom Morgan and Phil Proudfoot and Jim Thompson and John Tibetts and Allen Woolfrey Object on the server: are we ready? (panel) . . . . . . . . . . . . . . . . 384--388 Yen-Ping Shan and Tom Morgan and Phil Proudfoot and Jim Thompson and John Tibbets and Allen Woolfrey Panel 4: Objects on the Server: Are We Ready? . . . . . . . . . . . . . . . . . 384 Mohlalefi Sefika and Aamod Sane and Roy H. Campbell Architecture-oriented visualization . . 389--405 Mohlalefi Sefika and Aamod Sane and Roy H. Campbell Architecture-Oriented Visualization . . 389 Alan M. Durham and Ralph E. Johnson A framework for run-time systems and its visual programming language . . . . . . 406--420 Alan M. Durham and Ralph E. Johnson A Framework for Run-Time Systems and its Visual Programming Language . . . . . . 406 Isabelle Attali and Denis Caromel and Sidi O. Ehmety and Sylvain Lippi Semantic-based visualization for parallel object-oriented programming . . 421--440 Isabelle Attali and Denis Caromel and Sidi O. Ehmety and Sylvain Lippi Semantic-Based Visualization for Parallel Object-Oriented Programming . . 421 Grady Booch and Steven Fraser and Robert C. Martin and Steven J. Mellor and Michael Lee and Steven Garone and Martin Fowler and Douglas C. Schmidt and Marie Lenzi Translation: myth or reality? (panel) 441--443 Steven Fraser and Grady Booch and Steven Garone and Robert Martin and Martin Fowler and Steven J. Mellor and Douglas C. Schmidt and Michael Lee and Marie Lenzi Panel 5 (Debate): Translation: Myth or Reality? . . . . . . . . . . . . . . . . 441 Jeffrey Bonar and Nancy Lehrer and Kelly Looney and Randy Schnier and James Russel and Ted Selker and Stewart Nickolas Components on the Internet (panel) . . . 444--448 Jeffrey Bonar and Nancy Lehrer and Kelly Looney and Stewart Nickolas and Randy Schnier and James Russell and Ted Selker Panel 6: Components on the Internet . . 444
Joseph Bergin Java as a better C++ . . . . . . . . . . 21--27 Joseph Bergin Object Technology in the Classroom: Java as a Better C++ . . . . . . . . . . . . 21--27 Mike A. Marin Effective use of assertions in C++ . . . 28--32 Preston Briggs Literate Programming: Sparse Matrix Multiplication . . . . . . . . . . . . . 33--37 Preston Briggs Sparse matrix multiplication . . . . . . 33--37 Günter Kniesel and Thilo Kielmann and Athanasios Demiris and Milena Shteto 5th workshop for doctoral students in object-oriented systems . . . . . . . . 39--48 Rakesh Agarwal and Giorgio Bruno and Marco Torchiano Static, dynamic and run-time modeling of compound classes . . . . . . . . . . . . 49--55 P. M. van den Broek and K. G. van den Berg Musical equational programs: a functional approach . . . . . . . . . . 56--65 Günter Dotzel and Hartmut Goebel Porting the Oberon system to AlphaAXP 66--73 Ben Werther and Damian Conway A modest proposal: C++ resyntaxed . . . 74--82
John Pugh A Report from OOPSLA . . . . . . . . . . 1--2 James Noble and Antero Taivalsaari ECOOP '96 Workshop on Prototype Based Object Oriented Programming . . . . . . 12--17 Helen Sharp and Mary Lynn Manns and Phil McLaughlin and Maximo Prieto and Mahesh Dodani Pedagogical patterns --- successes in teaching object technology: a workshop from OOPSLA '96 . . . . . . . . . . . . 18--21 David Dodgson Evolution of the C++ Standard Library 22--26 Ron K. Cytron Book Nook: Out of their minds by Dennis Shasha . . . . . . . . . . . . . . . . . 27--28 Ron K. Cytron Review: Out of their minds by Shasha and Lezere . . . . . . . . . . . . . . . . . 27--28 Paul Frenger A Whirlwind Tour of Forth Resources . . 29--32 Roger K. deBry Report of TC-2 working groups: minutes of the IFIP TC-2 meeting July 13--14, 1996, Oxford, UK . . . . . . . . . . . . 33--38 Chris Houser Manual and Compiler for the Terse and Modular Language DEM . . . . . . . . . . 41--51 Jòrgen Lindskov Knudsen and Ole Lehrmann Madsen Using Object-Orientation as a Common Basis for System Development Education 52--62 Giuseppe Callegarin Requirements for an Imperative Language to Host Logic Programming in a Seamless Way . . . . . . . . . . . . . . . . . . 63--68 Arthur Sorkin Some comments on Morel and Renvoise's ``Global Optimization by Suppression of Partial Redundancies'' . . . . . . . . . 69--72 Richard D. Ferrante and James R. Allard Introducing a CPS Style Optimizer into an Existing Compiler . . . . . . . . . . 73--79 Apostolos Syropoulos A Note On Type Checking Linear Functional Languages . . . . . . . . . . 80--83
Anonymous Advance Program October 6--10, 1996 --- San Jose, California . . . . . . . . . . ??
Barbara Ryder Letter from the Chair . . . . . . . . . 1--1 Peter Trott Programming Languages: Past, Present, and Future: Sixteen Prominent Computer Scientists Assess Our Field . . . . . . 14--57 Chris Hankin and Hanne Riis Nielson and Jens Palsberg Position Statements on Strategic Directions for Research on Programming Languages . . . . . . . . . . . . . . . 59--65 Luca Cardelli Global Computation . . . . . . . . . . . 66--68 Charles Consel Program Adaptation based on Program Transformation . . . . . . . . . . . . . 69--72 Patrick Cousot Program Analysis: The Abstract Implementation Perspective . . . . . . . 73--76 Michael Hanus Integration of Declarative Paradigms: Benefits and Challenges . . . . . . . . 77--79 Robert Harper and John C. Mitchell ML and Beyond . . . . . . . . . . . . . 80--85 Daniel Le Metayer Program Analysis for Software Engineering: New Applications, New Requirements, New Tools . . . . . . . . 86--88 Daniel Le Métayer Program analysis for software engineering: new applications, new requirements, new tools . . . . . . . . 86--88 Flemming Nielson Perspectives on Program Analysis . . . . 89--91 Martin Odersky Challenges in Type Systems Research . . 92--93 R. Paige Future Directions in Program Transformations . . . . . . . . . . . . 94--98 Alberto Pettorossi and Maurizio Proietti Future Directions in Program Transformation . . . . . . . . . . . . . 99--102 John C. Reynolds Beyond ML . . . . . . . . . . . . . . . 103--105 Jon G. Riecke Programming Language Semantics: The Description of Computational Structures 106--109 Barbara G. Ryder A Position Paper on Compile-time Program Analysis . . . . . . . . . . . . . . . . 110--114 David A. Schmidt On the Need for a Popular Formal Semantics . . . . . . . . . . . . . . . 115--116 Dennis Volpano Provably-Secure Programming Languages for Remote Evaluation . . . . . . . . . 117--119 Dennis Volpano Provably-secure programming languages for remote evaluation . . . . . . . . . 117--119 Reinhard Wilhelm Program Analysis: A Toolmaker's Perspective . . . . . . . . . . . . . . 120--121
Barbara Ryder Letter from the Chair . . . . . . . . . 1--1 Barbara Ryder SIGPLAN Awards . . . . . . . . . . . . . 2--2 Knut Alfredsen and Bjòrn Sæther An Object Oriented Framework for Creating Models in Hydrology . . . . . . 16--19 Ron K. Cytron Book Nook: \booktitleCompiler Construction by Niklaus Wirth . . . . . 20--21 Ron K. Cytron Review: Compiler Construction by Wirth 20--21 Paul Frenger An Introduction to the Beetle Forth Virtual Processor . . . . . . . . . . . 22--25 Reuben R. Thomas An introduction to the Beetle Forth virtual processor . . . . . . . . . . . 22--25 Sun Yongquiang and Lin Kai and Shen Li The design and implementation of a program development system based on rewriting method . . . . . . . . . . . . 27--34 Sun Yonqiang and Lin Kai and Shen Li The Design and Implementation of a Program Development System Based on Rewriting Method . . . . . . . . . . . . 27--34 Lem O. Ejiogu On Diminishing the Vibrant Confusion in Software Metrics . . . . . . . . . . . . 35--38 Martin Ruckert Conservative Pretty Printing . . . . . . 39--44 G. Deshpande and T. Pearse and P. Oman Software Portability Annotated Bibliography . . . . . . . . . . . . . . 45--53 Mark van den Brand and Paul Klint and Chris Verhoef Re-engineering Needs Generic Programming Language Terminology . . . . . . . . . . 54--61
Mary Lou Soffa Letter from the Vice-Chair for Conferences . . . . . . . . . . . . . . 1--1 Mary Lou Soffa SIGPLAN Sponsorship of Workshops . . . . 2--2 Mary Lou Soffa SIGPLAN Sponsorship of Technical Meetings . . . . . . . . . . . . . . . . 3--4 Mary Lou Soffa Meetings held In-Cooperation With SIGPLAN . . . . . . . . . . . . . . . . 5--5 Seth Bergmnn Conference Corner . . . . . . . . . . . 6--19 Anonymous Call for Participation: MASPLAS '97 . . 20--20 Tom Houlder C++ for Scientific Applications of Iterative Nature . . . . . . . . . . . . 21--26 Henry G. Baker Garbage In/Garbage Out: When Bad Programs Happen to Good People . . . . . 27--31 Henry G. Baker When bad programs happen to good people 27--31 A. Michael Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 32--32 Bruce J. MacLennan ``Who cares about elegance?'' The role of aesthetics in programming language design . . . . . . . . . . . . . . . . . 33--37 Jürgen F. H. Winkler and Stefan Kauer Proving Assertions is Also Useful . . . 38--41 Ilyas Cicekli An Intelligent Backtracking Schema in a Logic Programming Environment . . . . . 42--49 Jiajun Chen and Guoliang Zheng NDC++: an approach to concurrent extension of C++ . . . . . . . . . . . . 50--56 Chen Jiajun and Zheng Guoliang NDC++: An Approach to Concurrent Extension of C++ . . . . . . . . . . . . 50--56 Dennis Verschaeren and Annie Cuyt and Brigitte Verdonk On the Need for Predictable Floating-Point Arithmetic in the Programming Languages Fortran 90 and C/C++ . . . . . . . . . . . . . . . . . 57--64
Barbara Ryder Letter from the Chair . . . . . . . . . 1--1 Barbara Ryder SIGPLAN Awards Announced . . . . . . . . 2--15 Roy Rada and James Schoening IEEE Efforts Towards Standards in Educational Technology . . . . . . . . . 16--18 Preston Briggs Predicting the Performance of Parallel Machines . . . . . . . . . . . . . . . . 19--21 Henry G. Baker I have a feeling we're not in emerald city anymore . . . . . . . . . . . . . . 22--26 Henry G. Baker Garbage In/Garbage Out: I Have a Feeling We're Not in Emerald City Anymore . . . 22--26 Paul Frenger Robot control techniques: Part one: a review of robotics languages . . . . . . 27--31 Paul Frenger A Review of Robotics Languages . . . . . 27--31 James P. Kelleghan Monitoring Remote Sensing Devices in C++ 32--36 G. Bowden Wise C++: monitoring remote sensing devices in C++ . . . . . . . . . . . . . . . . . 32--36 Chris Zimmermann A Note on Before and After Metamethods 37--46 Charles Rapin Block Structured Object Programming . . 47--54
Todd A. Proebsting Simple Translation of Goal-Directed Evaluation . . . . . . . . . . . . . . . 1--6 Julian Dolby Automatic Inline Allocation of Objects 7--17 G. Ramalingam and Harini Srinivasan A Member Lookup Algorithm for C++ . . . 18--30 Tim A. Wagner and Susan L. Graham Incremental Analysis of Real Programming Languages . . . . . . . . . . . . . . . 31--43 Eric Eide and Kevin Frei and Bryan Ford and Jay Lepreau and Gary Lindstrom Flick: A Flexible, Optimizing IDL Compiler . . . . . . . . . . . . . . . . 44--56 Christian S. Collberg Reverse Interpretation + Mutation Analysis = Automatic Retargeting . . . . 57--70 Pedro C. Diniz and Martin C. Rinard Dynamic Feedback: An Effective Technique for Adaptive Computing . . . . . . . . . 71--84 Glenn Ammons and Thomas Ball and James R. Larus Exploiting Hardware Performance Counters with Flow and Context Sensitive Profiling . . . . . . . . . . . . . . . 85--96 William D. Clinger and Lars T. Hansen Generational Garbage Collection and the Radioactive Decay Model . . . . . . . . 97--108 Massimiliano Poletto and Dawson R. Engler and M. Frans Kaashoek tcc: A System for Fast, Flexible, and High-level Dynamic Code Generation . . . 109--121 David W. Goodwin Interprocedural Dataflow Analysis in an Executable Optimizer . . . . . . . . . . 122--133 Andrew Ayers and Richard Schooler and Robert Gottlieb Aggressive Inlining . . . . . . . . . . 134--145 Rastislav Bodík and Rajiv Gupta and Mary Lou Soffa Interprocedural Conditional Branch Elimination . . . . . . . . . . . . . . 146--158 Rastislav Bodík and Rajiv Gupta Partial Dead Code Elimination using Slicing Transformations . . . . . . . . 159--170 Amir H. Hashemi and David R. Kaeli and Brad Calder Efficient Procedure Mapping Using Cache Line Coloring . . . . . . . . . . . . . 171--182 Cliff Young and David S. Johnson and David R. Karger and Michael D. Smith Near-optimal Intraprocedural Branch Alignment . . . . . . . . . . . . . . . 183--193 Cliff Young and David S. Johnson and Michael D. Smith and David R. Karger Near-optimal intraprocedural branch alignment . . . . . . . . . . . . . . . 183--193 Alexandre E. Eichenberger and Edward S. Davidson Efficient Formulation for Optimal Modulo Schedulers . . . . . . . . . . . . . . . 194--205 Dirk Dussart and Rogardt Heldal and John Hughes Module-Sensitive Program Specialisation 206--214 Dirk Dussart and Rogardt Heldal and John Hughes Module-sensitive program specialisation 206--214 Michael Sperber and Peter Thiemann Two for the Price of One: Composing Partial Evaluation and Compilation . . . 215--225 Jakob L. Jensen and Michael E. Jòrgensen and Michael I. Schwartzbach and Nils Klarlund Automatic Verification of Pointer Programs using Monadic Second-Order Logic . . . . . . . . . . . . . . . . . 226--234 Cormac Flanagan and Matthias Felleisen Componential Set-Based Analysis . . . . 235--248 Cormac Flanagan and Matthias Felleisen Componential set-based analysis . . . . 235--248 Adam Brooks Webber Program Analysis Using Binary Relations 249--260 Nevin Heintze and David McAllester Linear-Time Subtransitive Control Flow Analysis . . . . . . . . . . . . . . . . 261--272 Fred Chow and Sun Chan and Robert Kennedy and Shin-Ming Liu and Raymond Lo and Peng Tu A New Algorithm for Partial Redundancy Elimination based on SSA Form . . . . . 273--286 Peter Bergner and Peter Dahl and David Engebretsen and Matthew O'Keefe Spill Code Minimization via Interference Region Spilling . . . . . . . . . . . . 287--295 Guei-Yuan Lueh and Thomas Gross Call-cost directed register allocation 296--307 Guei-Yuan Lueh and Thomas Gross Call-cost Directed Register Allocation 296--307 John Lu and Keith D. Cooper Register Promotion in C Programs . . . . 308--319 Kenjiro Taura and Akinori Yonezawa Fine-grain multithreading with minimal compiler support --- a cost effective approach to implementing efficient multithreading languages . . . . . . . . 320--333 Kenjiro Taura and Akinori Yonezawa Fine-grain Multithreading with Minimal Compiler Support --- A Cost Effective Approach to Implementing Efficient Multithreading Languages . . . . . . . . 320--333 Rohit Chandra and Ding-Kai Chen and Robert Cox and Dror E. Maydan and Nenad Nedeljkovic and Jennifer M. Anderson Data Distribution Support on Distributed Shared Memory Multiprocessors . . . . . 334--345 Induprakas Kodukula and Nawaaz Ahmed and Keshav Pingali Data-centric multi-level blocking . . . 346--357 Induprakas Kodukula and Nawaaz Ahmed and Keshav Pingali Data-Centric Multi-Level Blocking . . . 346--357 Jens Ernst and William Evans and Christopher W. Fraser and Steven Lucco and Todd A. Proebsting Code Compression . . . . . . . . . . . . 358--365
Lori Pollock The SIG Discretionary Fund: Role and Process . . . . . . . . . . . . . . . . 1 Anonymous Conference Corner: Calendar . . . . . . 2 Asokan R. Selvaraj and Debasish Ghosh Implementation of a Database Factory . . 14--18 Paul Frenger Forth as a Robotics Language: Part Two 19--22 Henry G. Baker COMFY --- comfortable set of control primitives for machine language programming . . . . . . . . . . . . . . 23--27 Henry G. Baker Garbage In/Garbage Out: COMFY --- A Comfortable Set of Control Primitives for Machine Language Programming . . . . 23 Fintain Culwin Java in the computing curriculum conference . . . . . . . . . . . . . . . 28--32 Fintan Culwin A Report on the `Java in the Computing Curriculum Conference' held at South Bank University, London, on 4th February 1997 . . . . . . . . . . . . . . . . . . 28--32 Debbie K. Carter and Albert D. Baker Considerations in Developing a Formally-Based Visual Programming Language Reference Manual: A Case Study on the SLAM II Language . . . . . . . . 34--39 J. S. Vetter Computational Steering Annotated Bibliography . . . . . . . . . . . . . . 40--44 Myung Ho Kim A Functional Approach to Type Constraints of Generic Definitions . . . 45--52 Naixiao Zheng and Hongjun Zheng and Zongyan Qiu Garment: a mechanism for abstraction and encapsulation of languages . . . . . . . 53--60 Zhang Naixiao and Zheng Honjun and Qiu Zongyan Garment: A Mechanism for Abstraction and Encapsulation of Languages . . . . . . . 53 Wen-Ke Chen and Jia-Su Sun and Zhi-Min Tang Consummating Virtuality to Support More Polymorphism in C++ . . . . . . . . . . 61--68 Ralph Frisbie and Richard Hendrickson and Michael Metcalf The F Programming Language . . . . . . . 69--74 Franco Zambonelli How to Achieve Modularity in Distributed Object Allocation . . . . . . . . . . . 75--82
Jaspal Subhlok and Bwolen Yang A New Model for Integrated Nested Task and Data Parallel Programming . . . . . 1--12 Y. Charlie Hu and S. Lennart Johnsson and Shang-Hua Teng High Performance Fortran for Highly Irregular Problems . . . . . . . . . . . 13--24 Girija J. Narlikar and Guy E. Blelloch Space-efficient implementation of nested parallelism . . . . . . . . . . . . . . 25--36 Girija J. Narlikar and Guy E. Blelloch Space-Efficient Implementation of Nested Parallelism . . . . . . . . . . . . . . 25 Xingbin Zhang and Andrew A. Chien Dynamic Pointer Alignment: Tiling and Communication Optimizations for Parallel Pointer-based Computations . . . . . . . 37--47 Honghui Lu and Alan L. Cox and Sandhya Dwarkadas and Ramakrishnan Rajamony and Willy Zwaenepoel Compiler and Software Distributed Shared Memory Support for Irregular Applications . . . . . . . . . . . . . . 48--56 Cong Fu and Tao Yang Space and Time Efficient Execution of Parallel Irregular Computations . . . . 57--68 Ricardo Bianchini and Enrique V. Carrera and Leonidas Kontothanassis The Interaction of Parallel Programming Constructs and Coherence Protocols . . . 69--79 Mukund Raghavachari and Anne Rogers Ace: Linguistic Mechanisms for Customizable Protocols . . . . . . . . . 80--89 Cristiana Amza and Alan Cox and Karthick Rajamani and Willy Zwaenepoel Tradeoffs Between False Sharing and Aggregation in Software Distributed Shared Memory . . . . . . . . . . . . . 90--99 Satish Chandra and James R. Larus Optimizing Communication in HPF Programs on Fine-Grain Distributed Shared Memory 100--111 Martin Rinard Effective fine-grain synchronization for automatically parallelized programs using optimistic synchronization primitives . . . . . . . . . . . . . . . 112--123 Martin Rinard Effective Fine-Grain Synchronization for Automatically Parallelized Programs Using Optimistic Synchronization Primitives . . . . . . . . . . . . . . . 112 Angela Sodan and Guang R. Gao and Olivier Maquelin and Jens-Uwe Schultz and Xin-Min Tian Experiences with Non-numeric Applications on Multithreaded Architectures . . . . . . . . . . . . . 124--135 Angela Sodan and Guang R. Gao and Oliver Maquelin and Jens-Uwe Schultz and Xin-Min Tian Experiences with Non-numeric Applications on Multithreaded Architectures . . . . . . . . . . . . . 124 Laurent Hascoët Automatic Placement of Communications in Mesh-Partitioning Parallelization . . . 136--144 Bwolen Yang and David R. O'Hallaron Parallel breadth-first BDD construction 145--156 Bwolen Yang and David R. O'Hallaron Parallel Breadth-First BDD Construction 145 Junjie Gu and Zhiyuan Li and Gyungho Lee Experience with Efficient Array Data Flow Analysis for Array Privatization 157--167 Fabien Coelho Compiling Dynamic Mappings with Array Copies . . . . . . . . . . . . . . . . . 168--179 G. N. Srinivasa Prasanna Compilation of Parallel Multimedia Computations --- Extending Retiming Theory and Amdahl's Law . . . . . . . . 180--192 Yuanyuan Zhou and Liviu Iftode and Jaswinder Pal Singh and Kai Li and Brian R. Toonen and Ioannis Schoinas and Mark D. Hill and David A. Wood Relaxed Consistency and Coherence Granularity in DSM Systems: A Performance Evaluation . . . . . . . . . 193--205 Jeremy D. Frens and David S. Wise Auto-Blocking Matrix-Multiplication or Tracking BLAS3 Performance from Source Code . . . . . . . . . . . . . . . . . . 206--216 Dongming Jiang and Hongzhang Shan and Jaswinder Pal Singh Application Restructuring and Performance Portability on Shared Virtual Memory and Hardware-Coherent Multiprocessors . . . . . . . . . . . . 217--229 Beng-Hong Lim and Chi-Chao Chang and Grzegorz Czajkowski and Thorsten Von Eicken Performance Implications of Communication Mechanisms in All-Software Global Address Space Systems . . . . . . 230--239 Zhichen Xu and James R. Larus and Barton P. Miller Shared-memory performance profiling . . 240--251 Zhichen Xu and James R. Larus and Barton P. Miller Shared-Memory Performance Profiling . . 240 Dongming Jiang and Jaswinder Pal Singh Improving Parallel Shear-Warp Volume Rendering on Shared Address Space Multiprocessors . . . . . . . . . . . . 252--263 Kenjiro Taura and Akinori Yonezawa An Effective Garbage Collection Strategy for Parallel Programming Languages on Large Scale Distributed-Memory Machines 264--275 Matthew I. Frank and Anant Agarwal and Mary K. Vernon LoPC: Modeling Contention in Parallel Algorithms . . . . . . . . . . . . . . . 276--287
Anindya Banerjee A modular, polyvariant and type-based closure analysis . . . . . . . . . . . . 1--10 Allyn Dimock and Robert Muller and Franklyn Turbak and J. B. Wells Strongly typed flow-directed representation transformations (extended abstract) . . . . . . . . . . . . . . . 11--24 Jeffrey M. Bell and Françoise Bellegarde and James Hook Type-driven defunctionalization . . . . 25--37 Jeffrey M. Bell and Françoise Bellegarde and James Hook Type-driven defunctionalization . . . . 25 Kirsten L. Solberg Gasser and Flemming Nielson and Hanne Riis Nielson Systematic realisation of control flow analyses for CML . . . . . . . . . . . . 38--51 Martin Erwig Functional programming with graphs . . . 52--65 Chris Okasaki Catenable double-ended queues . . . . . 66--74 Chris Okasaki Catenable double-ended queues . . . . . 66 Manuel Fähndrich and John Boyland Statically checkable pattern abstractions . . . . . . . . . . . . . . 75--84 Zhong Shao Flexible representation analysis . . . . 85--98 J. Michael Ashley The effectiveness of flow analysis for inlining . . . . . . . . . . . . . . . . 99--111 Matthias Blume and Andrew W. Appel Lambda-splitting: a higher-order approach to cross-module optimizations 112--124 Matthias Blume and Andrew W. Appel Lambda-splitting: A higher-order approach to cross-module optimizations 112 Karl Crary Foundations for the implementation of higher-order subtyping . . . . . . . . . 125--135 Simon Marlow and Philip Wadler A practical subtyping system for Erlang 136--149 Nevin Heintze and David McAllester On the complexity of set-based analysis 150--163 Nevin Heintze and David McAllester On the complexity of set-based analysis 150 Zhenjiang Hu and Hideya Iwasaki and Masato Takeichi and Akihiko Takano Tupling calculation eliminates multiple data traversals . . . . . . . . . . . . 164--175 Wei-Ngan Chin and Masami Hagiya A bounds inference method for vector-based memoization . . . . . . . . 176--187 Julia L. Lawall and Harry G. Mairson On global dynamics of optimal graph reduction . . . . . . . . . . . . . . . 188--195 Joe Armstrong The development of Erlang . . . . . . . 196--203 Dirk Dussart and John Hughes and Peter Thiemann Type specialisation for imperative languages . . . . . . . . . . . . . . . 204--216 Koji Kagawa Compositional references for stateful functional programming . . . . . . . . . 217--226 John Launchbury and Amr Sabry Monadic state: Axiomatization and type safety . . . . . . . . . . . . . . . . . 227--238 Scott Draves Implementing bit-addressing with specialization . . . . . . . . . . . . . 239--250 Scott Draves Implementing bit-addressing with specialization . . . . . . . . . . . . . 239 Koen Claessen and Ton Vullinghs and Erik Meijer Structuring graphical paradigms in TkGofer . . . . . . . . . . . . . . . . 251--262 Conal Elliott and Paul Hudak Functional reactive animation . . . . . 263--273 Olin Shivers Automatic management of operating-system resources . . . . . . . . . . . . . . . 274--279 Cristian Ungureanu and Benjamin Goldberg Formal models of distributed memory management . . . . . . . . . . . . . . . 280--291 Michael W. Hicks and Jonathan T. Moore and Scott M. Nettles The measured cost of copying garbage collection mechanisms . . . . . . . . . 292--305 Kris Aerts and Karel De Vlaminck A GUI on top of a functional language (poster) . . . . . . . . . . . . . . . . 308--308 Koen Claessen Graphs in compilation (poster) . . . . . 309--309 Koen Claessen Graphs in compilation . . . . . . . . . 309 Byron Cook and John Launchbury Disposable memo functions (extended abstract) . . . . . . . . . . . . . . . 310--310 Chris Dornan Affordable dynamic types (poster) . . . 311--311 Etienne Duris Functional programming and attribute grammars deforestation (poster) . . . . 312--312 Natalio Krasnogor and Pablo E. Martínez López and Pablo Mocciola and David Pelta Protein folding meets functional programming (poster) . . . . . . . . . . 313--313 Natalio Krasnogor and Pablo E. Martínez López and Pablo Mocciola and David Pelta Modelling string folding with G2L grammars (poster) . . . . . . . . . . . 314--314 Eero Lassila A functional macro expansion system for optimizing code generation: gaining context-sensitivity without losing confluence (poster) . . . . . . . . . . 315--315 Bruce J. McAdam BigTypes in ML (poster) . . . . . . . . 316--316 Bruce J. McAdam and Stephen Gilmore BigTypes in ML . . . . . . . . . . . . . 316 Cristóbal Pareja-Flores and J. Ángel Velázquez-Iturbide Synthesis of functions by transformations and constraints (poster) 317--317 G. Richard and F. Saubion and A. Tellez-Arenas Intensional sets using explicit substitutions (poster) . . . . . . . . . 318--318 Viktor Sabelfeld and Andrei Sabelfeld Simple semantic analysis problems for functional programs (poster) . . . . . . 319--319 Eleni Spiliopoulou and Ian Holyer and Neil Davies Distributed programming, a purely functional approach (poster) . . . . . . 320--320 Walid Taha and Tim Sheard Multi-stage programming (poster) . . . . 321--321 Walid Taha and Tim Sheard Multi-stage programming . . . . . . . . 321 Guilhem de Wailly $\lambda$-flow (poster): a parallel functional synchronous dataflow language 322--322 Bjarte M. Òstvold Inductive synthesis of recursive functional programs (poster abstract) 323--323 Guilhem De Wailly l-flow: A parallel functional synchronous dataflow language . . . . . 377
Barbara G. Ryder Letter From the Former Chair . . . . . . 1--1 Barbara G. Ryder 1996--1997 Annual Report on ACM SIGPLAN 2--4 Seth Bergmann Conference Corner: Calendar . . . . . . 5--14 Tim Bergin Conference Corner: History of Programming Languages Conference II: HOPL II --- Closing Panel: The History of Programming: Does our Present Past Have a Future? . . . . . . . . . . . . . 15--37 Tim Bergin and Michael S. Mahoney HOPL II: closing panel: The history of programming (panel): does our present past have a future? . . . . . . . . . . 15--37 Wei Li and Gansheng Li Making C++ Concurrent and Real-time . . 39--46 F. Z. Mansouri and C. A. Higgins Prolog: An Annotated Bibliography . . . 47--53 Rommert J. Casimir Basic Forever . . . . . . . . . . . . . 54--56 Pei Lu and Dachuan Yu and Jian Lu A method for modifying dynamically classes in the object-oriented dynamic programming environment . . . . . . . . 57--60 Lu Pei and Yu Dachuan and Lu Jian A Method for Modifying Dynamically Classes in the Object-Oriented Dynamic Programming Environment . . . . . . . . 57--60 Jianjua Zhao and Jiajun Chen and Guoliang Zheng Message Conversion and a New Type System for OO Model . . . . . . . . . . . . . . 61--67 Jianhua Zhao and Jiajun Chen and Guoliang Zheng Message conversion and a new type system for OO model . . . . . . . . . . . . . . 61--67 Zongyan Qiu Static head nodes in the operation on dynamic structures: a useful programming technique . . . . . . . . . . . . . . . 68--71
Mira Mezini Maintaining The Consistency and Behavior of Class Libraries During their Evolution . . . . . . . . . . . . . . . 1--21 Mira Mezini Maintaining the consistency of class libraries during their evolution . . . . 1--21 Margaretha W. Price and Steven A. Demurjian, Sr. Analyzing and Measuring Reusability in Object-Oriented Designs . . . . . . . . 22--33 Karsten Weihe Reuse of Algorithms: Still a Challenge to Object-Oriented Programming . . . . . 34--48 Ole Agesen and Stephen N. Freund and John C. Mitchell Adding type parameterization to the Java language . . . . . . . . . . . . . . . . 49--65 John Boyland and Giuseppe Castagna Parasitic Methods: An Implementation of Multi-Methods for Java . . . . . . . . . 66--76 Diane Litman and Peter F. Patel-Schneider and Anil Mishra Modeling Dynamic Collections of Interdependent Objects Using Path-Based Rules . . . . . . . . . . . . . . . . . 77--92 Lougie Anderson and Mike Carey and Ken Jacobs and Erin Kinikin and David Maier Looking for the objects in object-relational DBMSs (panel) . . . . 93--93 Lougie Anderson and Mike Carry and Ken Jacobs and Erin Kinikin and David Maier Panel 1: Looking for the Objects in Object-Relational DBMs . . . . . . . . . 93--93 Michael Franklin and Stanley Zdonik A framework for scalable dissemination-based systems . . . . . . 94--105 Stan Zdonik A Framework for Scalable Dissemination-Based Systems . . . . . . 94--105 Bindu Rama Rao and Chad Edwards and Ted Linden and Regan Moore and Mark Seager Exploring largeness, complexity and scalability from the OOT perspective (panel) . . . . . . . . . . . . . . . . 106--107 Bindu Rama Rao and Chad Edwards and Ted Linden and Reagan Moore and Mark Seager Panel 2: Exploring Largeness, Complexity and Scalability from the OOT Perspective 106--107 David Harel On Modeling and Analyzing Object Behavior . . . . . . . . . . . . . . . . 108--108 David Grove and Greg DeFouw and Jeffrey Dean and Craig Chambers Call Graph Construction in Object-Oriented Languages . . . . . . . 108--124 Olivier Zendra and Dominique Colnet and Suzanne Collin Efficient Dynamic Dispatch without Virtual Function Tables: The Small Eiffel Compiler . . . . . . . . . . . . 125--141 Jan Vitek and R. Nigel Horspool and Andreas Krall Efficient Type Inclusion Tests . . . . . 142--157 Jim Coplien and Luke Hohmann and Norm Kerth and John Rae-Grant and Eileen Strider Changing the engine of the car? (panel): while driving 60 miles an hour! . . . . 158--161 Jim Coplien and Luke Hohmann and Norm Kerth and Jon Rae-Grant and Eileen Strider Panel 3: Changing the Engine of the Car? While Driving 60 Miles an Hour! . . . . 158--161 Gregor Kiczales Aspect Oriented Programming . . . . . . 162--162 Mario Tokoro Software Agents and Network-Based Software --- New Research Directions . . 162--162 Richard L. Hudson and Ron Morrison and J. Eliot B. Moss and David S. Munro Garbage Collecting the World: One Car at a Time . . . . . . . . . . . . . . . . . 162--175 Barry Hayes Ephemerons: A New Finalization Mechanism 176--183 Timothy H. Harrison and David L. Levine and Douglas C. Schmidt The Design and Performance of a Real-Time CORBA Event Service . . . . . 184--200 Derek Coleman and John Artim and Viktor Ohnjec and Erick Rivas and Jim Rumbaugh and Rebecca Wirfs-Brock Panel 4: UML: The Language of Software Blueprints? . . . . . . . . . . . . . . 201--205 Derek Coleman and Viktor Ohnjec and John Artim and Erick Rivas and Jim Rumbaugh and Rebecca Wirfs-Bracle UML (panel): the language of blueprints for software? . . . . . . . . . . . . . 201--205 J. Eliot and B. Moss Compiling Object-Oriented Languages: Achievements and Promise . . . . . . . . 206--206 David H. Lorenz Tiling Design Patterns --- A Case Study Using the Interpreter Pattern . . . . . 206--206 Noah Mendelsohn Components: How Far Can We Go? . . . . . 206--217 Dirk Riehle Composite Design Patterns . . . . . . . 218--228 Matthew Haines An Open Implementation Analysis and Design for Lightweight Threads . . . . . 229--242 Jon Oler and Gary Lindstrom and Terence Critchlow Migrating Relational Data to an ODBMS: Strategies and Lessons from a Molecular Biology Experience . . . . . . . . . . . 243--252 Suad Alagic The ODMG Object Model: Does it Make Sense? . . . . . . . . . . . . . . . . . 253--270 Frank Tip and Peter F. Sweeney Class Hierarchy Specialization . . . . . 271--285 Eugen N. Volanschi and Charles Counsel and Gilles Muller and Crispin Cowan Declarative Specialization of Object-Oriented Programs . . . . . . . . 286--300 Laura Hill and Bruce Anderson and Adele Goldberg and Gregor Kiczales and Colin Scott and Kevin Tyson The OT idea life-cycle (panel): from eureka! to shrink wrap . . . . . . . . . 301--303 Laura Hill and Bruce Anderson and Adele Goldberg and Gregor Kiczales and Colin Scott and Kevin Tyson Panel 5: The OT Life-cycle: From Eureka! to Shrink Wrap . . . . . . . . . . . . . 301--303 Raimondas Lencevicius and Urs Hölzle and Ambuj K. Singh Query-based debugging of object-oriented programs . . . . . . . . . . . . . . . . 304--317 Raimondas Lencevicius and Urs Holzle and Ambuj K. Singh Query-Based Debugging of Object-Oriented Programs . . . . . . . . . . . . . . . . 304--317 Dan Ingalls and Ted Kaehler and John Maloney and Scott Wallace and Alan Kay Back to the future: the story of Squeak, a practical Smalltalk written in itself 318--326 Stuart Kent Constraint diagrams: visualizing invariants in object-oriented models . . 327--341 Steven Fraser and Kent Beck and Grady Booch and Jim Coplien and Ralph Johnson and Bill Opdyke Beyond the hype (panel): do patterns and frameworks reduce discovery costs? . . . 342--344 Steven D. Fraser and Kent Beck and Grady Booch and Jim Coplien and Ralph Johnson and Bill Opdyke Panel 6: Beyond the Hype: Do Patterns and Frameworks Reduce Discovery Costs? 342--344 Anonymous Author Index . . . . . . . . . . . . . . 345--345 Mahesh Dodani Panel: Educator's Symposium Report . . . 345--345 Edward W. Felten Securing the Networked Future: Can Objects Help? . . . . . . . . . . . . . 345--345 Alan Kay Keynote Address: The Computer Revolution Hasn't Happened Yet! . . . . . . . . . . 345--345 Peter Kriens Panel: DesignFest Report . . . . . . . . 345--345 Bob Marcus Panel: Mid-Year Workshops Report . . . . 345--345 Anonymous Title Index . . . . . . . . . . . . . . 346--346
Mary Lou Soffa Letter From the Newly Elected Chair . . 1 Anonymous Calls for Papers . . . . . . . . . . . . 2 Frank Mueller The 3rd ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Real-Time Systems . . . . . . . . . . . 15--16 Frank Mueller Workshop Report: LCTES '97 . . . . . . . 15 Conrad Weisert Point-extent pattern for dimensioned numeric classes . . . . . . . . . . . . 17--20 Conrad Weisert C++ Toolbox . . . . . . . . . . . . . . 17 Paul Frenger Venturing Forth with a flashlite . . . . 21--24 Paul Frenger Forth Report . . . . . . . . . . . . . . 21 Henry G. Baker The COMFY 6502 Compiler . . . . . . . . 25--30 H. S. M. Kruijer Book Nook: The Search for Simplicity Essays in Parallel Programming by Per Brinch Hansen . . . . . . . . . . . . . 31--32 Per Brinch Hansen Review of The Search for Simplicity Essays in Parallel Programming . . . . . 31 C. Pronk and R. J. Sutcliffe and M. Schönhacker and A. Wiedemann Standardized Extensions to Modula-2 . . 34--48 Yasusi Kanada Web Pages that Reproduce Themselves by JavaScript . . . . . . . . . . . . . . . 49--56 Zhang Jiazhong and Wang Yanbing and Zheng Mingchun Design and static semantics of algorithm language $\mathcal{L}$ . . . . . . . . . 57--64
Rogardt Heldal and John Hughes Partial Evaluation and Separate Compilation . . . . . . . . . . . . . . 1--11 Kenichi Asai and Hidehiko Masuhara and Akinori Yonezawa Partial evaluation of call-by-value $\lambda$-calculus with side-effects . . 12--21 Tim Sheard A type-directed, on-line, partial evaluator for a polymorphic language . . 22--35 T. Sheard A Type-Directed, On-Line, Partial Evaluator for a Polymorphic Language . . 22 Marc Gengler and Matthieu Martel Self-applicable partial evaluation for the pi-calculus . . . . . . . . . . . . 36--46 S. Jagannathan and M. Gengler and M. Martel Self-Applicable Partial Evaluation for Pi-Calculus . . . . . . . . . . . . . . 36 Mihnea Marinescu and Benjamin Goldberg Partial-evaluation techniques for concurrent programs . . . . . . . . . . 47--62 M. Marinescu and B. Goldberg Partial-Evaluation Techniques for Concurrent Programs . . . . . . . . . . 47 Luke Hornof and Jacques Noyé Accurate binding-time analysis for imperative languages: flow, context, and return sensitivity . . . . . . . . . . . 63--73 D. Sahlin and L. Hornof and Jacques Noye Accurate Binding-Time Analysis for Imperative Languages: Flow, Context and Return Sensitivity . . . . . . . . . . . 63 David Melski and Thomas Reps Interconvertibility of Set Constraints and Context-Free Language Reachability 74--89 Olivier Danvy and Ulrik P. Schultz Lambda-dropping: transforming recursive equations into programs with block structure . . . . . . . . . . . . . . . 90--106 O. Danvy and U. P. Schultz Lambda-Dropping: Transforming Recursive Equations into Programs with Block Structure . . . . . . . . . . . . . . . 90 Clifford Beshers and Steven Feiner Generating Efficient Virtual Worlds for Visualization Using Partial Evaluation and Dynamic Compilation . . . . . . . . 107--115 Gilles Muller and Eugen-Nicolae Volanschi and Renaud Marlet Scaling up partial evaluation for optimizing the Sun commercial RPC protocol . . . . . . . . . . . . . . . . 116--126 Lennart Augustsson Partial Evaluation in Aircraft Crew Planning . . . . . . . . . . . . . . . . 127--136 Sandro Etalle and Maurizio Gabbrielli and Elena Marchiori A transformation system for CLP with dynamic scheduling and CCP . . . . . . . 137--150 Jens Palsberg and S. Etalle and M. Gabbrielli and E. Marchiori A Transformation System for CLP with Dynamic Scheduling and CCP . . . . . . . 137 M. Alpuente and M. Falaschi and P. Julián and G. Vidal Specialization of Lazy Functional Logic Programs . . . . . . . . . . . . . . . . 151--162 Brian Grant and Markus Mock and Matthai Philipose and Craig Chambers and Susan J. Eggers Annotation-directed run-time specialization in C . . . . . . . . . . 163--178 Yanhong Annie Liu and B. Grant and M. Mock and M. Philipose and C. Chambers and S. Eggers Annotation-Directed Run-Time Specialization in C . . . . . . . . . . 163 Saumya Debray Resource-bounded partial evaluation . . 179--192 S. Debray Resource-Bounded Partial Evaluation . . 179 Flemming Nielson and Hanne Riis Nielson Prescriptive frameworks for multi-level lambda-calculi . . . . . . . . . . . . . 193--202 Torben Mogensen and F. Nielson and H. Riis Nielson A Prescriptive Framework for Designing Multi-Level Lambda-Calculi . . . . . . . 193 Walid Taha and Tim Sheard Multi-stage programming with explicit annotations . . . . . . . . . . . . . . 203--217 W. Taha and T. Sheard Multi-Stage Programming with Explicit Annotations . . . . . . . . . . . . . . 203
Fritz Henglein Executive Committee News . . . . . . . . 1--2 Seth Bergmann Conference Corner: Calendar . . . . . . 3--13 Anonymous Call for Papers: LCR98 --- Fourth Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers 14--14 Roger K. DeBry IFIP Technical Committee on Software, TC-2 . . . . . . . . . . . . . . . . . . 15--21 Dieter Gluche and Dietmar Kühl and Karsten Weihe C++ Toolbox . . . . . . . . . . . . . . 22--29 Henry G. Baker You could learn a lot from a quadratic: overloading considered harmful . . . . . 30--39 Nadia Nedjah Minimal Deterministic Left-to-Right Pattern-Matching Automata . . . . . . . 40--47 Nicolas Anquetil and Jean Vaucher Expressing Opposition in the Object Model, First Step towards Negation . . . 48--55 C. E. McDowell and E. A. Baldwin Unloading Java Classes That Contain Static Fields . . . . . . . . . . . . . 56--60 Fan Xiaocong and Xu Dianxiang and Hou Jianmin and Zheng Guoliang SPLAW: A Computable Language for Agent-oriented Programming . . . . . . . 61--69 Anonymous Garbage In/Garbage Out . . . . . . . . . ?? Anonymous Language tips . . . . . . . . . . . . . ?? Anonymous Technical Correspondence . . . . . . . . ??
Robert Kessler Executive Committee News . . . . . . . . 1--1 Seth Bergmann Conference Corner: Calendar . . . . . . 2--13 Anonymous Conference Announcement: Systems Implementation 2000 . . . . . . . . . . 14--14 Anonymous Workshop Report: Parallelism and Implementation Technology for (Constraint) Logic Programming . . . . . 15--17 Enrico Pontelli Parallelism and implementation technology for (constraint) logic programming . . . . . . . . . . . . . . 15--17 Cass W. Everitt and John van der Zwaag and Robert J. Moorhead COST: common object support toolkit . . 18--24 Cass W. Everitt and John van der Zwaag and Robert J. Moorhead C++ Toolbox: COST: Common Object Support Toolkit . . . . . . . . . . . . . . . . 18--24 Philip Wadler An angry half-dozen . . . . . . . . . . 25--30 Philip Wadler Functional programming: An angry half-dozen . . . . . . . . . . . . . . . 25--30 Paul Frenger Forth Report: Observations on the EuroForth '97 Conference . . . . . . . . 31--33 Paul Frenger Observations on the EuroForth '97 conference . . . . . . . . . . . . . . . 31--33 Henry G. Baker You could learn a lot from a quadratic: II: Digital dentistry . . . . . . . . . 34--39 Anonymous Information for Authors . . . . . . . . 40--40 Mária Bieliková and Pavol Návrat Learning Programming in Prolog Using Schemata . . . . . . . . . . . . . . . . 41--47 Andrew Kitchen A Formal Approach to the Teaching of Programming Language Concepts . . . . . 48--55 Günter Dotzel and Hartmut Goebel 64 Bit Oberon . . . . . . . . . . . . . 56--58 K. Rangarajan and A. Balasubramaniam When are Two Classes Equivalent? . . . . 59--64 Baowen Xu Comments On Several Syntax Rules in Ada95 . . . . . . . . . . . . . . . . . 65--67
Peter Lee Executive Committee News: SIGPLAN Supports Your Professional Activities 1--1 Seth Bergmann Conference Corner . . . . . . . . . . . 2--13 Anonymous Call for Papers: SIGADA '98 . . . . . . 14--14 Anonymous Call for Papers: ICFP '98 . . . . . . . 15--15 Peter H. Salus Historical Notes: Languages of the Net 16--20 Peter H. Salus Languages of the Net . . . . . . . . . . 16--20 Paul Frenger Forth Report: The Growing Machine, a Pre-Forth Language Implementation . . . 21--23 Paul Frenger The growing machine, a pre-Forth language implementation . . . . . . . . 21--23 Henry G. Baker March Möbius Madness with a Polynomial PostScript, March 32, 1998 . . . . . . . 24--35 A. Michael Berman Amendment to Review of Per Brinch Hansen, \em The Search for Simplicity --- Essays in Parallel Programming . . . 36--36 A. Michael Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 37--37 Ronald E. Prather A Modular Mathematical Programming Language . . . . . . . . . . . . . . . . 38--56 Per Brinch Hansen An Evaluation of High Performance Fortran . . . . . . . . . . . . . . . . 57--64 Per Brinch Hansen An Evaluation of the Message-Passing Interface . . . . . . . . . . . . . . . 65--72 Oscar Azañón Esteire and Juan Manual Cueva Lovelle J --- Set of Tools for Native Code Generation for the Java Virtual Machine 73--79 Oscar Azañón Esteire and Juan Manuel Cueva Lovelle Set of tools for native code generation for the Java virtual machines . . . . . 73--79
Ron Cytron Executive Committee News . . . . . . . . 1 Anonymous ECOOP '98 Announcement . . . . . . . . . 14 Robert Marcus OOPSLA Midyear Workshop . . . . . . . . 15 Rex Jaeschke The C Programming Language . . . . . . . 16--16 Andrew W. Appel SSA is Functional Programming . . . . . 17--20 Paul Frenger The Talking Toaster . . . . . . . . . . 21--25 Gansheng Li Correction to ``Making C++ Concurrent and Real-time'' . . . . . . . . . . . . 27--27 G. Alan Creak Garbage: Two New Structures . . . . . . 28--29 A. Michael Berman Selected Papers from the Second United Kingdom: Java in the Computing Curriculum (JICC) Conference . . . . . . 30--30 A. Michael Berman Special Section: Selected Papers from the Second UK Java in the Computing Curriculum Conference . . . . . . . . . 30 Fintan Culwin Special section: selected papers from the Java in the computing curriculum conference . . . . . . . . . . . . . . . 31--33 Fintan Culwin Editorial --- Justifying Java? . . . . . 31 Peter Martin Java, the Good, the Bad and the Ugly . . 34--39 Jeremy Gibbons Structured Programming in Java . . . . . 40--43 Barry Cornelius Using CORBA and JDBC to produce Three-Tier Systems . . . . . . . . . . . 44--52 Peter Burton Kinds of Language, Kinds of Learning . . 53--61
Rastislav Bodík and Rajiv Gupta and Mary Lou Soffa Complete removal of redundant expressions . . . . . . . . . . . . . . 1--14 A. V. S. Sastry and Roy D. C. Ju A New Algorithm for Scalar Register Promotion based on SSA Form . . . . . . 15--25 Fred Chow and Robert Kennedy and Shin-Ming Liu and Raymond Lo and Peng Tu Register Promotion by Sparse Partial Redundancy Elimination of Loads and Stores . . . . . . . . . . . . . . . . . 26--37 Raymond Lo and Fred Chow and Robert Kennedy and Shin-Ming Liu and Peng Tu Register promotion by sparse partial redundancy elimination of loads and stores . . . . . . . . . . . . . . . . . 26--37 Gabriel Rivera and Chau-Wen Tseng Data Transformations for Eliminating Conflict Misses . . . . . . . . . . . . 38--49 E. Christopher Lewis and Calvin Lin and Lawrence Snyder The Implementation and Evaluation of Fusion and Contraction in Array Languages . . . . . . . . . . . . . . . 50--59 Yunheung Paek and Jay Hoeflinger and David Padua Simplification of Array Access Patterns for Compiler Optimizations . . . . . . . 60--71 Glenn Ammons and James R. Larus Improving Data-flow Analysis with Path Profiles . . . . . . . . . . . . . . . . 72--84 Alexander Aiken and Manuel Fahndrich and Jeffery S. Foster and Zhendong Su Partial Online Cycle Elimination in Inclusion Constraint Graphs . . . . . . 85--96 Manuel Fähndrich and Jeffrey S. Foster and Zhendong Su and Alexander Aiken Partial online cycle elimination in inclusion constraint graphs . . . . . . 85--96 Rebecca Hasti and Susan Horwitz Using Static Single Assignment Form to Improve Flow-Insensitive Pointer Analysis . . . . . . . . . . . . . . . . 97--105 Amer Diwan and Kathryn S. McKinley and J. Eliot B. Moss Type-Based Alias Analysis . . . . . . . 106--117 S. Subramanya Sastry and Subbarao Palacharla and James E. Smith Exploiting Idle Floating-Point Resources for Integer Execution . . . . . . . . . 118--129 Minghui Yang and Gang-Ryung Uh and David B. Whalley Improving Performance by Branch Reordering . . . . . . . . . . . . . . . 130--141 Omri Traub and Glenn Holloway and Michael D. Smith Quality and Speed in Linear-scan Register Allocation . . . . . . . . . . 142--151 Fabrice Le Fessant and Ian Piumarta and Marc Shapiro An implementation of complete, asynchronous, distributed garbage collection . . . . . . . . . . . . . . . 152--161 Fabrice Le Fessant and Ian Piumarta and Marc Shapiro An implementation of complete, asynchronous, distributed garbage collection . . . . . . . . . . . . . . . 152--161 Perry Cheng and Robert Harper and Peter Lee Generational Stack Collection and Profile-Driven Pretenuring . . . . . . . 162--173 William D. Clinger Proper Tail Recursion and Space Efficiency . . . . . . . . . . . . . . . 174--185 Vikram Adve and John Mellor-Crummey Using Integer Sets for Data-Parallel Program Analysis and Optimization . . . 186--198 Yingchun Zhu and Laurie J. Hendren Communication Optimizations for Parallel C Programs . . . . . . . . . . . . . . . 199--211 Matteo Frigo and Charles E. Leiserson and Keith H. Randall The Implementation of the Cilk-5 Multithreaded Language . . . . . . . . . 212--223 Philip Wickline and Peter Lee and Frank Pfenning Run-time code generation and Modal-ML 224--235 Matthew Flatt and Matthias Felleisen Units: cool modules for HOT languages 236--248 Hongwei Xi and Frank Pfenning Eliminating Array Bound Checking Through Dependent Types . . . . . . . . . . . . 249--257 David F. Bacon and Ravi Konuru and Chet Murthy and Mauricio Serrano Thin Locks: Featherweight Synchronization for Java . . . . . . . . 258--268 Ole Agesen and David Detlefs and J. Eliot B. Moss Garbage Collection and Local Variable Type-Precision and Liveness in Java Virtual Machines . . . . . . . . . . . . 269--279 Ali-Reza Adl-Tabatabai and Micha\l Cierniak and Guei-Yuan Lueh and Vishesh M. Parikh and James M. Stichnoth Fast, effective code generation in a just-in-time Java compiler . . . . . . . 280--290 Ian Piumarta and Fabio Riccardi Optimizing Direct-threaded Code by Selective Inlining . . . . . . . . . . . 291--300 Andrew Ayers and Stuart de Jong and John Peyton and Richard Schooler Scalable Cross-Module Optimization . . . 301--312 David Gay and Alex Aiken Memory Management with Explicit Regions 313--323 Peter F. Sweeney and Frank Tip A Study of Dead Data Members in C++ Applications . . . . . . . . . . . . . . 324--332 George C. Necula and Peter Lee The Design and Implementation of a Certifying Compiler . . . . . . . . . . 333--344 Christopher Colby and Patrice Godefroid and Lalita Jategaonkar Jagadeesan Automatically Closing Open Reactive Programs . . . . . . . . . . . . . . . . 345--357
A. Michael Berman SIGPLAN Notices --- Where We Are, Where We're Going . . . . . . . . . . . . . . 1 Anonymous Calendar . . . . . . . . . . . . . . . . 3 Anonymous POPL99 Call for Papers . . . . . . . . . 15--15 Barbara G. Ryder MASPLAS98 . . . . . . . . . . . . . . . 16--16 M. Felleisen and R. B. Findler and M. Flatt and S. Krishnamurthi The DrScheme project: an overview . . . 17--23 M. Felleisen and R. B. Findler and M. Flatt and S. Krishnamurthi Functional Programming: The DrScheme Project: An Overview . . . . . . . . . . 17 Paul Frenger Forth in space, or, so NEAR yet so far out . . . . . . . . . . . . . . . . . . 24--26 Paul Frenger Forth: Forth in Space, or, So NEAR Yet So Far . . . . . . . . . . . . . . . . . 24 Henry G. Baker You could learn a lot from a quadratic: Newton squares the circle . . . . . . . 27--31 Henry G. Baker Garbage In/Garbage Out: You Could Learn a Lot from a Quadratic: Newton Squares the Circle . . . . . . . . . . . . . . . 27 Peter Kokol and Janez Brest Fractal structure of random programs . . 33--38 Peter Kobol and Janez Brest Fractal Structure of Random Programs . . 33 Yariv Aridor and Shimon Cohen and Amiram Yehudai Design of an Actor language for implicit parallel programming . . . . . . . . . . 39--47 K. Rangarajan and P. Eswar Understanding Class Evolution Through Atomic Changes . . . . . . . . . . . . . 48--60 F. H. D. van Batenburg and Ellen de Ridder and Joseph de Kerf APL Extended Compared With Other Languages According to Halstead's Theory 54--54 Massimo Ancona and Walter Cazzola Static Header as Sentinel . . . . . . . 61--64
Gregor Snelting Concept Analysis --- A New Framework for Program Understanding (Invited Paper) 1--10 Sean Zhang and Barbara G. Ryder and William A. Landi Experiments with Combined Analysis for Pointer Aliasing . . . . . . . . . . . . 11--18 Caroline Tice and Susan L. Graham OPTVIEW: A new approach for examining optimized code . . . . . . . . . . . . . 19--26 Nurit Dor and Michael Rodeh and Mooly Sagiv Detecting Memory Errors via Static Pointer Analysis (Preliminary experience) . . . . . . . . . . . . . . 27--34 Jens Krinke Static Slicing of Threaded Programs . . 35--42 Melissa P. Chase and Steven M. Christey and David R. Harris and Alexander S. Yeh Recovering Software Architecture from Multiple Source Code Analyses . . . . . 43--50 Gleb Naumovich and Lori A. Clarke and Leon J. Osterweil Efficient Composite Data Flow Analysis Applied to Concurrent Programs . . . . . 51--58 Steven P. Reiss Software Visualization in the Desert Environment . . . . . . . . . . . . . . 59--66 Clinton Jeffery and Wenyi Zhou and Kevin Templer and Michael Brazell A Lightweight Architecture for Program Execution Monitoring . . . . . . . . . . 67--74 Oscar Waddell and J. Michael Ashley Visualizing the Performance of Higher-Order Programs . . . . . . . . . 75--82 Mary Jean Harrold and Gregg Rothermel and Rui Wu and Liu Yi An Empirical Investigation of Program Spectra . . . . . . . . . . . . . . . . 83--90
Benjamin Zorn An Invitation to OOPSLA '98 . . . . . . 1--2 Seth Bergmann Conference Corner: Calendar . . . . . . 3--12 Anonymous PLDI '99 Preliminary Call for Papers . . 13--13 Seth Bergmann FOOL 6 Call for Papers . . . . . . . . . 14--15 Enrico Pontelli Programming with \{Programming with \{{SETS\}Programming with \{Programming with \{{SETS\} --- An International Forum of Discussion} . . . . . . . . . . 16--16 Paul McNamee and Marty Hall Developing a Tool for memoizing Functions in C++ . . . . . . . . . . . . 17--22 Philip Wadler Why No One Uses Functional Languages . . 23--27 Paul Frenger A Tribute to FIG-Forth . . . . . . . . . 28--31 Per Brinch Hansen Letter to the Editor . . . . . . . . . . 32--33 Carl D. Offner Per Brinch Hansen's Concerns about High Performance Fortran . . . . . . . . . . 34--39 Jonathan L. Schilling Optimizing away C++ exception handling 40--47 Pascal Ledru JSpace: implementation of a Linda System in Java . . . . . . . . . . . . . . . . 48--50 Pascal Ledru A Traveling Salesman in Java . . . . . . 51--56
Mary Lou Soffa 1998 SIGPLAN awards . . . . . . . . . . 1--3 Seth Bergmann Conference Corner: Calendar . . . . . . 4--15 Anonymous PLDI '99 Call for Papers . . . . . . . . 16--16 Anonymous ISMM '98 Announcement . . . . . . . . . 17--17 William L. Scherlis and Neil D. Jones The European Scene: Two Clusters of Programming Languages Conferences . . . 18--19 William L. Scherlis Two clusters of programming language conferences . . . . . . . . . . . . . . 18--19 Paul Frenger Forth: MUCKing Around With Forth . . . . 20--24 Paul Frenger MUCKing around with Forth . . . . . . . 20--24 A. Michael Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 25--25 N. I. Adams IV and D. H. Bartley and G. Brooks and R. K. Dybvig and D. P. Friedman and R. Halstead and C. Hanson and C. T. Haynes and E. Kohlbecker and D. Oxley and K. M. Pitman and G. J. Rozas and G. L. Steele, Jr. and G. J. Sussman and M. Wand and H. Abelson Revised5 Report on the Algorithmic Language Scheme . . . . . . . . . . . . 26--76 Richard Kelsey and William Clinger and Jonathan Rees Revised$^5$ Report on the Algorithmic Language Scheme . . . . . . . . . . . . 26--76 Boyko B. Bantchev Putting More Meaning in Expressions . . 77--83 C. E. McDowell Reducing garbage in Java . . . . . . . . 84--86 Adrian Johnstone and Elizabeth Scott rdp --- an iterator-based recursive descent parser generator with tree promotion operators . . . . . . . . . . 87--94 Fuqing Yang and Hong Mei and Wanghong Yuan and Qiong Wu and Yao Guo Experiences in Building C++ Front End 95--102 Christopher J. Vogt Floating Point Performance of Common Lisp . . . . . . . . . . . . . . . . . . 103--107 John A. Atkinson-Abutridy and Anita A. Ferreira-Cabrera The design and implementation of the GILENA natural language interfaces specification system . . . . . . . . . . 108--117
Julian Dolby and Andrew A. Chien An Evaluation of Automatic Object Inline Allocation Techniques . . . . . . . . . 1--20 Grzegorz Czajkowski and Thorsten von Eicken JRes: A Resource Accounting Interface for Java . . . . . . . . . . . . . . . . 21--35 Sheng Liang and Gilad Bracha Dynamic Class Loading in the Java Virtual Machine . . . . . . . . . . . . 36--44 John Artim and Charlie Bridgeford and Lillian Christman and James Coplien and Mary Beth Rosson and Stanley Taylor and Rebecca Wirfs-Brock Object-oriented practice in 1998 (panel): does it help or hinder collaboration? . . . . . . . . . . . . . 45--47 John Artim and Charlie Bridgeford and Lilian Christman and James Coplien and Mary Beth Rosson and Stanley Taylor and Rebecca Wirfs-Brock Panel 1: Object-Oriented practice in 1998: Does it help or hinder collaboration? . . . . . . . . . . . . . 45--47 David G. Clarke and John M. Potter and James Noble Ownership Types for Flexible Alias Protection . . . . . . . . . . . . . . . 48--64 Anthony J. H. Simons Borrow, copy or steal?: loans and larceny in the orthodox canonical form 65--83 Noury M. N. Bouraqadi-Saâdani and Thomas Ledoux and Fred Rivard Safe Metaclass Programming . . . . . . . 84--96 Mira Mezini and Karl Lieberherr Adaptive Plug-and-Play Components for Evolutionary Software Development . . . 97--116 Mira Mezini and Karl Lieberherr Adaptive plug-and-play components for evolutionary software development . . . 97--116 Dirk Riehle and Thomas Gross Role Model Based Framework Design and Integration . . . . . . . . . . . . . . 117--133 Ellen Agerbo and Aino Cornils How to Preserve the Benefits of Design Patterns . . . . . . . . . . . . . . . . 134--143 K. Rustan M. Leino Data Groups: Specifying the Modification of Extended State . . . . . . . . . . . 144--153 Jonathan G. Rossie, Jr. Logical Observable Entities . . . . . . 154--165 Pietro Di Gianantonio and Furio Honsell and Luigi Liquori A Lambda Calculus of Objects with Self-Inflicted Extension . . . . . . . . 166--178 Lars Bak and John Duimovich and Jesse Fang and Scott Meyer and David Ungar The new crop of Java virtual machines (panel) . . . . . . . . . . . . . . . . 179--182 David Ungar and Lars Bak and Jesse Fang and John Duimovich and Scott Meyer Panel 2: The New Crop of Java Virtual Machines . . . . . . . . . . . . . . . . 179--182 Gilad Bracha and Martin Odersky and David Stoutamire and Philip Wadler Making the Future Safe for the Past: Adding Genericity to the Java Programming Language . . . . . . . . . . 183--200 Robert Cartwright and Guy L. Steele, Jr. Compatible Genericity with Run-time Types for the Java Programming Language 201--215 Jose H. Solorzano and Suad Alagi\'c Parametric Polymorphism for Java: A Reflective Solution . . . . . . . . . . 216--225 Alistair Cockburn and Martin Fowler Question time! about use cases . . . . . 226--229 Martin Fowler and Ivar Jacobson and Bruce Anderson and Alistair Cockburn and Ian Graham Panel 3: Question Time! About Use Cases 226--229 Mark L. McAuliffe and Michael J. Carey and Marvin H. Solomon Vclusters: A Flexible, Fine-Grained Object Clustering Mechanism . . . . . . 230--243 Rachid Guerraoui and Pascal Felber and Beno\^\it Garbinato and Karim Mazouni System Support for Object Groups . . . . 244--258 Elisa Bertino and Giovanna Guerrini Extending the ODMG Object Model with Composite Objects . . . . . . . . . . . 259--270 Robert J. Walker and Gail C. Murphy and Bjorn Freeman-Benson and Darin Wright and Darin Swanson and Jeremy Isaak Visualizing Dynamic Software System Information through High-level Models 271--283 Frank Olken and Hans-Arno Jacobsen and Chuck McParland and Mary Ann Piette and Mary F. Anderson Object Lessons Learned from a Distributed System for Remote Building Monitoring and Operation . . . . . . . . 284--295 Jacob Harris and Vivek Sarkar Lightweight object-oriented shared variables for distributed applications on the Internet . . . . . . . . . . . . 296--309 Jacob Harris and Vivek Sarkar Lightweight Object-Oriented Shared Variables for Distributed Applications on the Internet . . . . . . . . . . . . 296--309 Stephen N. Freund and John C. Mitchell A Type System for Object Initialization in the Java Bytecode Language . . . . . 310--328 Bart Jacobs and Joachim van den Berg and Marieke Huisman and Martijn van Berkum and Ulrich Hensel and Hendrik Tews Reasoning about Java classes: preliminary report . . . . . . . . . . . 329--340 Sophia Drossopoulou and David Wragg and Susan Eisenbach What is Java Binary Compatibility? . . . 341--358 David Cleal and Luke Hohmann and Chet Hendrickson and Allen B. Davis and John Nolan Panel 4: The Project Management Game . . 359--361 Martin Büchi and Wolfgang Weck Compound Types for Java . . . . . . . . 362--373 Gary T. Leavens and Todd D. Millstein Multiple dispatch as dispatch on Tuples 374--387 Vassily Litvinov Contraint-based polymorphism in Cecil: towards a practical and static type system . . . . . . . . . . . . . . . . . 388--411 Vassily Litvinov Constraint-Based Polymorphism in Cecil: Towards a Practical and Static Type System . . . . . . . . . . . . . . . . . 388--411 Doug Lea and David Forslund and Tom Barry and Don Vines and Rajendra Raj and Ashutosh Tiwary Building distributed systems (panel) . . 412--416 Doug Lea and Tom Barry and Don Vines and David W. Forslund and Rajendra Raj and Ashutosh Tiwary Panel 5: Building Distributed Systems 412--416 Steven Fraser and Maggie Davis and Martin Griss and Luke Hohmann and Ian Hopper and Rebecca Joos and Bill Opdyke Panel 6: Software Reuse: Nemesis or Nirvana? . . . . . . . . . . . . . . . . 417--420 Steven Fraser and Maggie Davis and Martin Griss and Luke Hohmann and Ian Hopper and Rebecca Joos and Bill Opdyke Software reuse (panel): nemesis or nirvana? . . . . . . . . . . . . . . . . 417--420 Anonymous Author Index . . . . . . . . . . . . . . 421--421 Anonymous Title Index . . . . . . . . . . . . . . 422--422
Keith D. Cooper and Timothy J. Harvey Compiler-Controlled Memory . . . . . . . 2--11 Matthew L. Seidl and Benjamin G. Zorn Segregating Heap Objects by Reference Behavior and Lifetime . . . . . . . . . 12--23 Michelle Mills Strout and Larry Carter and Jeanne Ferrante and Beth Simon Schedule-Independent Storage Mapping for Loops . . . . . . . . . . . . . . . . . 24--33 Avinash Sodani and Gurindar S. Sohi An Empirical Analysis of Instruction Repetition . . . . . . . . . . . . . . . 35--45 Walter Lee and Rajeev Barua and Matthew Frank and Devabhaktuni Srikrishna and Jonathan Babb and Vivek Sarkar and Saman Amarasinghe Space-Time Scheduling of Instruction-Level Parallelism on a Raw Machine . . . . . . . . . . . . . . . . 46--57 Lance Hammond and Mark Willey and Kunle Olukotun Data Speculation Support for a Chip Multiprocessor . . . . . . . . . . . . . 58--69 Rodney Van Meter and Gregory G. Finn and Steve Hotz VISA: Netstation's Virtual Internet SCSI Adapter . . . . . . . . . . . . . . . . 71--80 Anurag Acharya and Mustafa Uysal and Joel Saltz Active Disks: Programming Model, Algorithms and Evaluation . . . . . . . 81--91 Garth A. Gibson and David F. Nagle and Khalil Amiri and Jeff Butler and Fay W. Chang and Howard Gobioff and Charles Hardin and Erik Riedel and David Rochberg and Jim Zelenka A cost-effective, high-bandwidth storage architecture . . . . . . . . . . . . . . 92--103 Philip Machanick and Pierre Salverda and Lance Pompe Hardware-Software Trade-Offs in a Direct Rambus Implementation of the RAMpage Memory Hierarchy . . . . . . . . . . . . 105--114 Amir Roth and Andreas Moshovos and Gurindar S. Sohi Dependence Based Prefetching for Linked Data Structures . . . . . . . . . . . . 115--126 Boris Weissman Performance Counters and State Sharing Annotations: a Unified Approach to Thread Locality . . . . . . . . . . . . 127--138 Brad Calder and Chandra Krintz and Simmi John and Todd Austin Cache-Conscious Data Placement . . . . . 139--149 Bich C. Le An Out-of-Order Execution Technique for Runtime Binary Translators . . . . . . . 151--158 Chandra Krintz and Brad Calder and Han Bok Lee and Benjamin G. Zorn Overlapping execution with transfer using non-strict execution for mobile programs . . . . . . . . . . . . . . . . 159--169 Jared Stark and Marius Evers and Yale N. Patt Variable Length Path Branch Prediction 170--179 Ben Verghese and Anoop Gupta and Mendel Rosenblum Performance Isolation: Sharing and Isolation in Shared-Memory Multiprocessors . . . . . . . . . . . . 181--192 Yuqun Chen and Angelos Bilas and Stefanos N. Damianakis and Cezary Dubnicki and Kai Li UTLB: A Mechanism for Address Translation on Network Interfaces . . . 193--204 Vivek S. Pai and Mohit Aron and Gaurav Banga and Michael Svendsen and Peter Druschel and Willy Zwaenepoel and Erich Nahum Locality-Aware Request Distribution in Cluster-based Network Servers . . . . . 205--216 Olivier Temam Investigating Optimal Local Memory Performance . . . . . . . . . . . . . . 218--227 Somnath Ghosh and Margaret Martonosi and Sharad Malik Precise Miss Analysis for Program Transformations with Caches of Arbitrary Associativity . . . . . . . . . . . . . 228--239 Jih-Kwon Peir and Yongjoon Lee and Windsor W. Hsu Capturing Dynamic Memory Reference Behavior with Adaptive Cache Topology 240--250 Daniel Citron and Dror Feitelson and Larry Rudolph Accelerating Multi-Media processing by Implementing Memoing in Multiplication and Division Units . . . . . . . . . . . 252--261 Chao-Ying Fu and Matthew D. Jennings and Sergei Y. Larin and Thomas M. Conte Value Speculation Scheduling for High Performance Processors . . . . . . . . . 262--271 Narayan Ranganathan and Manoj Franklin An Empirical Study of Decentralized ILP Execution Models . . . . . . . . . . . . 272--281 Eric Schnarr and James R. Larus Fast Out-Of-Order Processor Simulation Using Memoization . . . . . . . . . . . 283--294 Bruce L. Jacob and Trevor N. Mudge A Look at Several Memory Management Units, TLB-Refill Mechanisms, and Page Table Organizations . . . . . . . . . . 295--306 Parthasarathy Ranganathan and Kourosh Gharachorloo and Sarita V. Adve and Luiz André Barroso Performance of Database Workloads on Shared-Memory Systems with Out-of-Order Processors . . . . . . . . . . . . . . . 307--318 Anonymous ASPLOS-VIII Reviewers . . . . . . . . . v--vi Anonymous Conference Committee . . . . . . . . . . iv--iv
Mary Lou Soffa and David Notkin SIGPLAN and SIGSOFT Joint Efforts . . . 1--1 Seth Bergmann Conference Corner: Calendar . . . . . . 2--13 Anonymous Call for Papers: ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '99) . . . . . . . . . . . . . . . . . . 14--15 Anonymous Call for Papers: 1999 ACM International Conference on Supercomputing . . . . . . 15--15 Brent W. Benson, Jr. Eat your own dog food . . . . . . . . . 16--18 Brent W. Benson, Jr. Java Reflections: Reflection: Eat your own dog food . . . . . . . . . . . . . . 16--19 Chris Clark Overlapping token definitions . . . . . 20--24 Chris Clark Practical Parsing Patterns: Overlapping Token Definitions . . . . . . . . . . . 20--24 Paul Frenger Forth Report: Mind.Forth: Thoughts on Artificial Intelligence and Forth . . . 25--31 Paul Frenger Mind.Forth: thoughts on artificial intelligence and Forth . . . . . . . . . 25--31 A. Michale Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 32--32 Alex Sakharov Technical Correspondence: Processing Recursive Data Types in Java . . . . . . 33--33 Kurt Svensson Index in BNF Grammars . . . . . . . . . 34--34 Vineeth Kumar Paleri and Y. N. Srikant and Priti Shankar A Simple Algorithm for Partial Redundancy Elimination . . . . . . . . . 35--43 Igor D. D. Curcio ASAP --- A Simple Assertion Pre-processor . . . . . . . . . . . . . 44--51 Nick Hatzigeorgiu and Apostolos Syropoulos Literate programming and the ``Spaniel'' method . . . . . . . . . . . . . . . . . 52--56 Marjan Hericko and Matjaz B. Juric and Ales Zivkovic and Ivan Rozman and Tomaz Domajnko and Marjan Krisper Java and Distributed Object Models: An Analysis . . . . . . . . . . . . . . . . 57--65 Timothy A. Budd Functional Programming and the Fragile Base Class Problem . . . . . . . . . . . 66--71 Masud Ahmad Malik Evolution of the High Level Programming Languages: A Critical Perspective . . . 72--80 Charles D. Havener EQL --- The Query Language You Never Heard Of . . . . . . . . . . . . . . . . 81--88
Yasuhiko Minamide and Jacques Garrigue On the Runtime Complexity of Type-Directed Unboxing . . . . . . . . . 1--12 Eelco Visser and Zine-el-Abidine Benaissa and Andrew Tolmach Building Program Optimizers with Rewriting Strategies . . . . . . . . . . 13--26 John Hannan and Patrick Hicks Higher-Order Arity Raising . . . . . . . 27--38 Jörgen Gustavsson A Type Based Sharing Analysis for Update Avoidance and Optimisation . . . . . . . 39--50 Richard B. Kieburtz Taming Effects with Monadic Typing . . . 51--62 Philip Wadler The marriage of effects and monads . . . 63--74 Colin J. Taylor A Theory of Core Fudgets . . . . . . . . 75--85 Michael Hicks and Pankaj Kakkar and Jonathan T. Moore and Carl A. Gunter and Scott Nettles PLAN: a packet language for active networks . . . . . . . . . . . . . . . . 86--93 Robert Bruce Findler and Matthew Flatt Modular Object-Oriented Programming with Units and Mixins . . . . . . . . . . . . 94--104 Martin Odersky Programming with Variable Functions . . 105--116 Ian Mackie YALE: Yet Another Lambda Evaluator Based on Interaction Nets . . . . . . . . . . 117--128 Nick Benton and Andrew Kennedy and George Russell Compiling Standard ML to Java Bytecodes 129--140 Zhong Shao Typed Cross-Module Compilation . . . . . 141--152 Sigbjorn Finne and Daan Leijen and Erik Meijer and Simon Peyton Jones H/Direct: A Binary Foreign Language Interface for Haskell . . . . . . . . . 153--162 Jon Mountjoy The Spineless Tagless G-machine, naturally . . . . . . . . . . . . . . . 163--173 Per Bjesse and Koen Claessen and Mary Sheeran and Satnam Singh Lava: Hardware Design in Haskell . . . . 174--184 Abbas Edalat and Peter John Potts and Philipp Sünderhauf Lazy Computation with Exact Real Numbers 185--194 Jerzy Karczmarczuk Functional Differentiation of Computer Programs . . . . . . . . . . . . . . . . 195--203 Luc Moreau A Distributed Garbage Collector with Diffusion Tree Reorganisation and Mobile Objects . . . . . . . . . . . . . . . . 204--215 Johan Nordlander Pragmatic Subtyping in Polymorphic Languages . . . . . . . . . . . . . . . 216--227 François Pottier A Framework for Type Inference with Subtyping . . . . . . . . . . . . . . . 228--238 Lennart Augustsson Cayenne --- a Language with Dependent Types . . . . . . . . . . . . . . . . . 239--250 Jonathan Sobel and Daniel P. Friedman Recycling Continuations . . . . . . . . 251--260 Enno Scholz Imperative Streams --- A Monadic Combinator Library for Synchronous Programming . . . . . . . . . . . . . . 261--272 Jeremy Gibbons and Geraint Jones The Under-Appreciated Unfold . . . . . . 273--279 Graham Hutton Fold and Unfold for Program Semantics 280--288 Zhe Yang Encoding Types in ML-like Languages . . 289--300 Karl Crary and Stephanie Weirich and Greg Morrisett Intensional Polymorphism in Type-Erasure Semantics . . . . . . . . . . . . . . . 301--312 Zhong Shao and Christopher League and Stefan Monnier Implementing Typed Intermediate Languages . . . . . . . . . . . . . . . 313--323 Arne Kutzner and Manfred Schmidt-Schauß A Non-Deterministic Call-by-Need Lambda Calculus . . . . . . . . . . . . . . . . 324--335 Oleg Kiselyov LAND*: an AND with local bindings, a \em guarded LET* special form . . . . . . . 336--336 Oleg Kiselyov Functional style in C++: closures, late binding, and Lambda abstractions . . . . 337--337 Bruce J. McAdam Type errors confuse the programmer (poster abstract) . . . . . . . . . . . 338--338 Robert Ennals Controlled Temporal Non-Determinism for Reasoning with a Machine of Finite Speed 339--339 Robert Ennals Verbose Typing . . . . . . . . . . . . . 340--340 Zoran Putnik On Application of Self-Similar Pictures in Education . . . . . . . . . . . . . . 341--341 Dan Russell MAP: A Functional Analysis and Design Method . . . . . . . . . . . . . . . . . 342--342 Oleg Kiselyov A delegation language to request weather products and a scheme of its interpretation . . . . . . . . . . . . . 343--343 Nancy Am and Young Park A Structured Approach to Retrieving Functions by Types . . . . . . . . . . . 344--344 Nancy An and Young Park A structured approach to retrieving functions by types . . . . . . . . . . . 344--344 Gary Shu Ling Frob --- Functional Robotics . . . . . . 345--345 Daniel H. Marcos and Pablo E. Martínez López and Walter A. Risi A Functional Programming Approach to Hypermedia Authoring . . . . . . . . . . 346--346 Claudia Faggian A Term Calculus for a Unitary Approach to Normalization . . . . . . . . . . . . 347--347 Yan-David Erlich Implementing design patterns as language constructs . . . . . . . . . . . . . . . 348--348 Oleg Kiselyov A lazy CGI namespace in Scheme . . . . . 349--349 Yuchen Zhang and Yanhong A. Liu Automating Derivation of Incremental Programs . . . . . . . . . . . . . . . . 350--350 Chen Haiming Combining CFG and Recursive Functions to Get a New Language . . . . . . . . . . . 351--351
A. Michael Berman Letter from the Editor: Malik's ``Evolution of the High Level Programming Languages: A Critical Perspective'': A Correction and Apology 1--1 Michael G. Burke Activities: Executive Committee News: Panel Sessions at SIGPLAN Conference . . 2--3 Seth Bergmann Conference Corner: Calendar . . . . . . 4--15 Neil D. Jones EAPLS: the European Association for Programming Languages and Systems . . . 19--20 Neil D. Jones The European Scene: EAPLS: the European Association for Programming Languages and Systems . . . . . . . . . . . . . . 19--20 Thomas Ball Functional Programming: Paths between Imperative and Functional Programming Languages . . . . . . . . . . . . . . . 21--25 Thomas Ball Paths between imperative and functional programming . . . . . . . . . . . . . . 21--25 Chris Clark Practical Parsing Patterns: What to Do with a Dangling Else . . . . . . . . . . 26--31 Chris Clark What to do with a dangling else . . . . 26--31 Brent W. Benson, Jr. Closures for the masses . . . . . . . . 32--35 Brent W. Benson, Jr. Java Reflections: Inner Classes: Closures for the Masses . . . . . . . . 32--35 Paul Frenger Forth and the open terminal architecture 36--38 Paul Frenger Forth Report: Forth and the Open Terminal Architecture . . . . . . . . . 36--39 A. Michael Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 40--40 Martin C. Carlisle Letters to the Editor: SIGPLAN Notices on language evolution . . . . . . . . . 41--41 Michael B. Feldman Letters to the Editor: DEC 98 SIGPLAN Notices . . . . . . . . . . . . . . . . 41--42 Peter A. Bigot Letters to the Editor: Comment on Spaniel paper . . . . . . . . . . . . . 42--45 Apostolos Syropoulos Letters to the Editor: Response to Peter A. Bigot . . . . . . . . . . . . . . . . 46--46 Diomidis Spinellis Declarative peephole optimization using string pattern matching . . . . . . . . 47--50 Diomidis Spinellis Technical Correspondence: Declarative Peephole Optimization Using String Pattern Matching . . . . . . . . . . . . 47--51 Dianxiang Xu A Type System of Logic Objects . . . . . 52--56
Martin Larose and Marc Feeley A compacting incremental collector and its performance in a production quality compiler . . . . . . . . . . . . . . . . 1--9 Alain Azagury and Elliot K. Kolodner and Erez Petrank and Zvi Yehudai Combining card marking with remembered sets: how to save scanning time . . . . 10--19 Pekka P. Pirinen Barrier techniques for incremental tracing . . . . . . . . . . . . . . . . 20--25 Mark S. Johnstone and Paul R. Wilson The memory fragmentation problem: solved? . . . . . . . . . . . . . . . . 26--36 Trishul M. Chilimbi and James R. Larus Using generational garbage collection to implement cache-conscious data placement 37--48 David J. Roth and David S. Wise One-bit counts between unique and sticky 49--56 Luc Moreau Hierarchical distributed reference counting . . . . . . . . . . . . . . . . 57--67 Frederick Smith and Greg Morrisett Comparing mostly-copying and mark-sweep conservative collection . . . . . . . . 68--78 Gustavo Rodriguez-Rivera and Michael Spertus and Charles Fiterman A non-fragmenting non-moving, garbage collector . . . . . . . . . . . . . . . 79--85 Gor V. Nishanov and Sibylle Schupp Garbage collection in generic libraries 86--96 Bart Demoen and Konstantinos Sagonas Memory management for Prolog with tabling . . . . . . . . . . . . . . . . 97--106 Malcolm Wallace and Colin Runciman The bits between the lambdas: binary data in a lazy functional language . . . 107--117 Tian F. Lim and Przemys\law Pardyak and Brian N. Bershad A memory-efficient real-time non-copying garbage collector . . . . . . . . . . . 118--129 Fridtjof Siebert Guaranteeing non-disruptiveness and real-time deadlines in an incremental garbage collector . . . . . . . . . . . 130--137 Michael Hicks and Luke Hornof and Jonathan T. Moore and Scott M. Nettles A study of large object spaces . . . . . 138--145 Sheetal V. Kakkad and Mark S. Johnstone and Paul R. Wilson Portable run-time type description for conventional compilers . . . . . . . . . 146--153 Dominique Colnet and Philippe Coucaud and Olivier Zendra Compiler support to customize the mark and sweep algorithm . . . . . . . . . . 154--165 Lorenz Huelsbergen and Phil Winterbottom Very concurrent mark-&-sweep garbage collection without fine-grain synchronization . . . . . . . . . . . . 166--175 Per-Åke Larson and Murali Krishnan Memory allocation for long-running server applications . . . . . . . . . . 176--185 Mads Tofte A brief introduction to regions . . . . 186--195
Ben Zorn Activities: Corporate Support and SIGPLAN . . . . . . . . . . . . . . . . 1--2 Ben Zorn Corporate support and SIGPLAN . . . . . 1--2 Seth Bergmann Conference Corner: Calendar . . . . . . 3--15 Anonymous Federated Computing Research Conference: April 30--May 6, 1999, Atlanta, GA . . . 16--16 Anonymous Advance Program for ACM SIGPLAN '99 Conference on Programming Language Design and Implementation: Atlanta Hilton & Towers, Atlanta, Georgia, May 1--4, 1999; \path=http://www.cs.rutgers.edu/pldi99= 17--18 Chris Clark Build a tree --- save a parse . . . . . 19--24 Chris Clark Practical Parsing Patterns: Build a Tree --- Save a Parse . . . . . . . . . . . . 19--24 Brent W. Benson, Jr. JavaScript . . . . . . . . . . . . . . . 25--27 Brent W. Benson, Jr. Java Reflections: JavaScript --- Not Java (but just as hot) . . . . . . . . . 25--27 Paul Frenger Forth Report: Parallel Forth . . . . . . 28--32 Paul Frenger Parallel Forth . . . . . . . . . . . . . 28--32 Peter Van Roy Announcing the Mozart programming system 33--34 Peter Van Roy Resources: Announcing the Mozart Programming System . . . . . . . . . . . 33--34 John Peterson Functional Programming: Microsoft and Yale Conclude Agreement to License Technology for Haskell . . . . . . . . . 35--36 John Peterson Microsoft and Yale conclude agreement to license technology for Haskell . . . . . 35--36 A. Michael Berman Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 37--37 Per Brinch Hansen Java's insecure parallelism . . . . . . 38--45 Per Brinch Hansen Technical Correspondence: Java's Insecure Parallelism . . . . . . . . . . 38--45 Timothy Harris Early storage reclamation in a tracing garbage collector . . . . . . . . . . . 46--53 Cristóbal Pareja-Flores and J. Ángel Velázquez-Iturbide Calculating Encoding and Decoding Functions for Prefix Codes . . . . . . . 54--60 Bitan Biswas and Rajib Mall Reverse Execution of Programs . . . . . 61--69 Gagan Agrawal and Shyamala Murthy and Chandrashekhar Garud A Novel Program Representation for Interprocedural Analysis . . . . . . . . 70--76
Trishul M. Chilimbi and Mark D. Hill and James R. Larus Cache-Conscious Structure Layout . . . . 1--12 Trishul M. Chilimbi and Bob Davidson and James R. Larus Cache-Conscious Structure Definition . . 13--24 Simon Peyton Jones and Alastair Reid and Fergus Henderson and Tony Hoare and Simon Marlow A semantics for imprecise exceptions . . 25--36 Simon Peyton Jones and Alastair Reid and Tony Hoare and Simon Marlow and Fergus Henderson A Semantics for Imprecise Exceptions . . 25--36 Kathleen Fisher and John Reppy The Design of a Class Mechanism for Moby 37--49 Karl Crary and Robert Harper and Sidd Puri What is a Recursive Module? . . . . . . 50--63 Rastislav Bodík and Rajiv Gupta and Mary Lou Soffa Load-Reuse Analysis: Design and Evaluation . . . . . . . . . . . . . . . 64--76 Radu Rugina and Martin Rinard Pointer Analysis for Multithreaded Programs . . . . . . . . . . . . . . . . 77--90 Suan Hsi Yong and Susan Horwitz and Thomas Reps Pointer Analysis for Programs with Structures and Casting . . . . . . . . . 91--103 Guy E. Blelloch and Perry Cheng On Bounding Time and Space for Multiprocessor Garbage Collection . . . 104--117 James M. Stichnoth and Guei-Yuan Lueh and Micha\l Cierniak Support for Garbage Collection at Every Instruction in a Java Compiler . . . . . 118--127 Amit Rao and Santosh Pande Storage Assignment Optimizations to Generate Compact and Efficient Code on Embedded DSPs . . . . . . . . . . . . . 128--138 Keith D. Cooper and Nathaniel McIntosh Enhanced Code Compression for Embedded RISC Processors . . . . . . . . . . . . 139--149 Steven R. Vegdahl Using Node Merging to Enhance Graph Coloring . . . . . . . . . . . . . . . . 150--154 Michael Schlansker and Scott Mahlke and Richard Johnson Control CPR: A Branch Height Reduction Optimization for EPIC Architectures . . 155--168 Matteo Frigo A Fast Fourier Transform Compiler . . . 169--180 Le-Chun Wu and Rajiv Mirani and Harish Patil and Bruce Olsen and Wen-mei W. Hwu A New Framework for Debugging Globally Optimized Code . . . . . . . . . . . . . 181--191 Jeffrey S. Foster and Manuel Fähndrich and Alexander Aiken A Theory of Type Qualifiers . . . . . . 192--203 Allen Leung and Lal George Static Single Assignment Form for Machine Code . . . . . . . . . . . . . . 204--214 Yonghong Song and Zhiyuan Li New Tiling Techniques to Improve Cache Temporal Locality . . . . . . . . . . . 215--228 Chen Ding and Ken Kennedy Improving Cache Performance in Dynamic Applications through Data and Computation Reorganization at Run Time 229--241 Christopher W. Fraser Automatic Inference of Models for Statistical Code Compression . . . . . . 242--246 William Pugh Compressing Java Class Files . . . . . . 247--258 James R. Larus Whole Program Paths . . . . . . . . . . 259--269 Christopher W. Fraser and Todd A. Proebsting Finite-State Code Generation . . . . . . 270--280 Renaud Marlet and Charles Consel and Philippe Boinot Efficient Incremental Run-Time Specialization for Free . . . . . . . . 281--292 Brian Grant and Matthai Philipose and Markus Mock and Susan J. Eggers and Craig Chambers An Evaluation of Run-time Optimizations 293--304 Brian Grant and Matthai Philipose and Markus Mock and Craig Chambers and Susan J. Eggers An evaluation of staged run-time optimizations in DyC . . . . . . . . . . 293--304 Jack Davidson and Monica Lam and David Moore and Mike Smith National Compiler Infrastructure Progress Report . . . . . . . . . . . . ?? Jim Rhyne and Steven Lucco and Edward Felten and Guy L. Steele, Jr. Industrial Panel: ``Trends in the Future of Industrial Computing'' . . . . . . . ??
Robert Kessler Executive Committee News: SIGPLAN Conferences and Workshops . . . . . . . 1--1 Seth Bergmann Conference Corner: Calendar . . . . . . 2--12 Anonymous Call for Papers: POPL '00: The 27th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages . . 13--13 Anonymous Call for Papers: APL99: On Track to the 21st Century: International Conference on Array Processing Languages . . . . . 14--14 Anonymous Call for Papers: ACM SIGPLAN Workshop on \em Dynamic and \em Adaptive Co\em mpilation and \em Optimization (Dynamo'00) . . . . . . . . . . . . . . 15--15 Annie Liu and Scott D. Stoller Conference Corner: Conference Report: ETAPS '99 . . . . . . . . . . . . . . . 16--17 Chris Clark Keywords: Scanners and Screeners . . . . 18--22 Chris Clark Practical Parsing Patterns: Keywords: Scanners and Screeners . . . . . . . . . 18--22 Rinus Plasmeijer and Marko van Eekelen Functional Programming: Keep it \sc Clean: A unique approach to functional programming . . . . . . . . . . . . . . 23--31 Rinus Plasmeijer and Marko van Eekelen Keep it clean: a unique approach to functional programming . . . . . . . . . 23--31 John Sadler Ficl, FORML, & Object Forth . . . . . . . 32--35 John Sadler Forth: Forth Report: Ficl, FORML, & Object Forth . . . . . . . . . . . . . . 32--35 Anonymous Technical Correspondence: Information for Authors . . . . . . . . . . . . . . 36--36 Emanuele Panizzi and Bernardo Pastorelli On the return types of virtual functions 37--42 Emanuele Panizzi and Bernardo Pastorelli Technical Correspondence: On the Return Types of Virtual Functions . . . . . . . 37--42 Michael Wolfe Partial Redundancy Elimination is not Bidirectional . . . . . . . . . . . . . 43--46 Uday P. Khedker and Dhananjay M. Dhamdhere Bidirectional Data Flow Analysis: Myths and Reality . . . . . . . . . . . . . . 47--57 Mayur Naik and Rajeev Kumar Object-Oriented Symbol Management in Syntax-Directed Compiler Systems . . . . 58--67 Marjan Mernik and Viljem \vZumer and Mitja Leni\vc and Enis Avdi\vcau\vsevi\'c Implementation of Multiple Attribute Grammar Inheritance in the tool LISA . . 68--75 Paul Wolfgang and Yang Song Integration of the Standard Template Library and the Microsoft Foundation Class . . . . . . . . . . . . . . . . . 76--81 Richard J. Botting On the Application of a Popular Notation to Semantics . . . . . . . . . . . . . . 82--83 Peter Kokol and Vili Podgorelec and Henri Habrias and Nassim Hadj Rabia The complexity of formal specifications --- assessments by $\alpha$-metric . . . 84--88 Anonymous Forth . . . . . . . . . . . . . . . . . ?? Anonymous Functional programming . . . . . . . . . ?? Anonymous Practical parsing patterns . . . . . . . ?? Anonymous Technical Correspondence . . . . . . . . ??
Keith D. Cooper and Philip J. Schielke and Devika Subramanian Optimizing for Reduced Code Space using Genetic Algorithms . . . . . . . . . . . 1--9 Gang-Ryung Uh and Yuhong Wang and David Whalley and Sanjay Jinturkar and Chris Burns and Vincent Cao Effective Exploitation of a Zero Overhead Loop Buffer . . . . . . . . . . 10--19 Erik Eckstein and Andreas Krall Minimizing Cost of Local Variables Access for DSP-Processors . . . . . . . 20--27 Eric Stotzer and Ernst Leiss Modulo Scheduling for the TMS320C6x VLIW DSP Architecture . . . . . . . . . . . . 28--34 Jörn Schneider and Christian Ferdinand Pipeline behavior prediction for superscalar processors by abstract interpretation . . . . . . . . . . . . . 35--44 Patrik Persson Live Memory Analysis for Garbage Collection in Embedded Systems . . . . . 45--54 Taehyoun Kim and Naehyuck Chang and Namyun Kim and Heonshik Shin Scheduling Garbage Collector for Embedded Real-Time Systems . . . . . . . 55--64 Tomoyoshi Sugawara and Kosuke Tatsukawa Table-Based QoS Control for Embedded Real-time Systems . . . . . . . . . . . 65--72 Sugawara Tomoyoshi and Tatsukawa Kosuke Table-based QoS control for embedded real-time systems . . . . . . . . . . . 65--72 Sungyoung Lee and Byeong-Soo Jeong and Hyon-Woo Seung A secure dynamic copy protocol in real-time secure database systems . . . 73--79 Soo-Yeon Park and Sungyoung Lee and Byung-Soo Jeong and Hyon Woo Seung A Secure Dynamic Copy Protocol in Real-Time Database Systems . . . . . . . 73--79 Minsoo Ryu and Jungkeun Park and Kimoon Kim and Yangmin Seo and Seongsoo Hong Performance Re-Engineering of Embedded Real-Time Systems . . . . . . . . . . . 80--86 D.-I. Kang and R. Gerber and L. Golubchik and J. K. Hollingsworth and M. Saksena A Software Synthesis Tool for Distributed Embedded System Design . . . 87--95 Jakob Engblom Why SpecInt95 Should Not Be Used to Benchmark Embedded Systems Tools . . . . 96--103 In Ryu Issues and Challenges in Developing Embedded Software for Information Appliances and Telecommunication Terminals . . . . . . . . . . . . . . . 104--120
Jaejin Lee and David A. Padua and Samuel P. Midkiff Basic compiler algorithms for parallel programs . . . . . . . . . . . . . . . . 1--12 Jens Knoop and Bernhard Steffen Code motion for explicitly parallel programs . . . . . . . . . . . . . . . . 13--24 Collin McCurdy and John Mellor-Crummey An evaluation of computing paradigms for $N$-body simulations on distributed memory architectures . . . . . . . . . . 25--36 Shih-Wei Liao and Amer Diwan and Robert P. Bosch, Jr. and Anwar Ghuloum and Monica S. Lam SUIF Explorer: an interactive and interprocedural parallelizer . . . . . . 37--48 Zhichen Xu and Barton P. Miller and Oscar Naim Dynamic instrumentation of threaded applications . . . . . . . . . . . . . . 49--59 Kenjiro Taura and Kunio Tabata and Akinori Yonezawa StackThreads/MP: integrating futures into calling standards . . . . . . . . . 60--71 Radu Rugina and Martin Rinard Automatic parallelization of divide and conquer algorithms . . . . . . . . . . . 72--83 Sungdo Moon and Mary W. Hall Evaluation of predicated array data-flow analysis for automatic parallelization 84--95 Alex Scherer and Honghui Lu and Thomas Gross and Willy Zwaenepoel Transparent adaptive parallelism on NOWs using OpenMP . . . . . . . . . . . . . . 96--106 Hong Tang and Kai Shen and Tao Yang Compile/run-time support for threaded MPI execution on multiprogrammed shared memory machines . . . . . . . . . . . . 107--118 Alan M. Mainwaring and David E. Culler Design challenges of virtual networks: fast, general-purpose communication . . 119--130 Thilo Kielmann and Rutger F. H. Hofman and Henri E. Bal and Aske Plaat and Raoul A. F. Bhoedjang MagPIe: MPI's collective communication operations for clustered wide area systems . . . . . . . . . . . . . . . . 131--140 David Sundaram-Stukel and Mary K. Vernon Predictive analysis of a wavefront application using LogGP . . . . . . . . 141--150 Rajive Bagrodia and Ewa Deeljman and Steven Docy and Thomas Phan Performance prediction of large parallel applications using parallel simulations 151--162 Jaspal Subhlok and Peter Lieu and Bruce Lowekamp Automatic node selection for high performance applications on networks . . 163--172 Jason Maassen and Rob van Nieuwpoort and Ronald Veldema and Henri E. Bal and Aske Plaat An efficient implementation of Java's remote method invocation . . . . . . . . 173--182 Umakishore Ramachandran and Rishiyur S. Nikhil and Nissim Harel and James M. Rehg and Kathleen Knobe Space-time memory: a parallel programming abstraction for interactive multimedia applications . . . . . . . . 183--192
John Longley When is a Functional Program Not a Functional Program? . . . . . . . . . . 1--7 Alex Aiken Modern languages for modern parallel computing (invited lecture, abstract only) . . . . . . . . . . . . . . . . . 8--8 Arvind You Can Design Microprocessors Too: Putting TRS's to Work (invited lecture, abstract only) . . . . . . . . . . . . . 8--8 Xavier Leroy Objects, classes and modules in Objective Caml (invited lecture, abstract only) . . . . . . . . . . . . . 8--8 Miley Semmelroth and Amr Sabry Monadic Encapsulation in ML . . . . . . 8--17 Steven E. Ganz and Daniel P. Friedman and Mitchell Wand Trampolined Style . . . . . . . . . . . 18--27 Chris Okasaki From Fast Exponentiation to Square Matrices: An Adventure in Types . . . . 28--35 Henrik Nilsson Tracing Piece by Piece: Affordable Debugging for Lazy Functional Languages 36--47 Olin Shivers and James W. Clark and Roland McGrath Atomic Heap Transactions and Fine-Grain Interrupts . . . . . . . . . . . . . . . 48--59 John Launchbury and Jeffrey R. Lewis and Byron Cook On Embedding a Microarchitectural Design Language Within Haskell . . . . . . . . 60--69 John Hughes and Lars Pareto Recursion and Dynamic Data-structures in Bounded Space: Towards Embedded ML Programming . . . . . . . . . . . . . . 70--81 Karl Crary A Simple Proof Technique for Certain Parametricity Results . . . . . . . . . 82--89 Assaf J. Kfoury and Harry G. Mairson and Franklyn A. Turbak and J. B. Wells Relating typability and expressiveness in finite-rank intersection type systems (extended abstract) . . . . . . . . . . 90--101 Zdzis\law Sp\lawski and Pawe\l Urzyczyn Type Fixpoints: Iteration vs. Recursion 102--113 Sigbjorn Finne and Daan Leijen and Erik Meijer and Simon Peyton Jones Calling Hell From Heaven and Heaven From Hell . . . . . . . . . . . . . . . . . . 114--125 Nick Benton and Andrew Kennedy Interlanguage Working Without Tears: Blending SML with Java . . . . . . . . . 126--137 Matthew Flatt and Robert Bruce Findler and Shriram Krishnamurthi and Matthias Felleisen Programming languages as operating systems (or revenge of the Son of the Lisp Machine) . . . . . . . . . . . . . 138--147 Malcolm Wallace and Colin Runciman Haskell and XML: Generic Combinators or Type-Based Translation? . . . . . . . . 148--159 Atsushi Ohori and Nobuaki Yoshida Type inference with rank $1$ polymorphism for type-directed compilation of ML . . . . . . . . . . . 160--171 Neal Glew Type Dispatch for Named Hierarchical Types . . . . . . . . . . . . . . . . . 172--182 Christopher League and Zhong Shao and Valery Trifonov Representing Java Classes in a Typed Intermediate Language . . . . . . . . . 183--196 Steve Zdancewic and Dan Grossman and Greg Morrisett Principals in Programming Languages: A Syntactic Proof Technique . . . . . . . 197--207 Martin Elsman Static Interpretation of Modules . . . . 208--219 Zhong Shao Transparent Modules with Fully Syntactic Signatures . . . . . . . . . . . . . . . 220--232 Karl Crary and Stephanie Weirich Flexible Type Analysis . . . . . . . . . 233--248 Olaf Chitil Type Inference Builds a Short Cut to Deforestation . . . . . . . . . . . . . 249--260 Frank Huch Verification of Erlang Programs using Abstract Interpretation and Model Checking . . . . . . . . . . . . . . . . 261--272 María Alpuente and Michael Hanus and Salvador Lucas and Germán Vidal Specialization of Inductively Sequential Functional Logic Programs . . . . . . . 273--283
Jong-Deok Choi and Manish Gupta and Mauricio Serrano and Vugranam C. Sreedhar and Sam Midkiff Escape analysis for Java . . . . . . . . 1--19 Bruno Blanchet Escape analysis for object-oriented languages: application to Java . . . . . 20--34 Jeff Bogda and Urs Hölzle Removing unnecessary synchronization in Java . . . . . . . . . . . . . . . . . . 35--46 Guilherme Travassos and Forrest Shull and Michael Fredericks and Victor R. Basili Detecting defects in object-oriented designs: using reading techniques to increase software quality . . . . . . . 47--56 Robert France A problem-oriented analysis of basic UML static requirements modeling concepts 57--69 Johan Ovlinger and Mitchell Wand A language for specifying recursive traversals of object structures . . . . 70--81 Jan Vitek and Boris Bokowski Confined types . . . . . . . . . . . . . 82--96 Dominic Duggan Modular type-based reverse engineering of parameterized types in Java code . . 97--113 Ole Lehrmann Madsen Semantic analysis of virtual classes and tested classes . . . . . . . . . . . . . 114--131 Atshushi Igarashi and Benjamin Pierce and Philip Wadler Featherweight Java: a minimal core calculus for Java and GJ . . . . . . . . 132--146 Stephen N. Freund and John C. Mitchell A formal framework for the Java bytecode language and verifier . . . . . . . . . 147--166 Ran Rinat and Menachem Magidor and Scott F. Smith Correspondence polymorphism for object-oriented languages . . . . . . . 167--186 John Whaley and Martin Rinard Compositional pointer and escape analysis for Java programs . . . . . . . 187--206 Ole Agesen and David Detlefs and Alex Garthwaite and Ross Knippel and Y. S. Ramakrishna and Derek White An efficient meta-lock for implementing ubiquitous synchronization . . . . . . . 207--222 Tamiya Onodera and Kiyokuni Kawachiya A study of locking objects with bimodal fields . . . . . . . . . . . . . . . . . 223--237 Craig Chambers and Weimin Chen Efficient multiple and predicated dispatching . . . . . . . . . . . . . . 238--255 Peter F. Sweeney and Joseph (Yossi) Gil Space and time-efficient memory layout for multiple inheritance . . . . . . . . 256--275 Brad Calder and Chandra Krintz and Urs Hölzle Reducing transfer delay using Java class file splitting and prefetching . . . . . 276--291 Frank Tip and Chris Laffra and Peter F. Sweeney and David Streeter Practical experience with an application extractor for Java . . . . . . . . . . . 292--305 Daniel Hagimont and L. Ismail A performance evaluation of the mobile agent paradigm . . . . . . . . . . . . . 306--313 Bowen Alpern and C. R. Attanasio and Anthony Cocchi and Derek Lieber and Stephen Smith and Ton Ngo and John J. Barton and Susan Flynn Hummel and Janice C. Sheperd and Mark Mergen Implementing Jalapeño in Java . . . . . . 314--324 Bowen Alpern and C. R. Attanasio and Anthony Cocchi and Derek Lieber and Stephen Smith and Ton Ngo and John J. Barton and Susan Flynn Hummel and Janice C. Sheperd and Mark Mergen Implementing jalapeño in Java . . . . . . 314--324 Siobhán Clarke and William Harrison and Harold Ossher and Peri Tarr Subject-oriented design: towards improved alignment of requirements, design, and code . . . . . . . . . . . . 325--339 Mik Kersten and Gail C. Murphy Atlas: a case study in building a Web-based learning environment using aspect-oriented programming . . . . . . 340--352 Elizabeth A. Kendall Role model designs and implementations with aspect-oriented programming . . . . 353--369 Darko Stefanovi\'c and Kathryn S. McKinley and J. Eliot B. Moss Age-based garbage collection . . . . . . 370--381 Antony L. Hosking and Jiawan Chen Mostly-copying reachability-based orthogonal persistence . . . . . . . . . 382--398 Jeremy G. Siek and Lie-Quan Lee and Andrew Lumsdaine The generic graph component library . . 399--414 Huw Evans and Peter Dickman Zones, contracts and absorbing changes: an approach to software evolution . . . 415--434 A. F. Zorzo and R. J. Stroud A distributed object-oriented framework for dependable multiparty interactions 435--446 Ilya Lipkind and Igor Pechtchanski and Vijay Karamcheti Object views: language support for intelligent object caching in parallel and distributed computations . . . . . . 447--460
Manuvir Das Static analysis of large programs (invited talk) (abstract only): some experiences . . . . . . . . . . . . . . 1--1 Mathias Braux and Jacques Noyé Towards partially evaluating reflection in Java . . . . . . . . . . . . . . . . 2--11 Eijiro Sumii and Naoki Kobayashi Online-and-offline partial evaluation (extended abstract): a mixed approach 12--21 Bernd Grobauer and Zhe Yang The second Futamura projection for type-directed partial evaluation . . . . 22--32 Frank Pfenning On the logical foundations of staged computation (invited talk) . . . . . . . 33--33 Walid Taha A sound reduction semantics for untyped CBN multi-stage computation. Or, the theory of MetaML is non-trivial (extended abstract) . . . . . . . . . . 34--43 John P. Gallagher and Julio C. Peralta Using regular approximations for generalisation during partial evalution 44--51 Giorgio Levi and Fausto Spoto Non pair-sharing and freeness analysis through linear refinement . . . . . . . 52--61 Wei-Ngan Chin and Siau-Cheng Khoo Calculating sized types . . . . . . . . 62--72 Yanhong A. Liu and Scott D. Stoller From recursion to iteration: what are the optimizations? . . . . . . . . . . . 73--82 Jonathan Walpole Operating systems specialization (invited talk) (abstract only): experiences, opportunities and challenges . . . . . . . . . . . . . . . 83--83 Naoki Kobayashi Type-based useless variable elimination 84--93 Brian R. Murphy and Monica S. Lam Program analysis with partial transfer functions . . . . . . . . . . . . . . . 94--103 Berhard Scholz and Johann Blieberger and Thomas Fahringer Symbolic pointer analysis for detecting memory leaks . . . . . . . . . . . . . . 104--113
Ron K. Cytron Activities: Letter from the Newly Elected Chair . . . . . . . . . . . . . 1--1 Peter Chalk Conference Corner: Java in the Computing Curricula . . . . . . . . . . . . . . . 9--11 Peter Chalk Java in the computing curricula . . . . 9--11 Michael Hind SIGAda '98: ACM/SIGAda international conference . . . . . . . . . . . . . . . 12--12 Michael Hind SIGAda '98: ACM/SIGAda International Conference (Report) . . . . . . . . . . 12--12 D. McClain BlurFit: an application of functional programming to scientific analysis . . . 13--17 D. McClain Functional Programming: BlurFit --- an Application of Functional Programming to Scientific Analysis . . . . . . . . . . 13--17 Chris Clark Keywords: special identifier idioms . . 18--23 Chris Clark Practical Parsing Patterns: Keywords: Special Identifier Idiom . . . . . . . . 18--23 Michael Metcalf Fortran 90/95/HPF . . . . . . . . . . . 24--29 Michael Metcalf Resources: Fortran Information File . . 24--29 Brad Eckert Forth: Firmware Factory & Forth . . . . . 30--33 Oleg Kiselyov and Richard J. Botting Technical Correspondence: Comment on ``On the Application of a Popular Notation to Semantics'' and reply from the Author . . . . . . . . . . . . . . . 35--36 Kurt Nòrmark Programming World Wide Web Pages in Scheme . . . . . . . . . . . . . . . . . 37--46 Guilan Dai and Baowen Xu An Ada-based Object-Oriented Modeling Language . . . . . . . . . . . . . . . . 47--56 Li Yingjun and Lu Jian SEIS++: A Pattern Language for Seismic Tools Construction and Integration . . . 57--66 Guilan Dai and Baowen Xu A comparison of real-time object-oriented modeling methods ROOM and OCTOPUS . . . . . . . . . . . . . . 67--71 Igor D. D. Curcio Correction to: Curcio, Igor D. D., ``ASAP --- A Simple Assertion Pre-Processor'', ACM Sigplan Notices 33(12), December 1998, pp. 44--51 . . . 72--72