- Laowai Guide
Dahl Nygaard Junior Award: Structured Aliasing
Aliasing, mutable state and stable object identities are inherent in object-oriented programming. It is a well-known fact that this troika of features cause problems for practitioners, tool developers and formalists alike. Patterns for aliasing, and patterns for structuring object graphs exist, and manipulating aliases and managing these graphs or graph-like structures are among the most frequent operations in object-oriented programming. Yet, mainstream languages provide only low-level support for these operations in reading and writing of variables. I will talk about my work on managing aliases in object-oriented systems, and talk about some recent efforts to unify these approaches to provide what we could call a theory and practise of structured aliasing.
Tobias Wrigstad is an assistant professor at Uppsala University. He holds a PhD from The Royal Institute of Technology, Stockholm. After a types-heavy PhD, he went untyped in developing the scripting language Thorn in a joint project with Purdue and IBM. Tobias' most active research interests are object-oriented aliasing, parallel programming languages, and scripting languages.
When Compilers are Mirrors
When compilers are reflective mirrors, interesting things happen. Reflection and compilers do tantalizing similar things. Yet, in mainstream, statically typed languages the two have been only loosely coupled, and generally share very little code. In this talk I explore what happens if one sets out to overcome their separation. The first half of the talk addresses the challenge how reflection libraries can share core data structures and algorithms with the language's compiler without having compiler internals leaking into the standard library API. The second half of the talk explores what one can do when strong, mirror-based reflection is a standard tool. In particular, the compiler itself can use reflection, leading to a particular system of low-level macros that rewrite syntax trees.
Martin Odersky is the inventor of the Scala language, a professor at EPFL, and a founder of Typesafe, Inc. His work concentrates on the fusion of functional and object-oriented programming. He has also influenced the development of Java as a co-designer of Java generics and the javac reference compiler.
ECOOP Banquet Speaker: The Harvard RoboBee Project
Honey bees are responsible for pollinating about one third of the crops grown in the US. But for the past few years, bees have been disappearing at an alarming rate, due to a mysterious syndrome known as colony collapse disorder. The goal of our NSF-funded expedition is, ostensibly, to build an artificial swarm of insect-scale robots that can autonomously pollinate crops. The real goal is to push advances in miniature robotics and the design of compact high-energy power sources; spur innovations in ultra-low-power computing and electronic "smart" sensors; and refine coordination algorithms to manage multiple, independent machines.
Greg Morrisett received his Ph.D. from Carnegie Mellon in 1995, and in 1996, he took a faculty position at Cornell University. In 2004, he moved to Harvard as the Allen B. Cutting Professor of Computer Science, and served in the position of Associate Dean for Computer Science and Engineering from 2007-2010.
Morrisett served as Chief Editor for JFP and as an associate editor for ACM TOPLAS and IPL. He currently serves as an editor for JACM and as co-editor in chief for ACM CACM Research Highlights. Morrisett has also served on DARPA ISAT, the NSF CISE Advisory Council, Microsoft Research's Technical Advisory Board, and Microsoft's Trustworthy Computing Academic Advisory Board.
He has received a number of awards for his research on programming languages, type systems, and software security, including a Presidential Early Career Award, an IBM Faculty Fellowship, an NSF Career Award, and an Alfred P. Sloan Fellowship.
Having said all of this, he knows relatively little about bees or robots, and you should take everything he says with a large grain of salt.