Alex Aiken
Alcatel-Lucent Professor of Communications and Networking, Professor of Particle Physics and Astrophysics, and of Photon Science
Computer Science
Bio
Alex Aiken is the Alcatel-Lucent Professor of Computer Science at Stanford. Alex received his Bachelors degree in Computer Science and Music from Bowling Green State University in 1983 and his Ph.D. from Cornell University in 1988. Alex was a Research Staff Member at the IBM Almaden Research Center (1988-1993) and a Professor in the EECS department at UC Berkeley (1993-2003) before joining the Stanford faculty in 2003. His research interest is in areas related to programming languages.
Academic Appointments
-
Professor, Computer Science
-
Professor, Particle Physics and Astrophysics
-
Professor, Photon Science Directorate
-
Member, Bio-X
Honors & Awards
-
Programming Languages Achievement Award, ACM SIGPLAN
-
ACM Fellow, ACM
-
Phi Beta Kappa Teaching Award, Phi Beta Kappa
Program Affiliations
-
Stanford SystemX Alliance
Professional Education
-
PhD, Cornell (1988)
2024-25 Courses
- Mathematical Foundations of Computing
CS 103 (Spr) - Programming Languages
CS 242 (Aut) -
Independent Studies (14)
- Advanced Reading and Research
CS 499 (Aut, Win, Spr, Sum) - Advanced Reading and Research
CS 499P (Aut, Win, Spr, Sum) - Curricular Practical Training
CS 390A (Aut, Win, Spr, Sum) - Curricular Practical Training
CS 390B (Aut, Win, Spr, Sum) - Curricular Practical Training
CS 390C (Aut, Win, Spr, Sum) - Independent Project
CS 399 (Aut, Win, Spr, Sum) - Independent Project
CS 399P (Aut, Win, Spr, Sum) - Independent Work
CS 199 (Aut, Win, Spr, Sum) - Independent Work
CS 199P (Aut, Win, Spr, Sum) - Ph.D. Research
CME 400 (Aut, Win, Spr, Sum) - Programming Service Project
CS 192 (Aut, Win, Spr, Sum) - Senior Project
CS 191 (Aut, Win, Spr, Sum) - Supervised Undergraduate Research
CS 195 (Aut, Win, Spr, Sum) - Writing Intensive Senior Research Project
CS 191W (Aut, Win, Spr)
- Advanced Reading and Research
-
Prior Year Courses
2023-24 Courses
- Mathematical Foundations of Computing
CS 103 (Spr) - Programming Languages
CS 242 (Aut)
2022-23 Courses
- Mathematical Foundations of Computing
CS 103 (Spr) - Parallel Computing Research Project
CS 315B (Aut) - Programming Languages
CS 242 (Aut)
2021-22 Courses
- Mathematical Foundations of Computing
CS 103 (Spr) - Programming Languages
CS 242 (Aut)
- Mathematical Foundations of Computing
All Publications
-
Active Learning of Points-To Specifications
ASSOC COMPUTING MACHINERY. 2018: 678–92
View details for DOI 10.1145/3192366.3192383
View details for Web of Science ID 000452469600046
-
Dynamic Tracing: Memoization of Task Graphs for Dynamic Task-Based Runtimes
ASSOC COMPUTING MACHINERY. 2018
View details for Web of Science ID 000494258800034
-
Correctness of Dynamic Dependence Analysis for Implicitly Parallel Tasking Systems
IEEE. 2018: 17–24
View details for DOI 10.1109/Correctness.2018.00007
View details for Web of Science ID 000461030500003
-
A Distributed Multi-GPU System for Fast Graph Processing
PROCEEDINGS OF THE VLDB ENDOWMENT
2017; 11 (3): 297–310
View details for DOI 10.14778/3157794.3157799
View details for Web of Science ID 000429425700005
-
Synthesizing Program Input Grammars
ASSOC COMPUTING MACHINERY. 2017: 95–110
View details for DOI 10.1145/3062341.3062349
View details for Web of Science ID 000414334200007
-
Sound Loop Superoptimization for Google Native Client
ACM SIGPLAN NOTICES
2017; 52 (4): 313-326
View details for DOI 10.1145/3093336.3037754
View details for Web of Science ID 000401540000023
-
Integrating External Resources with a Task-Based Programming Model
IEEE. 2017: 307–16
View details for DOI 10.1109/HiPC.2017.00043
View details for Web of Science ID 000426994700034
-
Dependent Partitioning
ACM SIGPLAN NOTICES
2016; 51 (10): 344-358
View details for DOI 10.1145/2983990.2984016
View details for Web of Science ID 000393581000020
-
Verifying Bit-Manipulations of Floating-Point
ACM SIGPLAN NOTICES
2016; 51 (6): 70-84
View details for DOI 10.1145/2908080.2908107
View details for Web of Science ID 000381501000006
-
Stratified Synthesis: Automatically Learning the x86-64 Instruction Set
ACM SIGPLAN NOTICES
2016; 51 (6): 237-250
View details for DOI 10.1145/2908080.2908121
View details for Web of Science ID 000381501000017
-
From invariant checking to invariant inference using randomized search
FORMAL METHODS IN SYSTEM DESIGN
2016; 48 (3): 235-256
View details for DOI 10.1007/s10703-016-0248-5
View details for Web of Science ID 000382702200004
-
Stochastic Program Optimization
COMMUNICATIONS OF THE ACM
2016; 59 (2): 114-122
View details for DOI 10.1145/2863701
View details for Web of Science ID 000368828200029
-
Interactively Verifying Absence of Explicit Information Flows in Android Apps
ACM SIGPLAN NOTICES
2015; 50 (10): 299-315
View details for DOI 10.1145/2814270.2814274
View details for Web of Science ID 000367256500017
-
Conditionally Correct Superoptimization
ACM SIGPLAN NOTICES
2015; 50 (10): 147-162
View details for DOI 10.1145/2814270.2814278
View details for Web of Science ID 000367256500009
-
Verification of Producer-Consumer Synchronization in GPU Programs
ACM SIGPLAN NOTICES
2015; 50 (6): 88-98
View details for DOI 10.1145/2737924.2737962
View details for Web of Science ID 000361284200009
-
Composing Concurrency Control
ACM SIGPLAN NOTICES
2015; 50 (6): 240-249
View details for DOI 10.1145/2737924.2737970
View details for Web of Science ID 000361284200023
-
Specification Inference Using Context-Free Language Reachability
ACM SIGPLAN NOTICES
2015; 50 (1): 553-566
View details for DOI 10.1145/2676726.2676977
View details for Web of Science ID 000354800500045
-
M-3: High-Performance Memory Management from Off-the-Shelf Components
ACM SIGPLAN NOTICES
2014; 49 (11): 3-13
View details for DOI 10.1145/2602988.2602995
View details for Web of Science ID 000358310800001
-
Singe: Leveraging Warp Specialization for High Performance on GPUs
ACM SIGPLAN NOTICES
2014; 49 (8): 119-130
View details for DOI 10.1145/2555243.2555258
View details for Web of Science ID 000349142100011
-
First-class Runtime Generation of High-performance Types using Exotypes
35th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
ASSOC COMPUTING MACHINERY. 2014: 77–88
View details for DOI 10.1145/2594291.2594307
View details for Web of Science ID 000344455800011
-
Stochastic Optimization of Floating-Point Programs with Tunable Precision
35th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
ASSOC COMPUTING MACHINERY. 2014: 53–64
View details for DOI 10.1145/2594291.2594302
View details for Web of Science ID 000344455800009
-
Bias-Variance Tradeoffs in Program Analysis
41st Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL)
ASSOC COMPUTING MACHINERY. 2014: 127–37
View details for DOI 10.1145/2535838.2535853
View details for Web of Science ID 000331120500012
-
Data-Driven Equivalence Checking
ACM SIGPLAN NOTICES
2013; 48 (10): 391-406
View details for DOI 10.1145/2509136.2509509
View details for Web of Science ID 000327697300022
-
Language Support for Dynamic, Hierarchical Data Partitioning
ACM SIGPLAN NOTICES
2013; 48 (10): 495-514
View details for DOI 10.1145/2509136.2509545
View details for Web of Science ID 000327697300028
-
Terra: A Multi-Stage Language for High-Performance Computing
34th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
ASSOC COMPUTING MACHINERY. 2013: 105–15
View details for Web of Science ID 000321865400011
-
Stochastic Superoptimization
ACM SIGPLAN NOTICES
2013; 48 (4): 305-315
View details for Web of Science ID 000321213100025
- Data-Driven Equivalence Checking. 2013
-
Verification as Learning Geometric Concepts
20th International Static Analysis Symposium (SAS)
SPRINGER-VERLAG BERLIN. 2013: 388–411
View details for Web of Science ID 000342808500021
-
A Data Driven Approach for Algebraic Loop Invariants
22nd European Symposium on Programming (ESOP)
SPRINGER-VERLAG BERLIN. 2013: 574–592
View details for Web of Science ID 000342810200031
- Crowd-scale Interactive Formal Reasoning and Analytics. 2013
- A Data Driven Approach for Algebraic Loop Invariants 2013
- Verification as Learning Geometric Concepts. 2013
- Language Support for Dynamic, Hierarchical Data Partitioning. 2013
-
An Introduction to Data Representation Synthesis
COMMUNICATIONS OF THE ACM
2012; 55 (12): 91-99
View details for DOI 10.1145/2380656.2380677
View details for Web of Science ID 000312744900026
-
Understanding the Behavior of Database Operations under Program Control
ACM SIGPLAN NOTICES
2012; 47 (10): 983-995
View details for DOI 10.1145/2398857.2384688
View details for Web of Science ID 000311296200057
-
Automated Error Diagnosis Using Abductive Inference
ACM SIGPLAN NOTICES
2012; 47 (6): 181-191
View details for DOI 10.1145/2345156.2254087
View details for Web of Science ID 000307582100017
-
Concurrent Data Representation Synthesis
ACM SIGPLAN NOTICES
2012; 47 (6): 417-427
View details for DOI 10.1145/2345156.2254114
View details for Web of Science ID 000307582100037
-
Legion: Expressing Locality and Independence with Logical Regions
International Conference for High Performance Computing, Networking, Storage and Analysis (SC)
IEEE. 2012
View details for Web of Science ID 000316911000064
- Minimum Satisfying Assignments for SMT. 2012
- Interpolants as Classifiers. 2012
- An Introduction to Data Representation Synthesis. Communications of the ACM 2012; 12 (55): 91-99
- Automated Error Diagnosis Using Abductive Inference 2012
-
Reasoning about Lock Placements
21st European Symposium on Programming (ESOP) held as Part of the 15th European Joint Conferences on Theory and Practice of Software (ETAPS)
SPRINGER-VERLAG BERLIN. 2012: 336–356
View details for Web of Science ID 000310871200017
-
Cuts from proofs: a complete and practical technique for solving linear inequalities over integers
FORMAL METHODS IN SYSTEM DESIGN
2011; 39 (3): 246-260
View details for DOI 10.1007/s10703-011-0127-z
View details for Web of Science ID 000297596900002
-
Testing Atomicity of Composed Concurrent Operations
ACM SIGPLAN NOTICES
2011; 46 (10): 51-64
View details for DOI 10.1145/2076021.2048073
View details for Web of Science ID 000298294500005
-
Automatic Fine-Grain Locking using Shape Properties
ACM SIGPLAN NOTICES
2011; 46 (10): 225-241
View details for DOI 10.1145/2076021.2048086
View details for Web of Science ID 000298294500015
-
Programming the Memory Hierarchy Revisited: Supporting Irregular Parallelism in Sequoia
ACM SIGPLAN NOTICES
2011; 46 (8): 13-23
View details for Web of Science ID 000296264900003
-
Data Representation Synthesis
ACM SIGPLAN NOTICES
2011; 46 (6): 38-49
View details for DOI 10.1145/1993316.1993504
View details for Web of Science ID 000294609500004
-
Precise and Compact Modular Procedure Summaries for Heap Manipulating Programs
ACM SIGPLAN NOTICES
2011; 46 (6): 567-577
View details for DOI 10.1145/1993316.1993565
View details for Web of Science ID 000294609500049
-
Precise Reasoning for Programs Using Containers
ACM SIGPLAN NOTICES
2011; 46 (1): 187-200
View details for DOI 10.1145/1925844.1926407
View details for Web of Science ID 000286472700016
- Simplifying Loop Invariant Generation Using Splitter Predicates. 2011
- Liszt: A Domain Specific Language for Building Portable Mesh-based PDE Solvers. 2011
- Inferring Data Polymorphism in Systems Code. 2011
- Advice for Program Chairs. ACM Sigplan Notices 2011; 4 (46): 19-25
-
Online Detection of Multi-Component Interactions in Production Systems
IEEE/IFIP 41st International Conference on Dependable Systems and Networks (DSN)
IEEE. 2011: 49–60
View details for Web of Science ID 000295616400005
-
Symbolic Heap Abstraction with Demand-Driven Axiomatization of Memory Invariants
Conference on Object Oriented Programming Systems, Languages and Applications/SPLASH 2010
ASSOC COMPUTING MACHINERY. 2010: 397–410
View details for DOI 10.1145/1932682.1869493
View details for Web of Science ID 000286595800025
-
Reasoning About the Unknown in Static Analysis
COMMUNICATIONS OF THE ACM
2010; 53 (8): 115-123
View details for DOI 10.1145/1787234.1787259
View details for Web of Science ID 000280545500030
-
Expanding the Frontiers of Computer Science: Designing a Curriculum to Reflect a Diverse Field
41st ACM Technical Symposium on Computer Science Education
ASSOC COMPUTING MACHINERY. 2010: 47–51
View details for Web of Science ID 000281141300010
- A Query Language for Understanding Component Interactions in Production Systems. 2010
-
Data Structure Fusion
8th Asian Symposium on Programming Languages and Systems
SPRINGER-VERLAG BERLIN. 2010: 204–221
View details for Web of Science ID 000290881800015
-
Fluid Updates: Beyond Strong vs. Weak Updates
19th European Symposium on Programming (ESOP 2010) held at the ETAPES 2010
SPRINGER-VERLAG BERLIN. 2010: 246–266
View details for Web of Science ID 000279369000013
-
Small Formulas for Large Programs: On-Line Constraint Simplification in Scalable Static Analysis
17th International Static Analysis Symposium
SPRINGER. 2010: 236–252
View details for Web of Science ID 000286149800015
-
Community Epidemic Detection Using Time-Correlated Anomalies
13th International Symposium on Recent Advances in Intrusion Detection Systems
SPRINGER-VERLAG BERLIN. 2010: 360–381
View details for Web of Science ID 000286486100019
-
Using Correlated Surprise to Infer Shared Influence
IEEE/IFIP International Conference on Dependable Systems and Networks (DSN)
IEEE. 2010: 191–200
View details for Web of Science ID 000287078300020
-
Cuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers
21st International Conference on Computer Aided Verification
SPRINGER-VERLAG BERLIN. 2009: 233–247
View details for Web of Science ID 000270444900016
-
A capability calculus for concurrency and determinism
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
2008; 30 (5)
View details for DOI 10.1145/1387673.1387676
View details for Web of Science ID 000259445600003
-
Sound, complete and scalable path-sensitive analysis
ACM SIGPLAN NOTICES
2008; 43 (6): 270-280
View details for Web of Science ID 000257820400025
-
Witnessing side effects
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
2008; 30 (3)
View details for DOI 10.1145/1353445.1353449
View details for Web of Science ID 000256425100004
-
Sound, Complete and Scalable Path-Sensitive Analysis
ACM SIGPLAN Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2008: 270–280
View details for Web of Science ID 000266617300025
- Binary Translation Using Peephole Superoptimizers. 2008
- A Capability Calculus for Concurrency and Determinism (extended version). Transactions on Programming Languages and Systems 2008; 5 (30): 1-30
-
Alert Detection in System Logs
8th IEEE International Conference on Data Mining
IEEE COMPUTER SOC. 2008: 959–964
View details for DOI 10.1109/ICDM.2008.132
View details for Web of Science ID 000264173600114
-
A Tuning Framework for Software-Managed Memory Hierarchies
17th International Conference on Parallel Architectures and Compilation Techniques
ASSOC COMPUTING MACHINERY. 2008: 280–291
View details for Web of Science ID 000267053400028
-
Verifying the safety of user pointer dereferences
IEEE Symposium on Security and Privacy
IEEE COMPUTER SOC. 2008: 325–338
View details for DOI 10.1109/SP.2008.15
View details for Web of Science ID 000256560300022
-
A Portable Runtime Interface For Multi-Level Memory Hierarchies
ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 08)
ASSOC COMPUTING MACHINERY. 2008: 143–152
View details for Web of Science ID 000266619600015
-
Static error detection using semantic inconsistency inference
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2007: 435–45
View details for Web of Science ID 000253409000043
-
Regularly annotated set constraints
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2007: 331–41
View details for Web of Science ID 000253409000033
-
Conditional Must Not Aliasing for Static Race Detection
34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
ASSOC COMPUTING MACHINERY. 2007: 327–338
View details for Web of Science ID 000267364200035
-
Conditional must not aliasing for static race detection
34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
ASSOC COMPUTING MACHINERY. 2007: 327–38
View details for Web of Science ID 000253407700035
-
Static Error Detection using Semantic Inconsistency Inference
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2007: 435–445
View details for Web of Science ID 000266485500041
- Measuring Empirical Computational Complexity. 2007
- Compilation for Explicitly Managed Memory Hierarchies. 2007
- Saturn: A Scalable Framework for Error Detection using Boolean Satisfiability. Transactions on Programming Languages and Systems 2007; 3 (29): 1-16
-
Compilation for Explicitly Managed Memory Hierarchies
ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
ASSOC COMPUTING MACHINERY. 2007: 226–236
View details for Web of Science ID 000266870900035
-
An Overview of the Saturn Project
7th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE 2007)
ASSOC COMPUTING MACHINERY. 2007: 43–48
View details for Web of Science ID 000266011900008
-
SATURN: A scalable framework for error detection using Boolean satisfiability
5th Joint Meeting of the European Software Engineering Conference/ACM SIGSOFT Symposium on Software Engineering
ASSOC COMPUTING MACHINERY. 2007
View details for DOI 10.1145/1232420.1232423
View details for Web of Science ID 000247072100003
-
Regularly Annotated Set Constraints
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2007: 331–341
View details for Web of Science ID 000266485500031
-
Automatic generation of peephole superoptimizers
ACM SIGPLAN NOTICES
2006; 41 (11): 394-403
View details for Web of Science ID 000202972600037
-
Flow-insensitive type qualifiers
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
2006; 28 (6): 1035-1087
View details for Web of Science ID 000242991500003
-
Effective static race detection for Java
ACM SIGPLAN NOTICES
2006; 41 (6): 308-319
View details for Web of Science ID 000202972100027
-
A capability calculus for concurrency and determinism
17th International Conference on Concurrency Theory
SPRINGER-VERLAG BERLIN. 2006: 218–232
View details for Web of Science ID 000240256100015
-
On typability for rank-2 intersection types with polymorphic recursion
21ST ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS
2006: 111-?
View details for Web of Science ID 000240899100012
- Static Detection of Security Vulnerabilities in Scripting Languages. 2006
- Sequoia: Programming the Memory Hierarchy. 2006
- Statistical Debugging: Simultaneous Identification of Multiple Bugs 2006
- On Typability for Rank-2 Intersection Types with Polymorphic Recursion. 2006
- How is Aliasing Used in Systems Software? 2006
-
Scalable program analysis using Boolean satisfiability
4th ACM/IEEE International Conference on Formal Methods and Models for Co-Design
IEEE. 2006: 89–89
View details for Web of Science ID 000240106600011
-
Static detection of security vulnerabilities in scripting languages
15th USENIX Security Symposium
USENIX ASSOC. 2006: 179–192
View details for Web of Science ID 000245599800013
-
Relational queries over program traces
20th Conference on Object-Oriented Programming, Systems, Languages and Applications
ASSOC COMPUTING MACHINERY. 2005: 385–402
View details for Web of Science ID 000233404900025
-
Witnessing side-effects
10th ACM SIGPLAN International Conference on Functional Programming (ICFP)
ASSOC COMPUTING MACHINERY. 2005: 105–15
View details for Web of Science ID 000232089200011
-
Scalable statistical bug isolation
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2005: 15–26
View details for Web of Science ID 000230634200003
-
Scalable error detection using boolean satisfiability
32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
ASSOC COMPUTING MACHINERY. 2005: 351–63
View details for Web of Science ID 000228342100030
- Context- and Path-Sensitive Memory Leak Detection. 2005
- Soundness and its Role in Bug Detection Systems (position paper). 2005
-
Banshee: A scalable constraint-based analysis toolkit
12th International Static Analysis Symposium (SAS 2005)
SPRINGER-VERLAG BERLIN. 2005: 218–234
View details for Web of Science ID 000232292300016
-
Secure information flow as a safety problem
12th International Static Analysis Symposium (SAS 2005)
SPRINGER-VERLAG BERLIN. 2005: 352–367
View details for Web of Science ID 000232292300024
-
Saturn: A SAT-based tool for bug detection
17th International Conference on Computer Aided Verification
SPRINGER-VERLAG BERLIN. 2005: 139–143
View details for Web of Science ID 000230755800013
-
The set constraint/CFL reachability connection in practice
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2004: 207–18
View details for Web of Science ID 000223120900019
- Public Deployment of Cooperative Bug Isolation. 2004
- Statistical Debugging of Sampled Programs. 2004
- Type Systems for Distributed Data Sharing. 2003
- Bug Isolation via Remote Program Sampling. 2003
- Sampling User Executions for Bug Isolation. 2003
- Checking and Inferring Local Non-Aliasing 2003
- Winnowing: Local Algorithms for Document Fingerprinting. 2003
- Flow-Sensitive Type Qualifiers. 2002
- First-Order Theory of Subtyping Constraints 2002
- Entailment with Conditional Equality Constraints, 2001
- Language Support for Regions. 2001
- A First Step Towards Automated Detection of Buffer Overrun Vulnerabilities. 2000
- Polymorphic versus Monomorphic Flow-Insensitive Points-to Analysis for C. 2000
- Projection Merging: Reducing Redundancies in Inclusion Constraint Graphs. 2000
- Type Systems for Distributed Data Structures. 2000
- Optimal Representations of Polymorphic Types with Subtyping. Higher-Order and Symbolic Computation 1999; 3 (12)
- Introduction to Set Constraint-Based Program Analysis. Science of Computer Programming 1999; 1999 (35): 79-111
- A Theory of Type Qualifiers. 1999
- A Toolkit for Constructing Type- and Constraint-Based Program Analyses (invited paper). 1998
- Barrier Inference. 1998
- Partial Online Cycle Elimination in Inclusion Constraint Graphs. 1998
- Detecting Races in Relay Ladder Logic Programs. 1998
- Titanium: A High-Performance Java Dialect. 1998
- Memory Management with Explicit Regions. 1998
- Attack Resistant Trust Metrics for Public Key Certification. 1998
- Program Analysis Using Mixed Term and Set Constraints. 1997
- Optimal Representations of Polymorphic Types with Subtyping (Extended Abstract). 1997
- Refined Type Inference for ML. 1997
- Making Set-Constraint Program Analyses Scale. 1996
- Cool: A Portable Project for Teaching Compiler Construction. CM Sigplan Notices 1996; 7 (31): 19-26
- Tioga-2: A Direct Manipulation Database Visualization Environment. 1996
-
STATIC ANALYSIS TECHNIQUES FOR PREDICTING THE BEHAVIOR OF ACTIVE DATABASE RULES
ACM TRANSACTIONS ON DATABASE SYSTEMS
1995; 20 (1): 3-41
View details for Web of Science ID A1995RJ62400002
- Decidability of Systems of Set Constraints with Negative Constraints. Information and Computation 1995; 1 (122): 30-44
- Navigation and Coordination Primitives for Multidimensional Browsers. edited by Woodruff, A., Su, A., Stonebraker, M. 1995
- Dynamic Typing vs. Subtype Inference. 1995
- Resource-Constrained Software Pipelining, IEEE Transactions on Distributed and Parallel Systems 1995; 12 (6): 1248-1270
- The Tioga-2 Database Visualization Environment. 1995
- Better Static Memory Management: Improvements to Region-Based Analysis of Higher-Order Languages. 1995
- Safe-A Semantic Technique for Transforming Programs in the Presence of Errors. ACM Transactions on Programming Languages and Systems 1995; 1 (17): 63-84
- Soft Typing with Conditional Types. 1994
- Zooming and Tunneling in Tioga: Supporting Navigation in Multidimensional Space. 1994
- Using the Run-Time Sizes of Data Structures to Guide Parallel Thread Creation. 1994
- Set Constraints: Results, Applications, and Future Directions. 1994
- Directional Type Checking of Logic Programs. 1994
- Type Inclusion Constraints and Type Inference. 1993
- The Complexity of Set Constraints. 1993
- Solving Systems of Set Constraints. 1992
- Behavior of Database Production Rules: Termination, Confluence, and Observable Determinism. 1992
-
IMPLEMENTING REGULAR TREE EXPRESSIONS
LECTURE NOTES IN COMPUTER SCIENCE
1991; 523: 427-447
View details for Web of Science ID A1991GJ20300022
- A Realistic Resource-Constrained Software Pipelining Algorithm Advances in Languages and Compilers for Parallel Processing edited by Aiken, A., Nicolau, A., Gelernter et al., D. MIT Press, Cambridge, Massachusetts. 1991: 274–290
- Static Type Inference in a Dynamically Typed Language. 1991
- A Theory of Compaction-Based Parallelization. Theoretical Computer Science 1990; 2 (73): 121-154
- Fine-Grain Parallelization and the Wavefront Method Languages and Compilers for Parallel Computing edited by Aiken, A., Nicolau, A., Gelernter et al., D. MIT Press, Cambridge, Massachusetts. 1990: 1–16
- Program Transformation in the Presence of Errors. 1990
- Fine-Grain Compilation for Pipelined Machines Journal of Supercomputing 1988; 3 (2): 279-295
- Optimal Loop Parallelization. 1988
- A Development Environment for Horizontal Microcode (revised). IEEE Transactions on Software Engineering 1988; 5 (14): 584-594
- Perfect Pipelining: A New Loop Parallelization Technique. 1988
- A Development Environment for Horizontal Microcode. 1986
- A Direct Manipulation Environment for Programming Semantic Zoom Visualizations of Tabular Data. Journal of Visual Languages and Computing ; 5 (12): 551-571
- Detecting Races in Relay Ladder Logic Programs. Software Tools for Technology Transfer ; 2000 (3): 93-105