Reflection in Dart: A Cautionary Experience
Dart reflection is Mirror based. Mirrors have a key advantage with respect to deployment; they make it easy to remove reflection from the system if it is not needed. However, what happens when reflection is needed? Reflection undermines tree-shaking techniques used to reduce program footprint. Tree shaking is crucial for Dart, so it can compete with native platforms on web and mobile. The path of least resistance has been to hobble Dart reflection, but there are alternative implementation approaches that can help preserve the advantages of mirrors in this challenging environment.
Gilad Bracha is the creator of the Newspeak programming language and a software engineer at Google where he works on Dart. Previously, he was a VP at SAP Labs, a Distinguished Engineer at Cadence, and a Computational Theologist and Distinguished Engineer at Sun. He is co-author of the Java Language Specification, and a researcher in the area of object-oriented programming languages. Prior to joining Sun, he worked on Strongtalk, the Animorphic Smalltalk System. He received his B.Sc in Mathematics and Computer Science from Ben Gurion University in Israel and a Ph.D. in Computer Science from the University of Utah.
Sun 30 Oct
|15:40 - 16:40|
|16:40 - 17:20|
|Pre-print Media Attached File Attached|