William
R. CookAssistant Professor, Department of Computer Sciences, UT Austin
Quick Links: email blog Twitter Office: ACES 5.244
Google Calendar
OOPSLA is now part of SPLASH to be held in Reno/Tahoe in October 2010.
Got to OOPSLA and Onward!
Programming Languages Reading Group
Honors Undergraduate Programming Languages (CS345H), Fall 2009.
Graduate Programming Languages (CS386L), Fall 2009
Programming languages, modeling languages, domain-specific languages, strategic programming, interfacing programming languages and databases, distributed computing and web services, software engineering, type theory, mixins, object-oriented programming, web-based information systems.
Full list of publications
Member of IFIP Working Group on Program Generation (WG 2.11)
Projects
Batches for distributed computing More information and system download
DB+PL: Databases and Programming Languages
Orc: Wide-Area Computing
EffectiveAdvice: Disciplined Advice with Explicit Effects
Bruno C. d. S. Oliveira, Tom Schrijvers and William R. Cook
To appear in ACM SIG Proceedings of the 9th International Conference on Aspect-Oriented Software Development (AOSD). March 2010.
Remote Batch Invocation for Web Services: Document-Oriented Web Services with Object-Oriented Interfaces
Ali Ibrahim, Yang Jiao, Marc Fisher II, William R. Cook, Eli Tilevich
European Conference on Web Services (ECOWS) 2009
Synthesis of Fast Programs for Maximum Segment Sum Problems
Srinivas Nedunuri and William R. Cook
Generative Programming and Component Engineering (GPCE) 2009
(Slides presented in Denver)
Implementing Reflective Access Control in SQL
Lars E. Olson, Carl A. Gunter, William R. Cook, and Marianne Winslett
IFIP WG 11.3 Working Conference on Data and Applications Security (DBSec) 2009.
Gel: A Generic Extensible Language
Jose Falcon, William R. Cook
IFIP Working Conference on Domain Specific Languages (DSL WC)
Gel on Google Code
Interprocedural Query Extraction for Transparent Persistence
Ben Wiedermann, Ali Ibrahim & William R. Cook
OOPSLA 2008.
Extracting Queries by Static Analysis of Transparent Persistence
Benjamin A. Wiedermann & William R. Cook
Proc. of the Symposium on Principles of Programming Languages (POPL) 2007.
(Slides from talk)
Automatic Prefetching by Traversal Profiling in Object Persistence Architectures (2up for printing) (Springer)
Ali Ibrahim & William R. Cook
Proc. of the European Conference on Object-Oriented Programming (ECOOP), 2006
July 3-7, Nantes, France
(Slides from talk)
Safe Query Objects: Statically Typed Objects as Remotely Executable Queries
William R. Cook and Siddhartha Rai
Proc. of the International Conference on Software Engineering (ICSE), 2005, pp. 97-106.
(Slides from talk)
Native Queries for Persistent Objects, A Design White Paper
William R. Cook, Carl Rosenberger
Dr. Dobb's Journal (DDJ), February 2006
Programming Languages & Databases: What’s the Problem?
William R. Cook and Ali H. Ibrahim
The University of Texas at Austin, Department of Computer Sciences. Technical Report TR-07-10. February 20, 2007. 18 pages.
The Orc Programming Language
David Kitchin, Adrian Quark, William Cook, Jayadev Misra
IFIP international conference on Formal Techniques for Distributed Systems (FMOODS/FORTE), 2009.
A Timed Semantics of Orc
Ian Wehrman, David Kitchin, William R. Cook. Jayadev Misra
Theoretical Computer Science 402(2-3), pp. 234-248, August 2008.
Structured Interacting Computations (A position paper)
William R. Cook and Jayadev Misra
Proceedings of "Software-Intensive Systems", Springer Verlag, LNCS 5380, pp139--145, 2008.
Properties of the Timed Operational and Denotational Semantics of Orc
Ian Wehrman, David Kitchin, William R. Cook. Jayadev Misra
Technical Report TR-07-65, University of Texas at Austin, Department of Computer Sciences, 2007
Orc-X: Combining Orchestrations and XQuery
Kristi Morton, David Kitchin, William R. Cook
The University of Texas at Austin, Department of Computer Sciences, December 2007, Report# TR-07-63.
Event Structure Semantics of Orc
4th International Workshop on Web Services and Formal Methods (WS-FM 2007)
Sidney Rosario, David Kitchin, Albert Benveniste, William R. Cook, Stefan Haar, and Claude Jard
Irisa and UT Austin
Language for Task Orchestration and its Semantic Properties (2up for printing)
David Kitchin, William R. Cook and Jayadev Misra
Proc. of the International Conference on Concurrency Theory (CONCUR), 2006.
August 27-30, Bonn, Germany.
Extended version: UTCS Technical Rerport TR-06-32
Computation Orchestration: A Basis for Wide-Area Computing (bib) (DOI)
Jayadev Misra and William R. Cook
Journal of Software and Systems Modeling, May 2006.
Workflow Patterns in Orc (2up for printing)
William R. Cook, Sourabh Patwardhan, and Jayadev Misra
Proc. of the International Conference on Coordination Models and Languages (COORDINATION), 2006.
(slides from talk)
Remote Batch Invocation for Compositional Object Services
Ali Ibrahim, Yang Jiao, Eli Tilevich, William R. Cook
(Updated Slides)
Explicit Batching for Distributed Objects
Eli Tilevich, William R. Cook, Yang Jiao
Int’l Conference on Distributed Computing Systems (ICDCS 2009).
Web Services versus Distributed Objects: A Case Study of Performance and Interface Design
William R. Cook, Janel Barfield
Proc. of the IEEE International Conference on Web Services ( ICWS) 2006.
September 18-22, Chicago, USA
(slides from talk)
Fitting the Pieces Together: A Machine-Checked Model of Safe Composition
Benjamin Delaware, Don Batory, William R. Cook
Joint European Software Engineering Conference and Foundations of Software Engineering (ESEC/FSE), 2009. Preliminary version presented at Foundations of Aspect-Oriented Languages (FOAL), 2009.
On Understanding Data Abstraction, Revisited (DRAFT)
William R. Cook
Onward! Essay, 2009.
(Slides presented in Orlando)
Function Inheritance: Monadic Memoization Mixins
Daniel Brown and William R. Cook
Brazilian Symposium on Programming Languages (SBLP), 2009.
Also University of Texas at Austin, Department of Computer Sciences. Technical Report TR-07-11. February 20, 2007. 11 pages.
(Slides presented in Gramado)
Safe Composition of Product Lines
Sahil Thaker, Don Batory, David Kitchin, and William R. Cook
International Conference on Generative Programming and Component Engineering (GPCE), 2007.
AppleScript
William R. Cook
The Third Conference on History of Programming Languages (HOPL III), 2007.
Soundness of the Simply Typed Lambda Calculus in ACL2
Sol Swords and William R. Cook
ACL2 Workshop, 2006
A Virtual Class Calculus
Erik Ernst, Klaus Ostermann and William R. Cook
Proc. of the ACM Conf. on Principles of Programming Languages (POPL), 2006, pp 270-282.
Evaluating Support for Features in Advanced Modularization Technologies
Roberto E. Lopez-Herrejon, Don Batory, and William R. Cook
Proc. of the European Conference on Object-Oriented Programming (ECOOP), 2005 SpringerLink
Model Transformation by Partial Evaluation of Model Interpreters
William R. Cook, Benjamin Delaware, Thomas Finsterbusch, Ali Ibrahim, Ben Wiedermann
Technical Report TR-09-09, UT Austin Department of Computer Sciences
Generic Operations and Partial Evaluation using Models
Benjamin Delaware, William R. Cook
Tactical Synthesis of Efficient Global Search Algorithms
Srinivas Nedunuri, Douglas R. Smith and William R. Cook
First NASA Formal Methods Symposium (NFM), 2009.
Handling Uncertainty in Job-Shop Scheduling
Srinivas Nedunuri, Douglas Smith and William R. Cook
1st International Workshop on Living with Uncertainties (IWLU) 2007.
Policy-Based Authorization
William R. Cook
(unpublished manuscript)
Talks
Teaching
Conference organization
EditorialProgram committees
AwardsCAREER: Integrating Programming Languages and Databases NSF CCF-0448128March 2005 Architectural Metaprogramming, with Don Batory NSF CCF-0724979 October 2007 Structured Wide-area Programming, with Jayadev Misra NSF CCF-6752487 June 2008 This material is based upon work supported by the National Science Foundation under Grant No. 0448128. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation. |
|
Sidney Rosario
Ali Ibrahim: Safe query objects & dynamic prefetching optimization
Ben Wiedermann: Extracting relational queries via control/data flow analysis
Srinivas Nedunuri: Synthesis for model-based software development
Ben Delaware: Feature-Oriented Programming
John Thywissen
Scott Kirkpatrick
with Javadev Misra
David Kitchin: Computation orchestration, agents, workflow semantics
Amin Shali
Doctoral committees and other students
Byeongcheol Lee
Advised by Katherine McKinley
Sol Swords
Supervised by J Moore
Benjamin Hardekopf
Supervised by Calvin Lin
Hanbing Liu: Formal Specification and Verification of a JVM and its bytecode verifier
Supervised by J Moore
Mark Grechanik: Design, Analysis, and Verification of Large-Scale Polylingual Systems
Supervised by Don Batory and Dewayne E. Perry
Roberto E. Lopez-Herrejon: Understanding Feature Modularity
Supervised by Don Batory
Rui Mao: A Metric-Space Database Storage Manager and Its Applications in Bioinformatics
Supervised by Daniel Miranker
David Federman: Optimizing Object-Oriented CSS
Jose Falcon: Generic Expression Language
Colin Wragg : Deriving ASTs from Grammars
Shaon Barman: Deriving ASTs from Grammars
Janel Barfield: Interface Design and Performance of Web Services
Daniel Brown: Exploring Universe Polymorphism in Omega
Christina Wang: Software Development Studio course design
William Cook has experience in both pure research and industrial software development. His early research focused on the semantics of inheritance in object-oriented languages, formalization of mixins, and polymorphic type systems for object languages. He is currently working on interfacing programming languages and databases, distributed computing and web services, type theory and data abstraction. Products he was instrumental in creating include AppleScript at Apple Computer, the Writer's Solution for Prentice Hall, and the Allegis' Enterprise Partner Relationship Management product, eBusiness Suite.
Short Bio
Vita
|
email: |
|
|
calendar: |
|
|
IM: |
w7cook on Yahoo! |
|
postal: |
Department of Computer
Sciences |
|
phone: |
(512) 471-9555 |
|
fax: |
(512) 471-8885 |
|
office: |
ACES 5.244 |