Time+Place: Tuesday 13/05/2014 14:30 Room 337-8 Taub Bld.
Title: The rise of dynamic languages
Speaker: Jan Vitek https://www.cs.purdue.edu/homes/jv/
Affiliation: Purdue University
Host: Erez Petrank

Abstract:


Formal approaches to program correctness through static software
verification have influenced the design of programming languages,
programming models, and developer tools for the last fifty years. Yet static
techniques can only handle a small fraction of the programs written in the
languages they claim to target. By and large academic research in the field
has been about analyzing languages that all look and feel like Pascal;
languages with a static type discipline and with read-only programs. This
has very little to do with popular languages in use today. Languages like
JavaScript, Python, Lua and R where typing is dynamic and new behaviors can
be synthesized at runtime through powerful reflective programming
interfaces. Instead of embracing dynamism and trying to support popular
programming idioms, our community keeps proposing solutions that impose
static disciplines on programmers. We keep trying to find the inner Pascal
in every JavaScript. This is bound to drive practitioners away and ensure
our continued irrelevance. Are we bound to repeat history or is there a way
out?


Short Bio

Jan Vitek is a Professor of Computer Science at Purdue University and
University Faculty Scholar. Over the years, he worked on topics related to
programming languages, their design, use, and implementation. With Noble and
Potter, he proposed the notion of flexible alias control which became know
as Ownership Types. He led the Ovm project which produced the first
real-time Java virtual machine to be flight tested on a ScanEagle drone (he
claims no one was harmed). Outcomes of this project include the Schism
real-time garbage collector and the FijiVM - a production VM for embedded
systems. More recently, Jan worked on dynamic languages, trying to make
sense of JavaScript and to design a new language called, Thorn. Nowadays, he
spends his time with statisticians and data scientists. Jan believes that
his 2012 election as Chair of SIGPLAN was an accident; since has been busy
trying to rock the boat to ensure this does not happen again. In his spare
time, Jan enjoys organizing conferences and sitting on PCs (over 25 in the
last decade). He founded the MOS (mobile objects), IWACO (alias control),
STOP (gradual typing), and TRANSACT (transactional memory) workshop series.
He was the first program chair of VEE and chaired ESOP, ECOOP, Coordination
and TOOLS. He was the general chair of PLDI (in Beijing!), ISMM and LCTES.
He may still be sitting on the steering committees of ECOOP, JTRES, ICFP,
OOPLSA, POPL, PLDI, LCTES, ESOP.

Desserts will be served from 14:15
Lecture starts at 14:30