Refinement of Web Software Motivated by Real-World Patterns

Friday, April 18, 2014 - 8:45am - 10:00am
KEC 1007

Gregor Richards
PhD candidate
Secure Software Systems Lab
Purdue University

Abstract:
JavaScript is a highly popular, dynamic programming language. Although originally 
designed for small scripts, the scale of software written in JavaScript has grown, and 
with large-scale web applications has come demand for better analysis and software 
engineering tools. The tools, however, are frequently stifled by JavaScript's dynamicity. 
Reigning in JavaScript's more dynamic and inscrutable features yields maintainable, 
understandable code, which is then suitable for more powerful analyses. This talk 
discusses the Dynamics of JavaScript (DynJS) project, which has (1) studied how 
real-world programmers use JavaScript, (2) addressed the impact of these uses on 
analysis, and (3) produced tools and gradual typing extensions to JavaScript which allow 
dynamic code to be gradually made more maintainable, understandable and analyzable. In 
particular, tools for performance measurement and the elimination of "eval" 
will be discussed, as well as the LikeScript language, which extends!
 JavaScript to add gradual (and optional) type annotations, allowing 
programmers to document their intent while retaining compatibility with 
existing client code.

Biography: Gregor Richards is a PhD candidate at Purdue University's Secure Software Systems lab. His work focuses on creating tools to study how programming languages are used "in the wild" and rectify problems found there. He aims to strike a balance between the pragmatism of highly dynamic languages and the reliability of static ones. He is additionally interested in the development of system software, in particular virtual machines. When not studying software, he plays the accordion. These activities infrequently overlap.

_______________________________________________
Colloquium mailing list
[email protected]
https://secure.engr.oregonstate.edu/mailman/listinfo/colloquium

Reply via email to