Waterloo Programming Languages Seminars
Previous terms:
S12
F11
S11
W11
F10
S10
F08
S08
W08
F07
W07
F06
S06
W06
Current term:
All are welcome.
Talk announcements are also posted to a public mailing list.
To volunteer to give a talk, contact Ondřej Lhoták.
Talks can range from informal to formal, and they can be
about any of the following:
- completed research
- research that you plan to start ("half-baked ideas" to be critiqued by your peers)
- interesting paper(s) you have read
The purpose is for us all to see what people are interested in,
and motivate discussions.
Abstracts
Approximate Call Graphs for JavaScript
Max Schaefer
Dec. 10, 2012
The rapid rise of JavaScript as one of the most popular programming languages
of the present day has led to a demand for sophisticated IDE support similar
to what is available for Java or C#. However, advanced tooling is hampered by
the dynamic nature of the language, which makes any form of static analysis
very difficult. We single out efficient call graph construction as a key
problem to be solved in order to improve development tools for JavaScript. To
address this problem, we present a scalable field-based flow analysis for
constructing call graphs. Our evaluation on large real-world programs shows
that the analysis, while in principle unsound, produces highly accurate call
graphs in practice. Previous analyses do not scale to these programs, but our
analysis handles them in a matter of seconds, thus proving its suitability for
use in an interactive setting.