LAURIE J. HENDREN
Date of Birth: |
December 13, 1958 |
|
|
Place of Birth: |
Peterborough, Ontario, Canada |
|
|
Nationality: |
Canadian |
|
|
Address: |
School of Computer Science |
|
McGill University |
|
318 McConnell Engineering Building |
|
3480 University Street |
|
Montreal, Quebec |
|
H3A 2A7 |
|
|
Telephone (work): |
(514) 398-7391 |
E-mail: |
hendren@cs.mcgill.ca |
|
|
URL: |
http://www.sable.mcgill.ca/~hendren |
- Ph.D.:
September 1985 to December 1989,
M.S. granted August 1988,
Ph.D. granted January 1990.
Department of Computer Science, Cornell University.
Ph.D. Thesis Title: Parallelizing Programs with Recursive Data Structures.
- M.Sc.:
September 1982 to February 1984,
Department of Computing and Information Science,
Queen's University at Kingston, Canada.
M.Sc. Thesis Title: ISON - An Introductory Subset of Nial.
- B.Sc. (Honours):
September 1977 to May 1982,
Department of Computing and Information Science,
Queen's University at Kingston, Canada.
- Canada Research Chair in Compiler Tools and Techniques - Renewal, 2018.
- Merck Patients First Award, For Opal, an Oncology Portal and Application.
With Tarek Hijal (Radiation Oncology) and John Kildea (Medical Physics), 2018.
- Honorable Mention, Institute for Patient- and Family-Centered Care
Partnership Award. For Opal, an Oncology Portal and Application.
With Tarek Hijal (Radiation Oncology) and John Kildea (Medical Physics), 2017.
- Winner of the Prix de cancérologie 2016, dans la catégorie
Organisation des services, pour le project Implémentation d'un
système de gestion de la salle d'attente via une application mobile et
un portail pour les patients en oncologie. With Tarek Hijal
(Radiation Oncology) and John Kildea (Medical Physics), November 2016.
This award also came with an invited presentation at the 2016 DGC
conference.
- The ``5 of Diamonds" in the Notable Women in Tech Card Deck,
http://www.notabletechnicalwomen.org, 2014.
- Fellow of the Royal Society of Canada, 2012.
- Canada Research Chair in Compiler Tools and Techniques, 2011.
- Leverhulme Visiting Professor, Oxford, 2010-2011 (sabbatical).
- Visiting Scholar, Wolfson College, Oxford, 2010-2011 (sabbatical).
- ACM Fellow, 2009.
- Leo Yaffe Award for Excellence in Teaching, Faculty of Science,
McGill University, 2006.
- Sage Fellowship, Cornell University, 1985-86.
- Natural Sciences and Engineering Research Council of Canada,
Postgraduate Scholarship, 1982-84.
- Departmental Medal in Computing and Information Science,
Queen's University at Kingston, 1982.
- Entrance Scholarship, Queen's University at Kingston, 1977.
- April 2017 to present:
Associate Investigator, Research Institute of the McGill University Health
Centre (RI-MUHC).
- December 2001 to present:
Professor, School of Computer Science,
McGill University.
- September 2005 to August 2014:
Associate Dean (Academic), Faculty of Science,
McGill University.
- June 1995 to November 2001:
Associate Professor, School of Computer Science,
McGill University.
- July 1990 to May 1995:
Assistant Professor, School of Computer Science,
McGill University.
- January 1990 to June 1990:
Research Associate (post-doctoral position),
Department of Computing and Information Science,
Queen's University.
- September 1987 to December 1989:
Research Assistant, Department of Computer Science,
Cornell University.
- June 1986 to December 1986:
Research Assistant, Microflow Project,
Department of Computer Science, Cornell University.
- May 1985 to September 1985:
Research Associate, Q'Nial Project,
Department of Computing and Information Science,
Queen's University at Kingston, Canada.
- June 1984 to May 1985:
Senior Programmer, Nial Systems Limited,
Kingston, Canada.
- February 1982 February 1984:
Research Assistant, Q'Nial Project,
Department of Computing and Information Science,
Queen's University at Kingston, Canada.
- Summer 1981:
Research Assistant, Medical Engineering,
Division of Electrical Engineering,
National Research Council of Canada.
Note: In the following list the Principal Investigator is underlined.
- Rossy Cancer Network, Cancer Quality and Innovation Grant,
Hendren, Hijal, Kildea, Asselah, Lambert, Faria and Davidson Developing and Evaluating a
Mobile Application for Caregivers, $100,000, 2018-2019.
- NSERC Canada Research Chair - Renewal, Hendren,
Compiler Tools and Techniques,
$56,000 per year research grant, 2018-2025.
- Canadian Partnership Against Cancer Grant,
Lambert, Faria, Rosberger, McCusker, Kildea,
Hendren, Hijal, Beauchamp, Ly, Hamel,
e-IMPAQC:
Implementation and evaluation of an e-Health application for the systematic
assessment of patient and caregiver reported outcomes in Quebec across the
cancer continuum.
$300,000 per year ($1,500,000 total), 2018-2022
- Montreal General Hospital Foundation Grant, Hendren,
Hijal and Kildea (joint PIs), Development of the
Oncology Portal and Application, $215,000 (total), 2017-2018.
- Cedars Cancer Foundation Grant, Hendren,
Hijal and Kildea (joint PIs), Development of the
Oncology Portal and Application, $100,000 (total), 2017-2018.
- NSERC Discovery Grant, Hendren,
Compilers, Tools and Languages for Scientists, $50.000 per year,
2015-2020.
- MUHC Challenge Q+ Award, Hendren, Hijal and Kildea (joint
principal investigators), Managing the Pain of Waiting for
Radiotherapy, $150,000 (total), 2014-2016.
- NSERC Research Tools and Instruments Grant, Hendren
and Verbrugge, Scalable Infrastructure for Compiler and Virtual
Machine Research, $65,508, 2011-2012.
- NSERC Canada Research Chair, Hendren,
Compiler Tools and Techniques,
$56,000 per year research grant, 2011-2018.
- NSERC Discovery Grant, Hendren,
Languages, compilers and virtual machines for scientists,
$43,000 per year, 2010-2015.
- Microsoft Award, Hendren,
Scientific programming languages and associated compiler tools,
$5,000, 2008.
- NSERC Equipment Grant, Verbrugge and Hendren, Refurbishment of Sable Lab, 2006-07.
- NSERC Discovery Grant, Hendren,
Analysis and Optimization of Object-Oriented and Aspect-Oriented Programs,
$64,000 per year, 2005-2010.
- FQNRT (FCAR) Team Grant, Hendren, Driesen and Verbrugge,
Understanding and Optimizing Object-Oriented and Concurrent Programs,
Operating ($65,000 per year, 2003-2006), Equipment ($33,000, 2003-2004).
- EPSRC Visiting Fellow, de Moor,
Compiler Tools and Techniques for Object-Oriented and Aspect-Oriented
Programs, 2003-3004.
- NSERC Research Grant, Hendren,
Compiler tools and techniques for analysis and optimization of Java,
$52,000 per year, 2001-2005.
- IBM Faculty Partnership Award, Hendren,
$61,000 ($40,000 US) per year, 2001-2004.
- IBM Scholars Program - Eclipse Innovation Grant, Hendren,
$33,000 ($25,000 US), 2004.
- IBM Scholars Program - Eclipse Innovation Grant, Hendren,
$39,000 ($25,000 US), 2003.
- NSERC Equipment Grant, Hendren,
Support for the Sable Group's Computing Lab, (File and Compute Servers).
$59,754, 2001-2002.
- FCAR Team Grant, Hendren, Panangaden and Debbabi,
The Design, Analysis and Implementation of Modern Concurrent Programming
Languages,
$42,000 per year (plus $15,000 equipment), 1998-2001.
- NSERC Research Grant, Hendren,
The Design, Implementation and Application of Program Analyses and
Transformations, $40,000 (1997-98, 1998-99), $44,000 (1999-2000),
$46,200 (2000-2001),
1997-2001.
- NSERC Equipment Grant, Hendren,
Equipment to Support the Sable Java Compiling Group (Workstations),
$19,236, 1998-1999.
- NSERC Research Grant, Hendren,
Compiling for High-Performance Architectures,
$29,000 per year,
1994-1997.
- FCAR Team Grant, Panangaden, Gao and Hendren,
Une appoache unifée pour le calcul en parallèle,
$13,470 equipment, 1994-1995;
$28,500 per year, 1994-1997.
- NSERC Strategic Grant, Gao, Hendren, Hum and Panangaden,
A Multithreaded Approach to High-Performance Computing and its
Implementation,
$21,549 equipment, 1993-1994;
$110,000 per year operating, 1993-1997.
- NSERC Equipment Grant, Gao, Hendren, Panangaden,
Avis and Tropper, Distributed Computing, $45,811, 1996-97.
- NSERC Industrially-Oriented Research Grant (with Bell Northern
Research), Hendren and Gao,
Compiling for Application Specific Instruction-Set Processors,
$60,000, 1995-1996.
- NSERC Equipment Grant, Hendren, Gao and Panangaden,
File and Compute Servers,
$29,414,
1994-1995.
- CRIM Industrial Research Grant, Hendren,
Portable Parallel Programming Environment, approx. $6,000 per year,
1993-1995.
- NSERC Equipment Grant, Gao, Hendren and Panangaden,
McCAT, McGill Compiler-Architecture Testbed, $28,000,
1992-1993.
- FCAR Team Grant, Panangaden, Gao and Hendren,
Architectural Models and Programming Principles for Parallel Processing,
$22,520 per year, 1991-1994.
- FCAR Nouveau Chercheur, Hendren, Compiling for Parallel Architectures,
$8,432 equipment, 1991-1992; $11,839 per year operating, 1991-1994.
- NSERC Operating Grant, Hendren,
Compiling for Parallel Architectures,
$19,000 per year, 1991-1994.
- NSERC Equipment Grant, with Panangaden, Gao, ElGindy,
Hendren, Merrett, Paige and Tropper,
16-processor upgrade for BBN Butterfly,
$85,216,
1991-1992.
- McGill Equipment Grant, Hendren, $8,000, 1990.
My publication profile includes both journal and conference
publications. In my field conference publications are very important,
are rigorously reviewed, widely disseminated and cited,
and are taken very seriously by the research community. As this is
somewhat unusual and sometimes misunderstood, a report was written for
the National Academy Press and a summary of this report was published in
an article entitled ``Academic Careers for Experimental Computer
Scientists and Engineers" published in the April 1994 issue of the
Communications of the ACM. This report includes the following
paragraph.
``The ECSE research community depends heavily on conferences
to communicate knowledge, and conferences are widely regarded as
the preferred medium for maximizing the effect of ECSE research.
However, the tenure and promotion process at many universities
does not give conference presentations and publications a weight
appropriate to their significance in the field, preferring instead
publications in archival journals."
In fact, the top-notch conferences are highly competitive and papers
presented at these conferences are reviewed and widely cited. The three
most prestigious conferences relevant to my work are the ACM SIGPLAN
sponsored conferences POPL (Principles of Programming Languages), PLDI
(Programming Language Design and Implementation), and
OOPSLA (Object Oriented Programming, Systems,Languages and
Applications). It is very difficult to get papers accepted into these
conferences. Serious researchers send only their best work to these
conferences and typically the acceptance rate is about 20%. Papers
are reviewed by three program committee members, and usually by at
least one person outside the program committee.
The papers appear in proceedings that are widely available in
print form and through the ACM Digital Library. POPL, PLDI
and OOPSLA papers are widely cited and form the core of the research
literature in my field. We have had papers appearing in PLDI '92, PLDI
'94 (two papers), POPL '96, POPL '98, PLDI '98, OOPSLA '00, OOPSLA '03,
PLDI '03, PLDI '05, OOPSLA '04,PLDI '05, OOPLSA '05,
OOPLSA '08, OOPSLA '11, and OOPSLA '12.
Of course my group also publishes in wide variety of other
excellent conferences. For example our recent work on aspect-oriented
programming has appeared in the International Conference on
Aspect-Oriented Software Development (AOSD). We have had papers
at AOSD '11, AOSD '10, AOSD '08, AOSD '06 and AOSD '05. Other important
conferences include the International Conference in Compiler
Construction, where we publish regularly, and a variety of software
engineering and program understanding conferences.
- J. Kildea, J. Battista, B Cabral, L. Hendren, D. Herrera, T. Hijal, and A.
Joseph, Design and development of a person-centered patient portal using
participatory stakeholder co-design, Journal of Medical
Internet Research, accepted pre-print (June 2018,
http://preprints.jmir.org/preprint/11371), final version,
https://www.jmir.org/2019/2/e11371/, February 2019.
- Laurie Hendren, Patient-controlled data,
Oncology Exchange (COMMENT), Vol. 17, No. 1, pp. 8-11, February 2018.
- Maxim Gorshkov and Laurie Hendren,
SOCS Wayfinder: Using a Low Cost Solution for Geolocation and
Pathfinding Indoors,
International Journal of Computer Applications, Volume 152, Number
1, 8 pages, October 2016.
- Stephen M. Blackburn, Amer Diwan, Matthias Hauswirth, Peter F.
Sweeney, José Nelson Amaral, Tim Brecht, Lubomr Bulej, Cliff Click,
Lieven Eeckhout, Sebastian Fichmeister, Daniel Frampton, Laurie J.
Hendren, Michael Hind, Antony L. Hosking, Richard E. Jones, Tomas
Kalibera, Nathan Keynes, Nathanial Nystrom, and Andreas Zeller, The
Truth, the Whole Truth, and Nothing but the Truth: A Pragmatic Guide to
Assessing Empirical Evaluations, ACM Transactions on
Programming Languages and Systems (TOPLAS), Volume 38, Issue 4, Article
No. 15, pp. 15:1-15:20, October 2016.
- Eric Bodden, Patrick Lam and Laurie Hendren, Partially
Evaluating Finite-State Runtime Monitors Ahead of Time,
ACM Transactions on Programming Languages and Systems, Vol. 34, No. 2,
pp. 7:1-7:52, 2012.
- Eric Bodden and Laurie Hendren,
The Clara Framework for Hybrid Typestate Analysis,
International Journal on Software Tools for Technology Transfer,
Volumne 14, Issue 3, pp. 307-326, 2012.
- Eric Bodden, Laurie Hendren, Patrick Lam, Ondrej Lhotak
and Nomair Naeem,
Collaborative Runtime Verification with Tracematches,
Journal of Logic and Computation, 20(3), pp 707-723, 2010.
- Ondrej Lhotak and Laurie Hendren,
Evaluating the Benefits of Context-Sensitive Points-to Analysis
using a BDD-based Implementation,
ACM Transactions on Software Engineering and Methodology,
Vol. 18., No. 1, pp. 1-53, 2008.
- Ondrej Lhotak and Laurie Hendren,
Relations as an abstraction for BDD-based program analysis,
ACM Transactions on Programming Languages and Systems,
Vol. 30, No. 4, pp. 1-63, 2008.
- Pavel Avgustinov, Aske Simon Christensen, Laurie
Hendren, Sascha Kuzins, Jennifer Lhotak, Ondrej Lhotak, Oege de Moor,
Damien Sereni, Ganesh Sittampalam and Julian Tibble,
abc: An Extensible AspectJ compiler, Transactions on
Aspect-Oriented Software Development, Volume 1, pp. 293-334, March 2006.
- Ondrej Lhotak and Laurie Hendren,
Run-time evaluation of opportunities for object inlining in Java,
Concurrency and Computation: Practice and Experience, Vol. 17, Issue 5-6,
pp. 515-537, April-May 2005.
- Yingchun Zhu and Laurie Hendren,
Communication Optimizations for Parallel C Programs,
Journal of Parallel and Distributed Computing, Vol. 58, No. 2,
pp. 301-332, 1999.
- Yingchun Zhu and Laurie Hendren,
Locality Analysis for Parallel C Programs,
IEEE Transactions on Parallel and Distributed Systems,
Vol. 10, No. 2, pp. 99-114, 1999.
- Laurie J. Hendren, Xinan Tang, Yingchun Zhu, Shereen Ghobrial,
Guang R. Gao, Xun Xue, Haying Cai and Pierre Ouellet,
Compiling C for the EARTH Multithreaded Architecture,
International Journal of Parallel Programming, Vol. 25, No. 4, pp. 305-337,
1997.
- Rakesh Ghiya and Laurie J. Hendren,
Connection Analysis: A Practical Interprocedural
Heap Analysis for C, International Journal of Parallel Programming,
Volume 24, No. 6, pp. 547-578, 1996.
- Herbert H. J. Hum, Olivier Maquelin, Kevin B. Theobald, Xinmin Tian, Guang R.
Gao, and Laurie J. Hendren.
A study of the EARTH-MANNA multithreaded system,
International Journal of Parallel Programming, Volume 24, No. 4, pp. 319-347,
August 1996.
- E. Merlo, J. F. Girard, L. Hendren, R. De Mori,
Multi-valued Constant Propagation Analysis for User Interface
Engineering, International Journal of Software Engineering and
Knowledge Engineering, Vol. 5, No. 1, March 1995.
- Anne Rogers, Martin C. Carlisle, John H. Reppy and Laurie J. Hendren,
Supporting Dynamic Data Structures on Distributed Memory Machines,
ACM Transactions on Programming Languages and Systems, vol. 17, no. 2,
pp. 233-263, March 1995.
- E. Merlo, Pierre-Yves Gangé, J.F. Girard, K. Kontogiannis, L. Hendren, P. Panangaden
and R. De Mori,
Reverse Engineering and Reengineering of User Interfaces,
IEEE Software, Vol. 12, No. 1, pp. 64-73, Jan. 1995.
- Laurie J. Hendren, Guang R. Gao, Erik R. Altman, and Chandrika Mukerji,
A Register Allocation Framework Based on Hierarchical Cyclic Interval
Graphs, The Journal of Programming Languages, Chapman and Hall,
Vol. 1, No. 3, pp. 155-185, 1993.
- Laurie J. Hendren and Guang R. Gao, Designing Programming
Languages for the Analyzability of Pointer Data Structures,
Computer Languages, Pergamon Press, Vol. 19, No. 2, pp. 119-134, April 1993.
- Joseph Hummel, Laurie J. Hendren, and Alexandru Nicolau,
Abstractions for Recursive Pointer Data Structures:
Improving the Analysis and Transformation of Imperative Programs,
ACM Letters on Programming Languages and Systems,
Vol. 1, No. 3, pp. 243-260, September 1992.
- L.J. Hendren and A. Nicolau,
Parallelizing Programs with Recursive Data Structures,
IEEE Transactions on Parallel and Distributed Computing,
Vol. 1, No. 1, pp. 35-47, January 1990.
- J.I. Glasgow, L.J. Hendren and M.A. Jenkins,
A Programming Language for Learning Environments,
Computational Intelligence (Special Edition on AI Approaches to Education),
pp. 68-75, May 1986.
- Joe Hummel, Laurie J. Hendren and Alex Nicolau,
Path Collection and Dependence Testing in the Presence of Dynamic
Pointer-Based Data Structures, Chapter 2 in Languages, Compilers and Run-Time
Systems for Scalable Computers (Proceedings of the 3rd Workshop),
B. Szymanksi and B. Sinharoy (Editors), Kluwer Academic Publishers, pp. 15-27,
May 1995.
- Kevin B. Theobald, Guang R. Gao, and Laurie J. Hendren,
The Effects of Resource Limitations on Program Parallelism,
In Advanced Topics in Dataflow Computing and Multithreading, Lubomir
Bic, Jean-Luc Gaudiot and Guang R. Gao (Editors), IEEE
Computer Society, pp. 348-373, 1994.
- Hanfeng Chen, Joseph Vinish D'Silva, Hongji Chen, Bettina Kemme and
Laurie Hendren,
HorseIR: Bringing Array Programming Languages together with Database Query
Processing,
14th Dynamic Languages Symposium (DLS 2018), November 2018.
- David Herrera, Hanfeng Chen, Erick Lavoie and Laurie Hendren,
Numerical Computing on the Web - Benchmarking for the Future,
14th Dynamic Languages Symposium (DLS 2018), November 2018.
- Prabhjot Sandhu, David Herrera and Laurie Hendren, Sparse Matrices
on the Web : Characterizing the Performance and Optimal Format Selection of
Sparse Matrix-Vector Multiplication in JavaScript and WebAssembly, 15th
International Conference on Managed Languages and Runtimes (ManLang '18), Sept
2018.
- Ackeem Joseph, Tarek Hijal, John, Kildea, Laurie Hendren and David
Herrera, Predicting Waiting Times in Radiation Oncology Using Machine
Learning, 16th IEEE International Conference on Machine Learning and
Applications (ICMLA), pp. 1024-1029, 2017.
- Erick Lavoie, Miguel Correia and Laurie Hendren, Xor-Overlay
Topology
Management beyond Kademlia, IEEE 11th International Conference on
Self-Adaptive and Self-Organizing Systems (SASO), 2017, pp. 51-60, 2017.
- Hanfeng Chen, Wai-Mee Ching and Laurie Hendren, An ELI-to-C
Compiler: Design, Implementation and Performance, 4th ACM SIGPLAN
International Workshop of Libraries, Languages and Compilers for Array
Programming (ARRAY 2017), June 2017.
- Vincent Foley-Bourgon and Laurie Hendren,
Efficiently Implementing the Copy Semantics of MATLAB's Arrays in
JavaScript, 12th Dynamic Languages Symposium, pp. 72-83, November 2016.
- Hanfeng Chen, Alexander Krolik, Erick Lavoie and Laurie Hendren,
Automatic Vectorization for MATLAB, 29th International Workshop of
Languages and Compilers for Parallel Computing, pp.171-187, September 2016.
- Andrew Bodzay and Laurie Hendren, AspectMatlab++:
Annotations, Types and Aspects for Scientists, 14th International
Conference on Modularity, pp. 41-54, March 2015.
- Faiz Khan, Vincent Foley-Bourgon, Sujay Kathrotia, Erick Lavoie
and Laurie Hendren, JavaScript and WebCL for numerical
computations: a comparative study of native and web methodologies,
Proceedings of the 10th ACM Symposium on Dynamic Languages (DLS 2014),
pp. 91-102, October 2014.
- Vineet Kumar and Laurie Hendren,
Compiling MATLAB for High Performance Computing via X10,
Proceedings of ACM SIGPLAN
Conference on Object-Oriented Programming, Systems, Languages and
Applications (OOPSLA 2014), pp. 617-636, October 2014.
- Rahul Garg and Laurie Hendren,
Velociraptor: An Embedded Compiler Toolkit for Numerical Programs
Targeting CPUs and GPUs, Proceedings of the 23rd International
Conference on Parallel Architectures and Compilation Techniques (PACT
2014), pp. 317-330, August 2014.
- Rahul Garg and Laurie Hendren,
A Portable and High-Performance General Matrix-Multiply (GEMM)
library for GPUs and single-chip CPU/GPU systems,
22nd Euromicro International Conference on Parallel, Distributed and
Network-based Processing (PDP 2014), pp. 672-680, February 2014.
- Xu Li and Laurie Hendren, Mc2For Demo: A Tool for
Automatically Translating MATLAB to Fortran 95,
Proceedings of IEEE Conference on Software Maintenance, Reengineering,
and Reverse Engineering (CSMR-WCRE 2014, Tool Demo Track), pp. 458-463, February 2014.
- Xu Li and Laurie Hendren, Mc2For: A Tool for Automatically
translating MATLAB to Fortran95.
Proceedings of IEEE Conference on Software Maintenance, Reengineering,
and Reverse Engineering (CSMR-WCRE 2014, Technical Paper Track), pp. 234-243, February 2014.
- Nurudeen Lameed and Laurie Hendren, Optimizing MATLAB feval
with dynamic techniques, Proceedings of the 9th Symposium on Dynamic
Languages (DL 2013), pp. 85-96, October 2013.
- Vineet Kumar and Laurie Hendren, First steps to compiling
MATLAB to X10, Proceedings of the third ACM
SIGPLAN X10 Workshop (co-located with PLDI 2013), pp. 2-11, June 2013.
- Soroush Radpour, Laurie Hendren and Max Scäfer, Refactoring
MATLAB, Proceedings of the 22nd International Conference on Compiler
Construction (CC 2013), pp. 224-243, March 2013.
- Nurudeen Lameed and Laurie Hendren, A modular approach to
on-stack replacement in LLVM, Proceedings of the 9th ACM SIGPLAN/SIGOPS
International Conference on Virtual Execution Environments (VEE 2013), pp.
143-154, March 2013.
- (*) Anton Dubrau and Laurie Hendren, Taming MATLAB,
Proceedings
of ACM SIGPLAN
Conference on Object-Oriented Programming, Systems, Languages and
Applications (OOPSLA 2012), pp. 503-522, October 2012.
- Jesse Doherty and Laurie Hendren, Proceedings of the European
Conference on Object-Oriented Programming (ECOOP 2012), pp. 132-155, June
2012.
- Hesam Samimi, Max Schäfer, Shay Artzi, Todd Millstein, Frank Tip
and Laurie Hendren, Automated repair of HTML generation errors in
PHP applications using string constraint solving, Proceedings of the
2012 International Conference on Software Engineering (ICSE 2012), pp.
277-287, June 2012.
- Jesse Doherty, Laurie Hendren and
Soroush Radpour, Kind Analysis for MATLAB, Proceedings of
ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages
and Applications (OOPSLA 2011), pp. 99-118,
October 2011.
- Nurudeen Lameed and Laurie Hendren,
Staged Static Techniques to Efficiently Implement Array Copy
Semantics in a MATLAB JIT Compiler, Proceedings of the 21st
International Conference on Compiler Construction (CC 2011), pp. 22-41,
March 2011.
- Andrew Casey and Laurie Hendren,
MetaLexer: a modular lexical specification language, Proceedings
of the 11th International Conference on Aspect-Oriented Software
Development (AOSD 2011), pp. 7-18, March 2011.
- (*)
Raja Vallée-Rai, Laurie Hendren, Vijay Sundaresan,
Patrick Lam, Etienne Gagnon and Phong Co, Soot -
A Java Optimization Framework, In Special Edition of the Proceedings of CASCON
for High-Impact papers for the 20th Anniversary of CASCON (IBM Center for
Advanced Studies Conference), Toronto, November 2010. (originally in CASCON
1999)
- Patrice Pominville, Feng Qian, Raja Vallée-Rai,
Laurie Hendren and Clark Verbrugge, A Framework for Optimizing Java Using
Attributes, In Special Edition of the Proceedings of CASCON for High-Impact
papers for the 20th Anniversary of CASCON (IBM Center for Advanced Studies
Conference), Toronto, November 2010. (originally in CASCON 2000)
- Eric Bodden, Patrick Lam and Laurie Hendren,
Clara: A Framework for Statically Evaluating Finite-state Runtime
Monitors, Proceedings of the 1st International Conference on
Runtime Verification (RV 2010), November 2010.
- Toheed Aslam, Jesse Doherty, Anton Dubrau and Laurie Hendren,
AspectMatlab: An Aspect-Oriented Scientific Programming Language,
Proceedings of the 9th International Conference on Aspect-Oriented
Software Development (AOSD 2010), pp. 181-192, March 2010.
Chevalier-Boisvert, Laurie Hendren and Clark
Verbrugge,
Optimizing MATLAB through Just-In-Time Specialization,
Proceedings of the International Conference on Compiler Construction (CC
2010), pp. 46-65, March 2010.
- Dehua Zhang, Ekwa Duala-Ekoko and Laurie Hendren,
Impact analysis and visualization toolkit for static crosscutting
in AspectJ,
Proceedings of the 17th International Conference on Program
Comprehension (ICPC 2009), pp. 60-69, May 2009.
- Eric Bodden, Patrick Lam and Laurie Hendren,
Object representatives: a uniform abstraction for pointer
information, Proceedings of the BCS International Academic Conference,
British Computing Society, pp. 392-405, December 2008.
- Eric Bodden, Patrick Lam and Laurie Hendren,
Finding Programming Errors Earlier by Evaluating Runtime Monitors
Ahead-of-Time,
Proceedings of the Sixteenth ACM SIGSOFT International Symposium on
Foundations of Software Engineering (FSE 2008), pp. 36-47, November
2008.
- Barthélémy Dagenais and Laurie Hendren,
Enabling Static Analysis for Partial Java Programs,
ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages
and Applications (OOPSLA),
pp. 313-328, October 2008.
- Eric Bodden, Reehan Shaikh and Laurie J. Hendren,
Relational aspects as tracematches,
Proceedings of the 7th International Conference on Aspect-Oriented
Software Development (AOSD 08), pp. 84-95,
Brussels, Belgium, March 2008.
- Eric Bodden, Laurie J. Hendren and Ondrej Lhotak, A Staged
Static Program Analysis to Improve the Performance of Runtime
Monitoring, Proceedings of the 21st European Conference on
Object-Oriented Programming (ECOOP 2007), pp. 525-549, Berlin, Germany, July 2007.
- Nomair A. Naeem, Michael Batchelder and Laurie J. Hendren, Metrics for Measuring the Effectiveness of Decompilers, Proceedings of
the 15th International Conference on Program Comprehension (ICPC 2007), pp.
253-258, Banff, Alberta, Canada, June 2007.
- Eric Bodden, Laurie J. Hendren, Patrick Lam, Ondrej Lhotak and Nomair A.
Naeem, Collaborative Runtime Verification with Tracematches,
Revised selected papers from the 7th International Workshop on Runtime
Verification, LNCS 4839, pp. 9-21, March 2007.
- Michael Batchelder and Laurie J. Hendren, Obfuscating Java:
The Most Pain for the Least Gain, Proceedings of the 16th International
Conference on Compiler Construction (CC 2007), pp. 96-110, Braga, Portugal,
March 2007.
- Nomair A. Naeem and Laurie Hendren, Programmer-friendly
Decompiled Java, Proceedings of the 14th IEEE International Conference
on Program Comprehension (ICPC 2006), pp. 327-336, Athens, Greece, June 2006.
- Neil Ongkingco, Pavel Avgustinov, Julian Tibble, Laurie Hendren,
Oege de Moor, Ganesh Sittampalam,
Adding Open Modules to AspectJ,
Proceedings of the 5th International Conference on Aspect-Oriented
Software Development (AOSD 2006), pp. 39-50, Bonn, Germany, March 2006.
- Ondrej Lhotak and Laurie Hendren, Context-Sensitive Points-to
Analysis: Is it Worth It?, Proceedings of the 15th International
Conference on Compiler Construction (CC 2006), LNCS 3923, pp. 47-64,
Vienna, Austria, March 2006.
- Chris Allan, Pavel Avgustinov, Aske Simon Christensen, Laurie Hendren,
Sascha Kuzins,
Ondrej Lhotak, Oege de Moor, Damien Sereni, Ganesh
Sittampalam and Julian Tibble, Adding Trace Matching
with Free Variables to AspectJ,
Proceedings of the
ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages
and Applications (OOPSLA 2005), San Diego,
California, USA, October 2005.
- Pavel Avgustinov, Aske Simon Christensen, Laurie Hendren, Sascha Kuzins,
Jennifer Lhotak, Ondrej Lhotak, Oege de Moor, Damien Sereni, Ganesh
Sittampalam and Julian Tibble, Optimising AspectJ,
Proceedings of the ACM SIGPLAN 2005 Conference on Programming
Language Design and Implementation (PLDI 2005), pp. 117-128, Chicago,
Illinois, USA, June 2005.
- Pavel Avgustinov, Aske Simon Christensen, Laurie Hendren, Sascha Kuzins,
Jennifer Lhotak, Ondrej Lhotak, Oege de Moor, Damien Sereni, Ganesh
Sittampalam and Julian Tibble, An Extensible AspectJ Compiler,
Proceedings of the 4th international conference on Aspect-oriented
software development (AOSD 2005), pp. 87-98, Chicago, USA, March 2005.
- Feng Qian and Laurie J. Hendren, A Study in Type Analysis for
Speculative Method Inlining in a JIT Environment,
International Conference on Compiler Construction (CC 2005),
pp. 255-270, Edinburgh, UK, April 2005.
- Anatole Le, Ondrej Lhotak and Laurie J. Hendren, Using
Inter-Procedural Side-Effect Information in JIT Optimizations,
International Conference on Compiler Construction (CC 2005),
pp. 287-304, Edinburgh, UK, April 2005.
- Bruno Dufour, Christopher Goard, Laurie Hendren and Clark Verbrugge
(McGill University) Oege de Moor and Ganesh Sittampalam (Oxford University),
Measuring the Dynamic Behaviour of AspectJ Programs
Proceedings of the
ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages
and Applications (OOPSLA 2004), pp. 149-168, Vancouver, Canada, October
2004.
- Ondrej Lhotak and Laurie Hendren
Jedd: A BDD-based relational extension of Java, Proceedings of the ACM
SIGPLAN 2004 Conference on Programming Language Design and Implementation
(PLDI 2004), pp. 158-169, Washington DC, USA, June 2004.
- Feng Qian and Laurie Hendren, Towards Dynamic Interprocedural
Analysis in JVMs, 3rd Virtual Machine Research and Technology
Symposium (VM 04), pp. 139-150, San Jose, California, USA, May 2004.
- Jennifer Lhotak, Ondrej Lhotak and Laurie Hendren, Integrating the
Soot compiler infrastructure into an IDE, International Conference
on Compiler Construction (CC 2004), pp. 281-297, Barcelona, Spain,
March 2004.
- Bruno Dufour, Karel Driesen, Laurie Hendren and Clark Verbrugge,
Dynamic Metrics for Java, Proceedings of the ACM SIGPLAN Conference
on Object-Oriented Programming, Systems, Languages and Applications
(OOPSLA 2003),
pp. 149-168, Anaheim, USA, October 2003.
- Qin Wang, Wei Wang, Rhodes Brown, Karel Driesen, Bruno Dufour, Laurie
Hendren and Clark Verbrugge, EVolve: An Open Extensible Software
Visualization Framework, Proceedings of the ACM Symposium on
Software Visualization (SoftVis 2003), pp. 37-46, San Diego, USA, June
2003 .
- Marc Berndl, Ondrej Lhotak, Feng Qian, Laurie Hendren and
Navindra Umanee, Points-to Analysis using BDDs, Proceedings of
the ACM SIGPLAN 2003 Conference on Programming Language Design and
Implementation (PLDI 2003), pp. 103-114, San Diego, USA, June 2003.
- Ondrej Lhotak and Laurie Hendren, Scaling Java Points-to Analysis
using Spark,
International Conference on Compiler Construction (CC 2003), pp. 170-184,
Warsaw, Poland, April 2003.
- Etienne Gagnon and Laurie Hendren, Effective Inline-Threaded
Interpretation of Java Bytecode Using Preparation Sequences,
International Conference on Compiler Construction (CC 2003), pp. 153-169,
Warsaw, Poland, April 2003.
- Marc Berndl and Laurie Hendren, Dynamic Profiling and Trace Cache
Generation for a Java Virtual Machine, Proceedings of the International
Symposium on Code Generation and Optimization (CGO 2003), pp. 276-288,
San Francisco, USA, March 2003.
- Rhodes Brown, Karel Driesen, David Eng, Laurie Hendren, John Jorgensen, Clark
Verbrugge and Qin Wang,
STEP: A Framework for the Efficient Encoding
of General Trace Data, Proceedings of the ACM SIGPLAN-SIGSOFT Workshop
on Program Analysis for Software Tools and Engineering, pp. 27-34,
Charleston, USA, November 2002.
- Ondrej Lhotak and Laurie Hendren,
Run-time Evaluation of Opportunities
for Object Inlining in Java, Proceedings of the Joint
ACM Java Grande - ISCOPE 2002 Conference, pp. 175-184,
Seattle, USA, November 2002.
- Feng Qian and Laurie Hendren, An Adaptive, Region-based Allocator for
Java, Proceedings of the ACM International Symposium on Memory Management,
pp. 127-138, Berlin, Germany, June 2002.
- Jerome Miecznikowski and Laurie Hendren, Decompiling Java Bytecode:
Problems, Traps and Pitfalls, International Conference on
Compiler Construction (CC 2002), pp. 111-127, Grenoble, France, April
2002.
- Feng Qian, Laurie Hendren and Clark Verbrugge, A Comprehensive Approach
to Array Bounds Check Elimination in Java, International Conference on
Compiler Construction (CC 2002), pp. 325-342, Grenoble, France, April
2002.
- Jerome Miecznikowski and Laurie Hendren, Decompiling Java Using
Staged Encapsulation, Workshop on Decompilation Techniques,
Stuttgart, Germany. Appeared in Proceedings of the Working
Conference on Reverse Engineering, IEEE CS Press, pp. 368-374, October 2001.
- Patrice Pominville, Feng Qian, Raja Vallée-Rai, Laurie Hendren and Clark
Verbrugge,
A Framework for Optimizing Java Using Attributes, Proceedings of the
International Conference on Compiler Construction (CC 2001), LNCS 2027,
pp. 334-354, April 2001.
- Etienne Gagnon and Laurie Hendren,
SableVM: A Research Framework for the Efficient Execution of Java
Bytecode,
Proceedings of the Java Virtual Machine Research and Technology
Symposium (JVM '01), pages 27-39, Usenix, Monterey, California, USA,
April 2001.
- Patrice Pominville, Feng Qian, Raja Vallée-Rai, Laurie Hendren and Clark
Verbrugge,
A Framework for Optimizing Java Using Attributes, Proceedings of CASCON
(IBM Center for Advanced Studies Conference) 2000, pp. 152-169, November 2000.
- Vijay Sundaresan, Laurie Hendren, Chrislain Razafimahefa, Raja Vallee-Rai,
Patrick Lam, Etienne Gagnon and Charles Godin,
Practical Virtual Method Resolution for Java, In Proceedings of the
Conference on object-oriented programming, systems, languages, and
applications (OOPSLA 2000), Minneapolis, pp. 264-280, October 2000.
- Etienne Gagnon, Laurie Hendren and Guillame Marceau,
Efficient Inference of Static Types for Java Bytecode,
In Proceedings of the Static Analysis Symposium (SAS 2000),
Santa Barbara, pp. 199-219, June 2000.
- Raja Vallée-Rai, Etienne Gagnon, Laurie Hendren, Patrick Lam,
Patrice Pominville and Vijay Sundaresan,
Optimizing Java Bytecode using the Soot Framework: Is it Feasible?,
In Proceedings of the International Conference on Compiler Construction (CC
2000), Berlin, pp. 18-34, March 2000.
Vallee-Rai, Laurie Hendren, Vijay Sundaresan, Patrick Lam,
Etienne Gagnon and Phong Co,
Soot - A Java Optimization Framework,
In Proceedings of CASCON (IBM Center for Advanced Studies Conference) 99,
Toronto, pp. 125-135, November 1999.
- Etienne Gagnon and Laurie J. Hendren,
SableCC: An Object-Oriented Compiler Framework,
Technology of Object-Oriented Languages and Systems
26th International Conference and Exhibition, pp. 140-154, August 1998.
- Yingchun Zhu and Laurie J. Hendren,
Communication Optimizations for Parallel C Programs,
Proceedings of the ACM SIGPLAN '98 Conference on Programming
Language Design and Implementation,
pp. 199-211,
June 1998.
- Christopher Lapkowski and Laurie J. Hendren,
Extended SSA numbering: Introducing SSA properties to languages
with multi-level pointers , International Conference on Compiler
Construction,
pp. 128-143,
April 1998.
- Rakesh Ghiya and Laurie J. Hendren,
Detecting Parallelism in C Programs with Recursive Data Structures.
International Conference on Compiler Construction,
pp. 159-173,
April 1998.
- Rakesh Ghiya and Laurie J. Hendren,
Putting Pointer Analysis to Work,
Proceedings of the 35th ACM SIGPLAN-SIGACT Symposium
on Principles of Programming Languages (POPL '98), pp. 121-133, January 1998.
- Yingchun Zhu and Laurie J. Hendren,
Locality Analysis for Parallel C Programs,
Proceedings of Parallel Architectures and Compilation Techniques (PACT '97),
pp. 2-13,
November 1997.
- Xinan Tang, Rakesh Ghiya, Laurie J. Hendren and Guang R. Gao,
Heap Analysis and Optimizations for Threaded Programs,
Proceedings of Parallel Architectures and Compilation Techniques (PACT '97),
pp. 14-25,
November
1997.
- Laurie J. Hendren, Xinan Tang, Yingchun Zhu, Guang Gao,
Xun Xue, Haiying Cai, and Pierre Ouellet,
Compiling C for the EARTH multithreaded architecture,
Proceedings of Parallel Architectures and Compilation Techniques (PACT '96),
pp. 12-23,
October 1996.
- Clark Verbrugge, Phong Co and Laurie J. Hendren,
Generalized Constant Propagation: A Study in C,
Proceedings of the 6th International Conference on Compiler
Construction (CC '96), Lecture Notes in Computer Science, Volume 1060,
Tibor Gyimothy (Editor),
pages 74-89, April 1996.
- Rakesh Ghiya and Laurie J. Hendren,
Is it a Tree, a DAG or a Graph? A Shape Analysis for Heap-Directed
Pointers in C, Proceedings of the 23rd ACM SIGPLAN-SIGACT Symposium
on Principles of Programming Languages (POPL '96), pages 1-15, January 1996.
- Rakesh Ghiya and Laurie J. Hendren,
Connection Analysis: A Practical Interprocedural Heap Analysis for C,
in Proceedings of the Proceedings of the Eighth Workshop on Languages
and Compilers for Parallel Computing (LCPC '95), Lecture Notes in Computer
Science, Volume 1033, pages 515-534, August 1995.
- Herbert H. J. Hum, Olivier Maquelin, Kevin B. Theobald, Xinmin Tian, Xinan
Tang, Guang R. Gao, Phil Cupryk, Nasser Elmasri, Laurie J. Hendren, Alberto
Jimenez, Shoba Krishnan, Andres Marquez, Shamir Merali, Shashank S.
Nemawarkar, Prakash Panangaden, Xun Xue, and Yingchun Zhu.
A design study of the EARTH multiprocessor
Proceedings of the IFIP WG 10.3 Working Conference
on Parallel Architectures and Compilation Techniques, (PACT '95), pages
59-68, June 1995.
- J. Hummel, L. Hendren and A. Nicolau,
A Framework for Data Dependence Testing in the Presence of Pointers,
Proceedings of the 1994 International Conference on Parallel Processing
(ICPP '94),
Volume II, pages 216-224, August 1994.
- Maryam Emami, Rakesh Ghiya and Laurie J. Hendren,
Context-Sensitive Interprocedural Points-to Analysis in the
Presence of Function Pointers,
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and
Implementation (PLDI '94), pp. 242-256, June 1994.
- J. Hummel, L. Hendren and A. Nicolau,
A General Data Dependence Test for Dynamic, Pointer-Based Data Structures,Proceedings of the ACM SIGPLAN Conference on Programming Language Design and
Implementation (PLDI '94), pp. 218-229, June 1994.
- Ana Erosa and Laurie J. Hendren,
Taming Control Flow: A Structured Approach to Eliminating Goto
Statements,
Proceedings of the 1994 IEEE International Conference on Computer Languages
(ICCL '94),
Toulouse, France, pp. 229-240,
May 1994.
- Justiani1 and Laurie J. Hendren,
Supporting Array Dependence Testing for an Optimizing/Parallelizing
C Compiler,
Proceedings of the 5th International Conference on Compiler Construction
(CC '94),
Lecture Notes in Computer Science, Volume 786, Peter A. Fritzson (Editor)
pp. 309-323, April 1994.
- J. Hummel, L. Hendren and A. Nicolau,
A Language for Conveying Aliasing Properties of Dynamic, Pointer-Based
Data Structures,
Proceedings of the 8th International Parallel Processing Symposium (IPPS '94),
pp. 208-216, April 1994.
- E. Merlo, J. F. Girard, L. Hendren and R. De Mori,
Multi-Valued Constant Propagation for the Reengineering of User Interfaces,
Proceedings of Conference on Software Maintenance-1993,
Montreal, Quebec, pp. 120-129, September 1993.
- Martin C. Carlisle, Anne Rogers, John H. Reppy and Laurie J. Hendren,
Early Experiences with Olden,
Proceedings of the Sixth Annual Workshop on Languages and Compilers for
Parallel Computing, Portland, Oregon, Lecture Notes in Computer
Science (LCPC '93), Vol. 768, pp. 1-20, August 1993.
- Kevin B. Theobald, Guang R. Gao, and Laurie J. Hendren, Speculative Execution and Branch Predication on Parallel Machines,
Proceedings of the 7th ACM International Conference
of Supercomputing (ICS '93), Tokyo, Japan, pp. 77-86, July 1993.
- Kevin B. Theobald, Guang R. Gao, and Laurie J. Hendren,
On the Limits of Program Parallelism and its Smoothability,
Proceedings of the 25th Annual International Symposium on
Microarchitecture (MICRO '92), pp. 10-19, December 1992.
(A longer version in ACAPS Technical Memo 40, School of Computer Science,
McGill University, June 1992.)
- Laurie J. Hendren, Guang R. Gao, Erik R. Altman, and Chandrika Mukerji,
A Register Allocation Framework Based on Hierarchical Cyclic Interval
Graphs, Proceedings of the International Conference on
Compiler Construction (CC '92),
Lecture Notes in Computer Science, Vol. 641, U. Kastens
and P. Pfahler (Editors), pp. 176-191, October 1992.
- J. Hummel, L.J. Hendren, and A. Nicolau,
Applying an Abstract Data Structure Description Approach to
Parallelizing Scientific Pointer Programs,
International Conference on Parallel Processing, (Volume II - software)
(ICPP '92),
pp. 100-104, Aug. 1992.
- Laurie J. Hendren, Chris Donawa, Maryam Emami, Guang R. Gao, and
Bhama Sridharan.
Designing the McCAT Compiler Based on a Family
of Structured Intermediate Representations,
Proceedings of the
5th International Workshop on Languages and Compilers for Parallel Computing
(LCPC '92),
New Haven, Connecticut, Lecture Notes in Computer Science, Vol. 757,
Utpal Banerjee, David Gelernter, Alex Nicolau and David Padua (Editors),
pp. 406-420, August 1992.
- Anne Rogers, John H. Reppy, and Laurie J. Hendren.
Supporting SPMD Execution for Dynamic Data Structures,
Proceedings of the
5th International Workshop on Languages and Compilers for Parallel Computing
(LCPC '92),
New Haven, Connecticut, Lecture Notes in Computer Science, Vol. 757,
Utpal Banerjee, David Gelernter, Alex Nicolau and David Padua (Editors),
pp. 192-207, August 1992.
- Laurie J. Hendren, Joseph Hummel, and Alexandru Nicolau,
Abstractions for Recursive Pointer Data Structures:
Improving the Analysis and Transformation of Imperative Programs,
Proceedings of the ACM SIGPLAN '92 Conference on
Programming Language Design and Implementation (PLDI '92),
pp. 249-260, June 1992.
- G. Gao, L. Hendren, P. Panangaden, M. Feeley,
L. Tao, M. Hancu, J. Lebensold and V. Van Dongen,
``Towards a Portable Parallel Programming Environment",
Proceedings of the Supercomputing Symposium '92, June 1992.
- Weiren Ding and Laurie J. Hendren,
SELSYN-C: A Self-Synchronizing Parallel Programming Language,
Proceedings of the 4th International Conference
on Computing and Information, pp. 135-138, May 1992.
- Laurie J. Hendren and Guang R. Gao,
Designing Programming Languages for
Analyzability: A Fresh Look at Pointer Data Structures,
Proceedings of the 4th IEEE International Conference on Computer Languages
(ICCL '92),
pp. 242-251,
April 1992.
- L.J. Hendren and A. Nicolau,
Parallelizing Programs with Recursive Data Structures,
Proceedings of the International Conference
on Parallel Processing (ICCP '89),
pp. 49-56 (volume II - software), August 1989.
- L.J. Hendren and A. Nicolau,
Interference Analysis Tools for
Parallelizing Programs with Recursive Data Structures,
Proceedings of the International Conference of Supercomputing (ICS '89),
pp. 205-214, June 1989.
- L.J. Hendren,
RIPO - An Automated Prototyping Tool Based on Nested Arrays,
APL84 Conference Proceedings, APL Quote Quad Volume 14 Number 4,
pp. 181-184, June 1984.
- Erick Lavoie and Laurie Hendren, Personal Volunteer Computing,
arXiv preprint arXiv:1804.01482, April 2018.
- Erick Lavoie and Laurie Hendren, A Formalization for Specifying and
Implementing Correct Pull-Stream Modules,
arXiv preprint arXiv:1801.06144, January 2018.
- Erick Lavoie, Laurie Hendren and Frederic Desprez, Pando: A Volunteer
Computing Platform for the Web, IEEE 2nd International Workshops on
Foundations and Applications of Self* Systems (FAS*W), pp. 387-388, 2017.
- Rahul Garg, Sameer Jagdale and Laurie J. Hendren,
Velociraptor: a compiler toolkit for array-based languages
targeting CPUs and GPUs, Proceedings of the 2015 ACM SIGPLAN
International Workshop on Libraries, Languages and Compilers for Array
Programming (ARRAY@PLDI), pp 19-24, June 2015.
- Rahul Garg and Laurie Hendren,
Just-in-time shape inference for array-based languages,
Proceedings of the 2014 ACM SIGPLAN International Workshop on Libraries,
Languages and Compilers for Array Programming (ARRAY@PLDI), Edinburgh, United
Kingdom, pp. 50-55, June 2014.
- Patrick Lam, Eric Bodden, Ondrej Lhotak and Laurie Hendren,
The Soot framework for Java program analysis: a retrospective,
Proceedings of the Cetus Users and Compiler Infrastructure Workshop (in
conjunction with PACT 2011), 8 pages, October 2011.
- Laurie Hendren, Jesse Doherty, Anton Dubrau, Rahul Garg, Nurudeen Lameed,
Soroush Radpour, Amina Aslam, Toheed Aslam, Andrew Casey, Maxime Chevalier
Boisvert, Jun Li, Clark Verbrugge and Olivier Savary Belanger, McLAB:
enabling programming language, compiler and software engineering research for
MATLAB, Proceedings of the ACM International Conference on Object
Oriented Programming Systems, Languages and Applications Companion (abstract
of poster), pp. 195-196, October 2011.
- Laurie Hendren, Typing aspects for MATLAB, Proceedings of the Sixth
Annual Workshop on Domain-specific Aspect Languages (at AOSD 2011), pp. 13-18,
March 2011. (International Workshop)
- Eric Bodden, Laurie Hendren, Patrick Lam, Ondrej Lhotak and Nomair
A. Naeem, Collaborative runtime verification with tracematches,
Proceedings of the 7th workshop on Runtime Verification at the 6th
International Conference on Aspect-Oriented Software Development (RV
2007), LNCS 4839, March 2006. (Proceedings published in 2007).
- Pavel Avgustinov, Julian Tibble, Eric Bodden, Laurie J. Hendren, Ondrej
Lhotak, Oege de Moor, Neil Ongkingco and Ganesh Sittampalam,
Efficient trace monitoring, pp. 685-686, OOPSLA Companion
(abstract of poster), pp. 685-686, October 2006.
- Pavel Avgustinov, Eric Bodden, Elnar Hajiyev, Laurie J. Hendren,
Ondrej Lhotak, Oege de Moor, Neil Ongkingco, Damien Sereni, Ganesh
Sittampalam, Julian Tibble and Mathieu Verbaere, Aspects for Trace
Monitoring, paper associated with invited talk by Oege de Moor,
pp. 20-39, FATES/RV, August 2006.
- Pavel Avgustinov, Aske Simon Christensen, Laurie
Hendren, Sascha Kuzins, Jennifer Lhotak, Ondrej Lhotak, Oege de Moor,
Damien Sereni, Ganesh Sittampalam and Julian Tibble
abc: The AspectBench Compiler for AspectJ, paper associated
with invited talk by Oege de Moor, International Conference on
Generative Programming and Component Engineering (GCPE 2005),
pages 10-15, September 2005.
- Laurie J. Hendren, Maryam Emami, Rakesh Ghiya, and Clark Verbrugge,
A Practical Context-Sensitive Interprocedural Analysis for C
Compilers, ACAPS Technical Memo 72, School of Computer Science,
McGill University, July 1993.
- ZhiPing Qiu, Laurie J. Hendren, and Behcet Sarikaya,
The Design and Implementation of a Compiler for Conformance Testing,
Proceedings of the Poster Session, International Conference of
Compiler Construction, Universität-Gesamthochschule-Paderborn, Report
103, October 1992.
- Laurie J. Hendren,
Parallelizing Programs with Recursive Data Structures,
Technical Report TR 90-1114 (Ph.D. Thesis), Cornell University, April 1990.
- Laurie J. Hendren,
Recursive data structures and parallelism detection,
Technical Report TR 88-924, Cornell University, June 1988.
- Laurie J. Hendren, Alex Nicolau, Jon Solworth and Patrick Xavier,
Low-level programming for a massively fine-grain
computer: The Microflow Approach,
Technical Report TR87-806, Cornell University, March 1987.
- Laurie J. Hendren.
ISON: An Introductory Subset of Nial,
M.Sc. Thesis, Queen's University, 1984.
- R. Black, P.J. Nelson and L.J. Hendren,
NRC Turtle Graphics,
Proceedings of the Tutorial and Workshop on Computers and the
Handicapped, pp. 89-93, 1982.
- John Kildea, James Brace, Laurie Hendren, David Hererra, Ackeem Joseph and
Tarek Hijal,
Opal - The Oncology Portal and Application, 5th Canadian Cancer Research
Conference, November 2017. (Oral presentation in Reviewers' Choice Section)
- Faria R, Law S, Hijal T, Zidulka J, Magalhaes M, Mazaniello M,
Ferland M, Hendren L, Michaels G, Potas D and Volet G, Looking
Forward: Co-designing and evaluating a cancer survivorship program,
CAHSPR 2017, May 24-27, 2017, Toronto. (Oral presentation)
- Faria R, Law S, Hijal T, Zidulka
J, Magalhaes M, Mazaniello M, Ferland M, Hendren L, Michaels G, Potas D,
and
Volet G,
Looking Forward: Co-designing a psychosocial information program for
patients completing active treatment,
Canadian Partnership Against Cancer (CPAC) Conference 2017,
April 7-8, 2017,Toronto. (Poster presentation)
- Faria R, Law S, Hijal T, Zidulka J,
Magalhaes M, Mazaniello M, Ferland M, Hendren L, Michaels G, Potas D,
Volet G and Boisvert-Huneault, C,
Looking Forward: Co-designing a cancer survivorship program,
Rti3 - Radiation Therapy Conference,
Toronto, March 2017. (Oral presentation)
- Faria R, Law S, Hijal T, Zidulka
J, Magalhaes M, Mazaniello M, Ferland M, Hendren L, Michaels G, Potas D,
and Volet G,
Looking Forward: Co-designing a psychosocial information program for
patients completing active treatment,
14th American Psychosocial Oncology Society Annual Conference 2017,
February 15-18, 2017, Orlando FL. (Poster presentation)
- Faria R, Law S, Hijal T, Zidulka J, Magalhaes M, Mazaniello M,
Ferland M, Hendren L, Michaels G, Potas D, and Volet G, La
co-conception d'un programme de soutien pour les survivants du cancer,
Congrès Direction Générale de Cancérologie 2016 - Tourné vers
l'avenir, November 18, 2016, Montreal. (Poster presentation)
- Faria R, Law S, Hijal T, Zidulka J, Magalhaes M, Mazaniello M,
Ferland M, Hendren L, Michaels G, Potas D, and Volet G, Looking
Forward: Co-designing a cancer survivorship program, Rossy Cancer
Network (RCN) Annual Retreat, Montreal, September 2016. (Poster
presentation)
- Faria R, Law S, Hijal T, Zidulka J, Magalhaes M, Mazaniello M, Ferland
M, Hendren L, Michaels G, Potas D, and Volet G,
Looking Forward: Co-designing a psychosocial information
program for patients completing active treatment, International Psycho
Oncology Society (IPOS), Dublin, October 2016. (Poster presentation)
- Ackeem Joseph, David Herrera, Tarek Hijal, Laurie Hendren, Alvin Leung,
Justin Wainberg, Marya Sawaf, Maxim Gorshkov, Robert Maglieri, Mehryar
Keshavarz, John Kildea,
Predicting waiting times in Radiation Oncology using machine
learning,
Annual Scientific Meeting of the Canadian
Organization of Medical Physicists, St John's, NL, June 2016.
- Ackeem Joseph, David Herrera,
John Kildea, Tarek Hijal, Laurie Hendren,
Opal: the Oncology Patient Application,
Annual Scientific Meeting of
the Canadian Organization of Medical Physicists, St John's, NL, June
2016.
- Ackeem Joseph, David Herrera, Tarek Hijal, Laurie Hendren,
Alvin Leung, Justin Wainberg, Marya Sawaf, Maxim Gorshkov, Robert
Maglieri, Mehryar Keshavarz, John Kildea,
Predicting waiting times in Radiation Oncology using machine
learning,
18th International Conference on
the use of Computers in Radiotherapy, London, England, June 2016.
(Poster presentation)
- David Hererra, Ackeem Joseph,
Tarek Hijal, Laurie Hendren, Alvin Leung, Marya Sawaf, Maxim Gorshkov,
Mehryar Keshavarz, John Kildea,
Opal: the Oncology Patient Application,
18th International Conference on the use of
Computers in Radiotherapy, London, England, June 2016. (Oral
presentation)
- Rosana Faria, Susan Law, Tarek Hijal, Joan Zidulka, Manon Allard,
George Michaels, Monique Ferland, Danielle Potas, Laurie Hendren,
Givette Volet, Klaudijus Kuncevicius, and Mona Magalhaes,
Looking Forward: Co-designing a cancer survivorship program,
poster presentation, Canadian Association for Health Services and Policy
Research (CAHSPR), May 2016. (Poster presentation)
- J. Kildea, L. Hendren, A. Joseph, D.
Herrera, M. Gorshkov, M. Keshavarz, A. Leung, M. Sawaf, J. Wainberg and
T. Hijal,
Realistic knowledge-based waiting times for radiotherapy patients -
addressing the pain of waiting,
Accreditation Canada's 5th Annual Quality Conference, Montreal, April
2016. (Poster presentation)
- Rosana Faria, Susan Law, Tarek Hijal, Joan Zidulka, Manon Allard,
George Michaels, Monique Ferland, Danielle Potas, Laurie Hendren,
Givette Volet, Klaudijus Kuncevicius, and Mona Magalhaes,
Looking Forward: Intervention design and pilot study of a
supportive re-entry program tailored by and for patients completing
cancer treatment, poster presentation, Canadian Association of
Psychosocial Oncology (CAPO), April 2015. (Poster presentation)
In addition to publications, the kind of experimental work I do also
requires the development of large and complex software systems. It is
my view that the development of such systems in an integral part of the
design of new analyses and approaches, and the design of such systems is
often a research project itself. Such an experimental system is
of critical importance in demonstrating the usefulness of a technique
or approach and also can provide the foundations for future research
both in my own research group and for research groups around the world.
Thus, whenever possible, we provide our tools under open source
licenses.
- Opal, a patient portal designed to empower patients with their medical
information at the McGill University Health Centre. Co-led with John Kildea
(Medical Physics) and Tarek Hijal (Radiation Oncology).
opalmedapps.com
- McLAB, a compiler and VM toolkit for scientific languages,
including a front-end toolkit, a VM with JIT and a MATLAB-to-Fortran
compiler.
http://www.sable.mcgill.ca/mclab.
The McLab framework is a project for developing both
toolkits and new analyses and techniques for dynamic scientific
programming languages like Matlab. There is currently a real lack of
such toolkits and it is our hope that by providing such a framework we
can stimulate academic research into dynamic scientific language design and
associated virtual machines and compilers.
Currently the framework is being
used by my research group and a graduate class. We have
released the first version of the framework under an open source
license. We have also released the
AspectMatlab compiler.
- abc, the AspectBench Compiler, developed with Oxford, Aarhus and
Waterloo.
http://www.sable.mcgill.ca/abc/.
The abc framework has become a popular framework for
researchers designing and implementing new extensions to the
aspect-oriented language AspectJ. Some of these extensions, which are
also publicly-available are listed at
http://www.sable.mcgill.ca/abc/projectsexts.
- Soot, a Java Bytecode Analysis and Transformation Framework.
https://sable.github.io/soot/.
Soot is probably our most widely used toolkit. It is not
uncommon to see at least a couple of papers at each compiler conference
which have used Soot as their main toolkit. It is also quite often used
in advanced compiler courses. A wiki listing some users is found at
https://svn.sable.mcgill.ca/wiki/index.cgi/SootUsers. Although
this is just a voluntary list (and thus does not include many users) it
does give a good flavour of the wide variety of research that uses Soot.
- Metalexer, an extensible lexer generator,
http://www.sable.mcgill.ca/metalexer.
Metalexer was developed to fulfill the need for a lexer generator that
was modular and could be used naturally in extensible toolkits (like
McLab and abc).
- SableCC, the Sable Research Group's Compiler Compiler.
SableCC was started as the M.Sc. research project of Etienne Gagnon.
Etienne is now a professor at UQAM and continued the development. His
current web site is http://sablecc.org.
- SableVM, a portable Java Virtual Machine,
http://www.sablevm.org/.
- Ashes, a collection of Java Benchmarks and Scripts,
http://www.sable.mcgill.ca/ashes/.
- EVolve, an Extensible Software Visualization Framework,
http://www.sable.mcgill.ca/evolve/.
- STEP, an Extensible Program Trace Encoding,
http://www.sable.mcgill.ca/step/
- PTA-BDD, a Points-to Analysis using BDDs,
http://www.sable.mcgill.ca/bdd/
- Paddle, a BDD-based Context-Sensitive Interprocedural Analysis for
Java,
http://www.sable.mcgill.ca/paddle/
- Dava, a Tool-Independent Decompiler for Java,
http://www.sable.mcgill.ca/dava/
- JBCO, the Java Bytecode Obfuscator,
http://www.sable.mcgill.ca/JBCO/
- AIA, Aspect Impact Analysis,
http://www.sable.mcgill.ca/aia/
- Invited speaker,
Developing Opal, an App for Cancer Patients, as a Computer Scientist and
Cancer Patient, SPLASH-I track, SPLASH 2018, November 2018.
- Invited speaker (with J. Kildea and T. Hijal), Implementation of a
waiting room management system with a mobile application and portal for oncology
patients, Innoveaction - Réinvente la Santé, November 2018.
- Invited speaker, 3rd Annual Rossy Cancer Network Retreat,
How can information technology be used to
support implementation of patient-reported outcome measures?, November 2017.
- Invited speaker, Patient-held data to facilitate the care pathway and
quality control, Quality in action in a networked system,
Conference of the MUHC-ISAI, October 2017.
- Invited speaker, Opal - the Oncology Portal and Application,
with John Kildea, Annual meeeting of the Montreal General Hospital Board
and Foundation, June 2016.
- Invited speaker, Opal - the Oncology Portal and Application,
with John Kildea and Tarek Hijal, Meeting of the McGill University
Health Centre Board of Directors, April 2016.
- Invited speaker, Example Patient Partnerships that Work,
Canadian Organization of Medical
Physicists, 2016 Winter School, Montebello, QC, February 2016.
- Invited speaker, Distinguished Lecture Series, Compiler Tools
and Techniques for MATLAB, Virginia Tech, August 2015.
(https://www.cs.vt.edu/DistinguishedLectures/hendren)
- Invited speaker, St. Mary's Hosptial Research Centre, Perspectives of a Breast Cancer Patient: Goldilocks and the Baby Bears,
May, 2015.
- Invited speaker, Distinguished Lecture Series, Compiler Tools
and Techniques for MATLAB, University of Waterloo, March 2015.
(https://cs.uwaterloo.ca/events/dls-laurie-hendren-compiler-tools-and-techniques-matlab)
- Invited speaker (with Tarek Hijal and John Kildea), Addressing the Pain of Waiting - a Health Informatics Approach,
Oncology Grand Rounds, MUHC, March 2015.
- Invited speaker, Perspectives of a Radiation Oncology Patient,
Canadian Organization of Medical
Physicists, 2015 Winter School, Kelowna, BC, February 2015.
- Invited speaker, Experiences as a cancer patient, McGill
Systems Biology Training Program, November 2014.
- Invited speaker, McLab: Enabling compiler research for
MATLAB, ECOOP Program Committee Workshop, University of Kent, March 2014.
- Invited speaker, McLab: Enabling compiler research for
MATLAB,NSF DALI Workshop on Dynamic Languages for
Scalable Data Analytics, co-located with SPLASH 2013, November 2013.
- Invited speaker, Workshop on Implementation, Compilation,
Optimization of Object-Oriented Languages, Programs and Systems
(ICOOOLPS '12), co-located with ECOOP 2012, June 2012.
- Keynote speaker, 10th Workshop of Compiler-Driven Performance, November
10, 2011.
- Keynote speaker, International Symposium on Software Testing and
Analysis, July 2011. See
http://issta11.unl.edu/program/invited-speakers/.
- Leverhulme Lecture Series, University of Oxford. For complete links and
slides see http://www.sable.mcgill.ca/mclab/leverhulme.html.
- Compiler Tools for MATLAB, June 10, 2011.
- Language Extensions for MATLAB, June 17, 2011.
- McLAB: A Toolkit for Static and Dynamic MATLAB Compilers, July 1,
2011.
- Invited speaker, Imperial College London LogIC Seminar, June 26 2011. See
http://www.doc.ic.ac.uk/~bl610/logICseminar/.
- Invited speaker, University of Cambridge Computing Laboratory Colloquium,
June 15, 2011.
- Moderator, Panel on Teaching Programming Language Design and
Implementation ... What? To Whom? How?, International Conference on
Programming Language and Implementation (PLDI 2011), June 8, 2011.
- Tutorial presentation, Introduction to MATLAB, a compiler and VM
framework for MATLAB, presented by Laurie Hendren, Rahul Garg and Nurudeen
Lameed, PLDI 2011, June 2011. See
http://www.sable.mcgill.ca/mclab/pldi_tutorial.
- Invited speaker, University of Edinburgh Informatics, Institute for
Computing Systems Architecture Seminar, June 14, 2011. See
http://wcms.inf.ed.ac.uk/icsa/events/laurie-hendren-compiler-tools-for-matlab.
During this visit I also was asked to create a podcast, see
http://computersciencepodcast.com/podcasts.html.
- University of Herfordshire, Computer Science Research Colloquium, May 31,
2011. See http://cs-colloq.feis.herts.ac.uk/hendren2011.txt.
- University of Kent, School of Computing Colloquium, December 14, 2010.
See http://www.cs.kent.ac.uk/dept_info/seminars/2010_11/seminars.html.
- Invited speaker, Pointer Analysis - Experiences and Future
Challenges, Visions of Computer Science, British Computing Society, September 2008.
- Speaker and Panel Chair, The Future of Compiler Education,
Workshop of Future Directions of Compiler Research, University of
Southern California, Information Sciences Institute, CA, USA, Feb 2007.
- Keynote speaker, Optimizing AspectJ with abc,
MASPLAS 2006, Rutgers, December 2006.
- Harvard University, Colloquium, Optimizing AspectJ with abc,
December 1, 2005.
- Tutorial presentation, abc: A Workbench for Aspect-Oriented
Programming Language Research, presented by Oege de Moor (Oxford),
Laurie Hendren (McGill), Sascha Kuzins (Oxford) and
Damien Sereni (Oxford), AOSD 2005, March 2005.
- Speaker, abc - The AspectBench Compiler,
3rd Workshop of Compiler-Driven Performance, in association with
CASCON 2004, October 2004.
- Cambridge University, Departmental Seminar,
Soot, Points-to Analysis and BDDs, November 21, 2003.
- Oxford University, Computing Laboratory Seminar,
Soot, Points-to Analysis and BDDs, November 25, 2003.
- Series of tutorials on Soot, Oxford Computing Lab, September to
October 2003.
- Tutorial presentation, Soot, a Tool for Analyzing and Transforming
Java Bytecode, presented by Laurie Hendren, Patrick Lam, Jennifer Lhotak,
Ondrej Lhotak and Feng Qian, presented at PLDI 2003, June 2003.
- Université du Québec à Montréal, Departmental Research Seminar,
Optimizing Compilers: How good are they?, March 21, 2003.
- Speaker,
Soot - a Java bytecode analysis and transformation toolkit,
Dagstuhl Seminar on Program Analysis for Object-Oriented Evolution,
February 2003.
- Keynote Lecture in Computer Science, APICS Math/Stat and CS Meeting,
Mount Allison University, presentation on Optimizing Compilers: How
good are they?, October 19, 2002.
- Oxford University, Computing Laboratory, Seminar on
Analysing and Transforming Java Bytecode using the Soot Framework,
May 2002.
- University of Alberta, Distinguished Lecturer Series,
presentation on Analyzing and Decompiling Java Bytecode, January 2002.
- IBM Watson Lab, invited talk,
presentation on Optimizing Java Bytecode using Soot, February 2001.
- Speaker, Practical Virtual Method Call Resolution
for Java, Dagstuhl Seminar on the Effective Implementation of
Object Oriented Programming Languages, November 2000.
- University of Alberta, Department of Computer Science,
Departmental Seminar, presentation on Optimizing Java Bytecode,
February 2000.
- Speaker, Tools and Analyses for Java Bytecode,
Dagstuhl Seminar on Program Analysis, Dagstuhl, Germany, April 1999.
- Kansas State University, Department of Computing and Information Sciences,
Distinguished Lecturer Series, presentation on Optimizing and
Parallelizing Compilers: How good are they?, November 1998.
- Kansas State University, Department of Computing and Information Sciences,
presentation as part of the mini-workshop on Program Analysis and Model
Checking, The Sable Framework: tools and analyses for Java, November 1998.
- Rutgers University, Departmental Seminar,
presentation on Putting Pointer Analysis to Work, July 1998.
- Speaker, Putting Pointer Analysis to Work
Dagstuhl Seminar on Programs with Recursively Defined Data Structures,
Dagstuhl, Germany, April 1998.
- Speaker,
Compiling for Distributed-Memory Architectures (EARTH-C),
Dagstuhl Seminar on Programs with Recursively Defined Data Structures,
Dagstuhl, Germany, April 1998.
- Chalmers University, Functional Programming Languages Seminar,
presentation on
Compiling Java: Can we have the elegance of Java and the speed of C?,
Gothenburg, Sweden, May 1997.
- Aarhus University, Departmental Lecture Series, presentation on
Optimizing and Parallelizing Compilers: How good are they?, Aarhus,
Denmark,March 1997.
- Aarhus University, BRICS (Basic Research in Computer Science) Seminar,
presentation on
Compiling Java: Can we have the elegance of Java and the speed of C?,
Aarhus, Denmark, February 1997.
- University of Toronto and IBM Toronto,
research presentation on Pointer
Analysis in the McCAT C Compiler, Toronto, Ontario, April 1996.
- INRIA, Rocquencourt, seminar on Pointer Analysis in the
McCAT C Compiler, Rocquencourt, France, January 1996.
- Queen's University 25th Anniversary Conference, High-performance
Compilers for High-performance Computers, Kingston, Ontario, June 1994.
- Intel (Compiler Research Group), research meetings and an
extended talk on Interprocedural Analysis of Pointer Data Structures
and Intermediate Representations, San Jose, California, February 1993.
- Cornell University, A series of talks on: (1)
An Introduction to Pointer Analysis, (2) Analyzing Imperative
Programs with Dynamically-Allocated Pointer Data Structures, and
(3) Improving the Analysis of Pointer Data Structures, and
(4) a new SPMD (Single Program Multiple Data) model for programs with
pointer data structures, September 1992.
- Invited Lecturer, The Analysis and Transformation of Programs
with Pointer Data Structures, The Leonardo Fibonacci Institute for
the Foundations of Computer Science, Course
on Parallelizing Compilers, Trento, Italy, June 29-July 3, 1992.
- Stanford University, A series of three talks: (1)
An Introduction to Pointer Analysis, (2) Analyzing Imperative
Programs with Dynamically-Allocated Pointer Data Structures, and
(3) Improving the Analysis of Pointer Data Structures,
March 1992.
- Invited Speaker, Designing Imperative Programming Languages for
Analyzability: Parallelism and Pointer Data Structures, Workshop on
Compilation of Languages for Parallel Computers (1991 International
Logic Programming Symposium), San Diego, California, October 1991.
- Boston University, Parallelizing Programs with Recursive
Data Structures, April 1991.
- University of Montreal, Parallelizing Programs with
Recursive Data Structures, March 1991.
- Princeton University, Parallelizing Programs with Recursive
Data Structures, February 1991.
- Rutgers University, Alias Analysis in the Presence of
Dynamically-Allocated Pointer Data Structures, February 1991.
- Speaker, Parallelizing Imperative Programs with
Recursive Pointer Data Structures,
Workshop on Parallelism in the Presence of Pointers
and Dynamically-Allocated Objects, Sponsored by the Supercomputing
Research Center, Xerox Training Center, Leesburg, Virginia, March 1990.
- Departmental colloquia, given as part of a job interview,
M.I.T (March 1990), McGill (March 1990),
University of Waterloo (March 1990), Queen's University (March 1990),
Syracuse University (March 1990),
Carleton University (March 1990),
University of British Colombia (February 1990),
University of Alberta (February 1990),
York University (February 1990), and
Penn State University (November 1989).
- Invited Speaker, Interference Analysis Tools and Parallelization
Techniques for C Programs with Recursive Data Structures,
Workshop on Scientific and
Numerical Programming in C (Supercomputing '89), Reno, Nevada, November 1989.
I have taught courses at all levels from introductory programming
courses for a broad audience to very specialized graduate courses.
I take my teaching duties as seriously as my research duties and find
that the research inspires new content and projects for my courses and
conversely sometimes the courses inspire new research projects.
- Co-ordinator, course designer, and instructor for COMP 202, Introduction
to Computer Science I, McGill University.
- Instructor for course COMP 203, Introduction to Computer
Science II (Algorithms and Data Structures), McGill University.
- Course Designer and Instructor for COMP 303, Programming Techniques,
McGill University.
- Course designer and instructor for COMP 520, Compiler Design,
McGill University.
This course was designed in cooperation with
Michael I. Schwartzbach at Aarhus University. It
focuses on teaching the principles of compilers as they relate
to state-of-the-art applications including the Java programming
language, and world wide web documents with state. The course has
been adopted by many other institutions. I have recently updated the
course to include two possible projects, a subset of the Go programming
language, and a domain-specific language I designed called OncoTime.
- Instructor and course designer for COMP 621, Optimizing Compilers,
McGill University.
- Instructor and course designer for COMP 762, Special Topics,
Advanced Static and Dynamic Compiler Techniques.
- Instructor and course designer for course COMP 763, Special Topics,
Advanced Seminar on Compilation and Run-time Techniques.
- Instructor for the course CS 310, Data Structures
and Algorithms, Cornell University.
- Project Instructor for the course CS 412, Compiler
Construction, Cornell University.
- Instructor for course OPC, Optimizing and Parallelizing Compilers,
Aarhus University, Denmark.
Typically I have a group of 7-10 graduate students and additionally
supervise a large number of undergraduate research projects, both within
compilers and health informatics.
There are usually
significantly more M.Sc. students than Ph.D. students. The M.Sc. students are
strong students, they complete quite impressive M.Sc.
theses, and most of them co-author at least one research paper.
However, many such students prefer to go on to industrial jobs after
their M.Sc. studies and their graduate studies is often very useful for
them in finding exciting employment opportunities and this also provides
industry with well qualified students.
This mix of students, with a considerable number of M.Sc. students,
means that my research projects must be quite structured, so that
several M.Sc. theses can fit together towards a larger overall goal.
Many of my students have gone on to work at places
like IBM Toronto and quite a few have been key players in the compiler
groups there, participating in the design and implementation of
important new projects.
I am also quite proud of my students who have gone on the be faculty members.
Currently Etienne Gagnon is at UQAM, Bruno Dufour was at the University
of Montreal, Ondrej Lhotak is at Waterloo and Patrick Lam is at
Waterloo. This means that there are now four further active compiler
groups at Canadian Universities, leading to more training of qualified
compiler people.
Refer to Table 1 for a list of students I
currently supervise.
Refer to
Tables 2, 3 and 4 for a
summary of past students and postdocs supervised.
Table 1:
Current Graduate Students
Current Graduate Students |
Alexander Krolik |
16- |
Ph.D. |
GPU JIT compiler (co-advised
Verbrugge) |
Hanfeng Chen |
15- |
Ph.D. |
Combining array languages and
in-memory databases (co-advised Kemme) |
Prabhjot Sandhu |
15- |
Ph.D. |
Efficient Sparse Matrices for the
Web (co-advised Verbrugge) |
Erick Lavoie |
13- |
Ph.D. |
Personal Volunteer Computing (part-time) |
Hongji Chen |
18- |
M.Sc. |
Optimization framework for WebAssembly |
David Herrera |
17- |
M.Sc. |
Using WebAssembly for efficient execution
of array-based prorams |
Steven Thephsourinthone |
16- |
M.Sc. |
Type inference for MATLAB |
Faiz Khan |
14- |
M.Sc. |
Automatic input and test generation for
MATLAB (part-time) |
|
Recently Graduated Students |
Rahul Garg |
09-15 |
Ph.D. |
A toolkit for building dynamic
compilers for array-based languages targeting CPUs and GPUs |
Nurudeen Lameed |
08-13 |
Ph.D. |
Dynamic compiler optimization
techniques for MATLAB |
Vincent Foley |
13-16 |
M.Sc. |
Static translation of MATLAB to
JavaScript |
Ismail Badawi |
12-15 |
M.Sc. |
McIDE: a MATLAB IDE powered by
dynamic analysis |
Sameer Jagdale |
12-15 |
M.Sc. |
Velocty: An Optimizing Compiler
for MATLAB and Python |
Sujay Kathrotia |
12-15 |
M.Sc. |
McNumJS: A JavaScript Library for
Numerical Computations |
Andrew Bodzay |
11-14 |
M.Sc. |
AspectMatlab++: Developing an
Aspect-oriented Language for Scientists |
Mathieu Dubet |
11-14 |
M.Sc. |
Efficient JIT Compilation of MATLAB |
Xu Li |
11-14 |
M.Sc. |
Mc2For: A MATLAB to Fortran95 Compiler |
Vineet Kumar |
11-14 |
M.Sc. |
MiX10: Compiling MATLAB to X10 for
High Performance |
|
|
|
|
Table 2:
Graduated M.Sc., Ph.D. Students and Post-Doctoral Researchers
(2010 to present)
Post Doctoral Researchers (2010-present) |
Guang Hu |
13-14 |
Postdoc |
Translating MATLAB to Java and
Android bytecode |
|
Graduated Ph.D. Students (2010-present) |
Rahul Garg |
09-15 |
Ph.D. |
A toolkit for building dynamic
compilers for array-based languages targeting CPUs and GPUs |
Nurudeen Lameed |
08-13 |
Ph.D. |
Dynamic compiler optimization
techniques for MATLAB
|
|
Graduated M.Sc. Students (2010-present) |
Vincent Foley |
13-16 |
M.Sc. |
Static translation of MATLAB to
JavaScript |
Ismail Badawi |
12-15 |
M.Sc. |
McIDE: a MATLAB IDE powered by
dynamic analysis |
Sameer Jagdale |
12-15 |
M.Sc. |
Velocty: An Optimizing Compiler
for MATLAB and Python |
Sujay Kathrotia |
12-15 |
M.Sc. |
McNumJS: A JavaScript Library for
Numerical Computations |
Andrew Bodzay |
11-14 |
M.Sc. |
AspectMatlab++: Developing an
Aspect-oriented Language for Scientists |
Mathieu Dubet |
11-14 |
M.Sc. |
Efficient JIT Compilation of MATLAB |
Xu Li |
11-14 |
M.Sc. |
Mc2For: A MATLAB to Fortran95 Compiler |
Vineet Kumar |
11-14 |
M.Sc. |
MiX10: Compiling MATLAB to X10 for
High Performance |
Soroush Radpour |
09-11 |
M.Sc. |
Program Understanding and Refactoring
Tools for MATLAB |
Anton Dubrau |
09-11 |
M.Sc. |
Advanced Techniques for Matlab-to-Fortran Translation |
Jesse Doherty |
08-11 |
M.Sc. |
McSAF: An Extensible Static
Analysis Framework for the MATLAB Language |
Amina Aslam |
08-10 |
M.Sc. |
McFLAT: A Profile-based Framework for MATLAB
Loop Analysis and Transformations |
Toheed Aslam |
08-10 |
M.Sc. |
AspectMatlab: An Aspect-Oriented
Scientific Programming Language |
|
|
|
|
Table 3:
Graduated M.Sc., Ph.D. Students and Post-Doctoral Researchers
(2000 to 2009)
Post Doctoral Researchers (2000-2009) |
Patrick Lam |
2007 |
Postdoc. |
Efficient Runtime Monitors |
Antoine Mine |
2005 |
Postdoc. |
Purity Analysis |
|
Graduated Ph.D. Students (2000-2009) |
Eric Bodden |
06-09 |
Ph.D. |
Verifying Finite-State Properties of
Large-Scale Programs |
Ondrej Lhotak |
03-06 |
Ph.D. |
Program Analysis Using Binary Decision Diagrams |
Feng Qian |
01-05 |
Ph.D. |
Runtime techniques and interprocedural analysis in Java Virtual Machines |
Etienne Gagnon |
98-02 |
Ph.D. |
A Portable Research Framework for the Execution of Java Bytecode |
Yingchun Zhu |
94-00 |
Ph.D. |
Compiling for Multi-threaded Architectures |
|
Graduated M.Sc. Students (2000-2009) |
Maxime Chevalier-Boisvert |
07-09 |
M.Sc. |
McVM - an Optimizing
Virtual Machine for the MATLAB Programming Language
(cosupervised with Clark Verbrugge) |
Jun Li |
07-09 |
M.Sc. |
McFOR: a MATLAB-to-Fortran95 Compiler |
Andrew Casey |
07-09 |
M.Sc. |
The MetaLexer Lexer Specification
Language |
Dehua Zhang |
06-08 |
M.Sc. |
Aspect Impact Analysis |
Michael Batchelder |
05-06 |
M.Sc. |
Java Bytecode Obfuscation |
Nomair Naeem |
03-06 |
M.Sc. |
Programmer-friendly decompiled Java |
Jingwu Li |
04-06 |
M.Sc |
Improving the Compiling Speed of the
AspectBench Compiler (project) |
Jennifer Lhotak |
04-05 |
M.Sc. |
Visualization Tools for Optimizing Compilers |
Chris Goard |
02-05 |
M.Sc. |
Measuring and Improving the Runtime Behaviour of AspectJ Programs |
Navindra Umanee |
01-05 |
M.Sc. |
Shimple: An Investigation of Static Single Assignment Form |
Anatole Le |
02-05 |
M.Sc. |
Using Inter-Procedural Side-Effect Information in JIT Optimizations |
David Belanger |
02-05 |
M.Sc. |
SableJIT: a retargetable just-in-time compiler (co-supervised with E. Gagnon) |
Bruno Dufour |
02-04 |
M.Sc. |
Objective Quantification of Program Behaviour Using Dynamic Metrics (co-supervised with C. Verbrugge) |
Marc Berndl |
01-03 |
M.Sc. |
Dynamic Profiling and Trace Cache Generation for a Java Virtual Machine |
John Jorgensen |
00-03 |
M.Sc. |
Exceptions in Java (M.Sc. Project) |
Ondrej Lhotak |
01-03 |
M.Sc. |
SPARK: A flexible points-to analysis framework for Java |
Rhodes Brown |
00-03 |
M.Sc. |
STEP: A Framework for the Efficient Encoding of General Trace Data |
Jerome Miecznikowski |
99-03 |
M.Sc. |
New algorithms for decompiling Java and their implementation in Soot |
Qin Wang |
01-02 |
M.Sc. |
EVolve: An Extensible Software Visualization Framework (co-supervised with K. Driesen) |
David Eng |
00-02 |
M.Sc. |
Combining Static and Dynamic Data in Code Visualization |
Feng Qian |
99-01 |
M.Sc. |
A Comprehensive Approach to Array Bounds Check Elimination in Java |
Raja Vallée-Rai |
97-00 |
M.Sc. |
Soot: An Optimization Framework for Java Bytecode |
Chrislain Razafimahefa |
96-00 |
M.Sc. |
Practical Side-effect analysis for Java |
Table 4:
Graduated M.Sc., Ph.D. Students and Post-Doctoral Researchers
(1990-1999)
Post Doctoral Researchers (1990-1999) |
Marc Pouzet |
95-96 |
Postdoc. |
Instruction Scheduling via Fold/Unfold |
|
Graduated Ph.D. Students (1990-1999) |
Rakesh Ghiya |
96-99 |
Ph.D. |
Putting Pointer Analysis to Work |
|
Graduated M.Sc. Students (1990-1999) |
Vijay Sundaresan |
97-99 |
M.Sc. |
Practical Techniques for Virtual Call Resolution in Java |
Etienne Gagnon |
94-99 |
M.Sc. |
Sable CC Framework |
Laleh Tajrobehkar |
97-99 |
M.Sc. |
JJC - A Java to Jimple Compiler (M.Sc. Project) |
Phong Co |
95-99 |
M.Sc. |
Obfuscating Java Bytecode (M.Sc. Project) |
Greg Ward |
93-98 |
M.Sc |
Bibliography Tool (M.Sc. Project) |
Emily Ezust |
94-97 |
M.Sc. |
Pre-spilling using interval graphs (M.Sc. Project) |
C. Lapkowski |
94-97 |
M.Sc. |
Symbolic Dependence Tests and Extended SSA Numbering |
Guirlyn Olivar |
95-97 |
M.Sc. |
Fast Points-to Analysis for McCAT (M.Sc. Project) |
Shereen Ghobrial |
95-97 |
M.Sc. |
Shared Variables in EARTH-C |
Jean M. Roque |
94-95 |
M.Sc. |
Implementation of Independent Loops in High Performance C (co-supervised) |
Yingwei Zhang |
93-95 |
M.Sc. |
Instruction Scheduling and Register Allocation for the McCAT Compiler |
Ana Maria Erosa |
93-95 |
M.Sc. |
A Goto-elimination Method and its Implementation for the McCAT C Compiler |
Justiani |
93-95 |
M.Sc. |
A Practical Array Dependence Analysis for an Optimizing/Parallelizing C Compiler |
Jing Wu |
91-95 |
M.Sc. |
A Parallel Flow Analysis Method on Structured Programming Languages |
Rakesh Ghiya |
93-95 |
M.Sc. |
Practical Techniques for Interprocedural Heap Analysis |
Chris Donawa |
92-94 |
M.Sc. |
The Design and Implementation of a Structured Backend for the McCAT C Compiler |
Maryam Emami |
91-93 |
M.Sc. |
A Practical Interprocedural Alias Analysis for an Optimizing/Parallelizing C Compiler |
Sumithra Jagannath |
90-92 |
M.Sc. |
Measuring Dynamic Program Characteristics (M.Sc. Project) |
Matilda Leung |
90-92 |
M.Sc. |
The Design and Implementation of the LAST Interpreter (M.Sc. Project) |
Weiren Ding |
90-92 |
M.Sc. |
SELSYN-C: A Self-Synchronizing Parallel Programming Language |
Bhama Sridharan |
90-92 |
M.Sc. |
An Analysis Framework for the McCAT Compiler |
ZhiPing Qiu |
89-92 |
M.Sc. |
The Design and Implementation of a Compiler for Conformance Testing |
- Irene Wood, COMP 400, Fall 2018, Physician visualization of
patient-reported
outcomes, (co-advised with J. Kildea)
- Jordan Itzkovitz and Noah Levine, ECSE 456A, Fall 2018,
Extended functionality for Opal Questionnaires.
- Xuer Liang, COMP 396, Fall 2018,
Adding Caregiver-specific educational materials to the Opal Caregiver
Module
- Vince Porporino, COMP 400, Fall 2018, Extending Opal Questionnaires
to
handle conditional flow and other extensions
- Sandrine Monfourny-Daigneault, COMP 400, Fall 2018, Personalized
educational material about chemotherapy in the Opal mobile app
- Yunwen Ji, COMP 402, Fall 2018 and Winter 2019, Capturing key
personalized information during the first medical oncology consult for breast cancer patients
- Charlotte Ding, COMP 396, Winter 2018, Project Behave: A Web Application
for Data Analysis
- Ariane Schang, COMP 400, Winter 2018, Handling Conditional Questions
in Patient Questionnaires
- Daniel Lutes, COMP 396, Winter 2018, Project Trigger: Tracking
Patient Reported Outcomes
- Hongji Chen, COMP 400, Winter 2018, A Domain-specific Language for
Peephole Optimization in the JOOS Compiler
- James Mesich, COMP 396, Winter 2018, Project Zombie: Automated
Testing of the Opal Application
- James Brace, COMP 400, Winter 2018, Exploring the Performance of
Deep Learning in Modern Web Browsers
- Shenyang Huang, COMP 396, Winter 2018, Enhancements of the Caregiver
App, a companion to the Opal Patient App
- Zhengbo Wang, COMP 396, Winter 2018, Refining questionnaire
visualizations for the Opal App
- Zhaning Zhang, COMP 396, Winter 2018, Project QALG: Defining,
Storing and Applying Algorithms of Questionnaires
- Amior Schmidt, COMP 396, Fall 2017, Predicting Late Arrivals with
Machine Learning
- Anna Jolly, COMP 396, Fall 2017, Redesigning Questionnaires in the
Mobile Application Opal, co-supervised by Tarek Hijal.
- Sahas Leelodharry, COMP 396, Fall 2017, Logging system for Opal
patient mobile-application
- Jeremie Poisoon, COMP 400, Fall 2017, Implementation of a feedback
mechanism for patients in OPAL questionnaires
- Martina Marien, COMP 400, Fall 2017, Displaying Patient-reported
Outcomes as Graphs in the Opal app, co-supervised with Tarek Hijal.
- Josh Liu, COMP 400, Fall 2017, Oncology Buddies
- DoYeon Kim, Summer Research (NSERC), Machine Learning for estimating
early patients, co-supervised with John Kildea
- Zaid Yahya, Summer Research (ARIA), Caregiver App
- Michael Medeiros Charbonneau, Summer Research (NSERC), Caregiver App
- Manel Charouni, Summer Research (Mitacs), New Functionality in Opal
- Wen Quan Li, Summer Research (SURA), Waiting time visualizations
- Hongji Chen, Summer Research, Developing a compiler for HorseIR, an
intermediate representation for array-based languages and relational databases
- Qi Chen, COMP 396, Winter 2017, A companion app of Opal:
Caregiver app prototyping
- Xin Ton Wang, COMP 396, Winter 2017, Data analysis for
chemotherapy waiting time prediction
- Victor Barbaros, COMP 396, Winter 2017, Opal MD: Doctor's app
in the Opal universe
- Marc Yang, COMP 396, Winter 2017, Enhancement on patients' learning
experience through virtual reality
- DoYeon Kim, COMP 396, Winter 2017, Interactive virtual reality experience
for oncology patients
- Bejal Lewis, COMP 401, Fall 2016, Historical views of
responses to questionnaires
- Lam Uong, COMP 401, Fall 2016, Predicting waiting times for
consults
- Yuning Bie, COMP 401, Fall 2016, Integrating lab test results
with patient-friendly visualizations (cosupervised by Tarek Hijal)
- Di Zhang, COMP 396, Fall 2016, Identifying and explaining
outliers in radiation planning waiting times (cosupervised by Tarek
Hijal)
- Kayla Branson, COMP 396, Fall 2016, Patient Committee
functionality for OPAL
- Ayesha Krishnamurthy, COMP 396, Fall 2016, Patient Committee
functionality for OPAL
- Jérémie Poisson, COMP 396, Fall 2016, Wayfinding inside
university and hospital buildings
- Othniel Cundangan, COMP 396, Fall 2016, Effective Graphical
Interface for Code Translation using McLab Tools
- Ruichao Zhang, COMP 396, Fall 2016, Using Electron to make
McLab-Web into a multi-platform desktop application
- Marco Fasanella d'Amore di Ruffano, COMP 396, Summer 2016, Reference Compiler
and Specification for OncoTime
- Maxim Gorshkov, COMP 400, Summer 2016 SOCS wayfinder: Using a
Low Cost Solution for Geolocation and Pathfinding Indoors
- Ariana Aimani, COMP 401, Winter 2016, Predicting Treatment
Plan Sequences and Waiting Times in Breast, Lung and Prostate Cancers.
- Ariella Smofsky, COMP 396, Winter 2016, Mobile Application
Opal: Oncology Patient Forums and Experiences.
- Shahab Razavi, COMP 396, Winter 2016, Informing Patients via
Push Notifications: a Matter or Time.
- Evan Luc McIlroy, COMP 396, Winter 2016, A Doctor Application
for the MUHC.
- Valerie Saunders Duncan, COMP 396, Winter 2016, Octave Front-End
Compiler for the McLab Framework.
- Emily Sager, COMP 396, Winter 2016, Matlab Code Profiling
Available on the Web.
- Alex Krolik, COMP 396, Winter 2016, Array Dependence Testing
Framework for McLab.
- Emil Rose, COMP 396, Winter 2016, Redesigning and Expanding
McLab Web.
- Gabriel Cemaj Hochstein, COMP 400, Winter 2016, From command
line to the web: Trivializing the exposure of command line tools in a
web environment.
- Chloe Pou-Prom, COMP 401, Fall 2015, Visualization of Lab Results in
Opal, a Mobile Application for Oncology Patients.
- Deepanjan Roy, COMP 400, Fall 2015, McLab tools on the web.
- Zachariah Stevenson, COMP 396, Fall 2015, Automating Data
Visualization from a Hospital Database.
- Ching-Chia Wang, COMP 396, Fall 2015, Designing and
Prototyping an App for Radiation Oncology Physicians.
- Lei Lopez, COMP 400, Winter 2015, A
comparative study of the performance of PNaCL
- Yi Fan Zhou, COMP 396, Winter 2015, Visualizations of waiting
time for patients and doctors for Cancer Clinics
- Maxim Gorshov, COMP 396, Winter 2015, Waiting time prediction
by planning stage for radiation oncology patients
- Alvin Leung, COMP 396, Fall 2014, Analyzing Radiation
Oncology Data for Predication of Radiotherapy Wait Time
- Marya Sawaf, COMP 396, Fall 2014, How Much Longer?
Predicting Waiting Times in Hospital Waiting Rooms.
- Lei Lopez, COMP 396, Summer 2014, A Foundational Tutorial
on MATLAB
- Tristan Labelle, COMP 400, Winter 2014, Generating .NET from
MATLAB
- Faiz Ahmed Khan, COMP 400, Fall 2013, Parallelism in
JavaScript for Numerical Computing
- Mohammed Amine Sahibi, ECSE 498, Fall 2013 and Winter 2013, Tamer+: Generating a programmer-friendly intermediate representation of
MATLAB source code
- Kevin Samary, COMP 396, Fall 2012, A study of the efficiency
of vector computations in MATLAB
- Member of the Women@SOCS committee, 2006 to present.
- Member of the Tenure and Promotions committee (SOCS).
- Member of the M.Sc. committee (SOCS).
- Member of the ad-hoc committee on undergraduate enrollment and
recruitment, 2011 to 2015.
- Member of McGill University Senate, 2008-2010.
- Associate Dean (Academic), Faculty of Science, Sept. 2005 to Aug.
2014. Associated duties: Member of the Council of
Chairs, Vice-chair of the Academic Committee, Member of the University
site-licensing group,
Member of the University Admissions Committee (until 2009),
Member of the B.A.&Sc. PAC (Chair on alternate years),
Member of the Joint Faculty of Education
and Faculty of Science Committee, Member of the Academic Policy
Committee (2011-2014).
- Member of the M.Sc. program committee (2014-2015).
- Member of the Tenure and Reappointments Committee, School of
Computer Science, 2003 to 2009.
- Chair, Ad-hoc committee on undergraduate enrollment and
recruitment, 2007 to 2009.
- Member of the SOCS Advisory Committee, 2006-07.
- Chair of the Work Group on Womens' Academic Careers, Faculty of
Science, 2004-2006.
- Member of Ph.D. Committee, School of Computer Science, 2004-2005.
- Member of Software Engineering Committee, School of Computer Science, 2004-2005.
- Member of the Recruiting Committee, School of Computer Science, July 1997 to 2005.
- Chair of the Software Engineering Committee, School of Computer Science, 2002-2003.
- Member of the Faculty of Science Committee on Student Standing, 2002-2003.
- Member of the Faculty of Science Tenure Committee, 1999-2004.
- Member of the Faculty of Science, Leo Yaffe Award Committee.
(Decides upon the the recipient for the Leo Yaffe Award, given to the
best teacher in the Faculty of Science), 1999-2001.
- Member of the Undergraduate Committee, School of Computer Science, July 1999 to August 2002.
- Member of the M.Sc. Committee, January 1999-June 1999.
- Chair of the School of Computer Science Space Allocation Committee, July
1997 to September 1998.
- Chair of the Committee on Women in Engineering, Sept 1995 to July 1996.
- Member of the Board of the McGill Centre for Research and Teaching on Women
(Faculty of Engineering Representative), Sept 1994 to August 1995.
- Member of the Academic Committee, Faculty of Engineering, September 1994 to
July 1996.
- Member of the Academic Committee, Faculty of Science, September 1992 to October
1993.
- Member of the Administration/MAUT Joint Committee on
Intellectual Property (Software Sub-committee),
March 1992 to October 1993.
- Co-chair of the Undergraduate Committee, School of Computer Science,
June 1991 to July 1995.
- Member of the Undergraduate Committee, September 1990 to September 1998.
- Chair of the Minor Program in Computer Science
(Arts, Science, and Engineering), September 1990 to September 1998.
- Member of the Ad-hoc Committee on Women in Engineering, September 1990 to
June 1991.
- Member of the Editorial Board for ACM Books, Programming Languages,
2013 to 2017.
- Reviewing for a wide variety of journals and granting agencies.
I have been the Program Chair of the two major international compiler
conferences. I believe that I am the only Canadian to have been Program
Chair of both of them. Given the importance of conferences in my field
it is a challenging job which is given to the leaders in the field.
- ARRAY 2015, ACM SIGPLAN 2nd International Workshop on Libraries,
Languages and Compilers for Array Programming, Chair.
- Program Committee Chair, International Conference on
Compiler Construction, (CC 2008), 2007-2008.
- Program Committee Chair, SIGPLAN 2002 Conference on Programming
Language Design and Implementation (PLDI '02), 2002.
I been a program committee member on all of the big ACM conferences in
my field and related fields. Program committee membership usually
involves serious reviewing of 15-30 papers, reacting to author
responses, and participating in a program
committee meeting which is used to choose the papers to accept.
- ARRAY 2016, ACM SIGPLAN 3rd International Workshop on Libraries,
Languages and Compilers for Array Programming, member of Program
Committee.
- X10 2016, ACM SIGPLAN X10 Workshop, member of Program Committee.
- CC 2016, International Conference on Compiler Construction, member
of Program Committee.
- OOPSLA 2015, ACM International Conference on Programming Language
Design and Implementation, member of Program Committee.
- SOAP 2014, ACM SIGPLAN International Workshop on the State of the
Art in Java Program Analysis, member of the Program Committee.
- ARRAY 2014, ACM SIGPLAN International Workshop on Libraries,
Languages and Compilers for Array Programming, founding organizer.
- ECOOP 2014, European Conference on Object-Oriented Programming,
member of the Program Committee.
- PLDI 2013, ACM SIGPLAN Conference on Programming Language Design
and Implementation, member of the Program Committee.
- SOAP 2013, ACM SIGPLAN International Workshop on the State of the
Art in Java Program Analysis, member of the Program Committee.
- TACAS 2013, International Conference on Tools and Algorithms for the
Construction and Analysis of Systems, member of the Program Committee.
- ISSTA 2012, International Symposium on Software Testing and Analysis,
member of the Program Committee.
- SOAP 2012, ACM SIGPLAN International Workshop on the State of the
Art in Java Program Analysis, one of the founding organizers, and member of the Program Committee.
- PLDI 2012, ACM SIGPLAN International Conference on Programming Language Design
and Implementation, member of the Program Committee.
- OOPSLA 2011, ACM International Conference on Object-Oriented
Programming, Systems, Languages and Applications, member of the External Review
Committee.
- ASPLOS 2011, ACM Conference on Architectural Support for Programming
Languages and Operating Systems (ASPLOS '11), member of the External Review
Committee.
- International Conference on Compiler Construction, (CC 2010).
- ACM ASPLOS 2010 Conference on Architectural Support for
Programming Languages and Operating Systems (ASPLOS '10).
- ACM SIGPLAN 2009 Conference on Programming Language Design and
Implementation (PLDI '09).
- ACM SIGPLAN 2008 International Conference on Object-Oriented
Programming, Systems, Languages, and Applications (OOPSLA 2008).
- Seventh ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for
Software Tools and Engineering (PASTE 2007).
- Sixth International Conference on Aspect-Oriented Software Development,
(AOSD 2007).
- ACM SIGPLAN 2006 Conference on Programming Language Design and
Implementation (PLDI '06).
- ACM International Symposium on Memory Management (ISMM '04), 2004.
- 2nd eclipse Technology eXchange workshop (eTX), a
a satellite event of ETAPS 2004.
- ACM SIGPLAN-SIGACT Symposium on the Principles of Programming
Languages (POPL '02), 2002.
- International Static Analysis Symposium (SAS '01), 2001.
- Co-organizer of the Dagstuhl Seminar 451, Effective Implementation
of Object Oriented Programming Languages, November 2000.
- ACM SIGPLAN 2000 Conference on Programming Language Design and
Implementation (PLDI '00), 2000.
- IWAOOS '99 (Intercontinental Workshop on Aliasing in Object-Oriented
Systems), co-located with ECOOP (European Conference on Object-Oriented
Programming), 1999.
- ACM SIGPLAN-SIGACT Symposium on the Principles of Programming
Languages (POPL '99), 1999.
- International Static Analysis Symposium (SAS '98), 1998.
- Seventh IEEE International Conference on Computer Languages, 1998.
- 12th Annual International Symposium on High Performance Computing
Systems and Applications (HPCS '98), 1998.
- International Static Analysis Symposium (SAS '97), 1997.
- ACM SIGPLAN-SIGACT Symposium on the Principles of Programming
Languages (POPL '97), 1997.
- ACM SIGPLAN Conference on Programming Language Design and Implementation
(PLDI '95),
1995.
- International Conference on Compiler Construction, 1994.
- Fifth IEEE International Conference on Computer Languages, 1994.
- ATABLE '92, The Second International Workshop on Array Structures, 1992.
- ACM Transactions on Programming Languages and Systems
- The Journal of Parallel and Distributed Computing
- ACM Letters on Programming Languages and Systems
- Parallel Computing
- The Journal of Programming Languages
- IEEE Transactions on Parallel and Distributed Systems
- IEEE Transactions of Software Engineering
- IEEE Proceedings on Supercomputer Technology
- Parallel Processing Letters
- Information Processing Letters
- Micro-32, 32nd Annual International Symposium on Microarchitecture, 1999.
- The 11th Annual International Symposium on High Performance
Computing Systems
- Symposium on Parallel and Distributed Processing
- ACM International Conference on Architectural Support for
Programming Languages and Operating Systems (sponsored by the
ACM and in cooperation with the IEEE Computer Society).
- ACM International Conference on Supercomputing
- PARLE (Parallel Architectures and Languages Europe)
- ACM SIGPLAN Conference on Programming Languages and Implementation
- CONPAR92-VAPP V
- IEEE International Conference on Computer Languages
- International Conference on Distributed Computing Systems
- 17th Annual International Symposium on Computer Architecture
- International Conference of Parallel Processing
- Workshop on Languages and Compilers for Parallel Architectures
- CASCON
- Member of the SIGPLAN Awards Committee
- Member and Fellow ACM, and ACM SIGPLAN.
- Reviewer of grant proposals for:
NSERC (CANADA), FCAR (Quebec), INRIA (France), and NSF (USA).
- Past Member of the CC and ETAPS steering committees.
- Past Member of the PLDI steering committee.
- Past member of the Professional Activities Committee of SIGPLAN (ACM).
- Past Member of IEEE, IEEE Computer Society
- Member of the Appointments Board for the School of Mathematical
and Computing Sciences, Chalmers University of
Technology and Gothenburg University, Sweden, 1997.
I have had no interruptions in my research activity, although I was treated for
stage 2 breast cancer in 2014 and have been treated for metastatic breast cancer
since September 2016, which has reduced my ability to travel and to participate
in external activities.
This document was generated using the
LaTeX2HTML translator Version 2008 (1.71)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 -local_icons cv2.tex
The translation was initiated by Laurie HENDREN on 2019-02-17
Footnotes
- ... Justiani1
- Justiani has only one name.
Laurie HENDREN
2019-02-17