0:00 / 0:00
- Recommended by 1 person: 1 in engineering communities.
- Presented by Vyacheslav Egorov, Dart VM engineer
Advanced. Deep dive for people who know the field.
3.2K views5 years ago1 recommendation
Programming languagesSystems programmingCompilers and interpretersLanguage design and type systemsPerformance and optimization
Vyacheslav Egorov details the architectural evolution of the Dart Virtual Machine as the language transitioned from dynamic to sound static typing.
Slides (with speaker notes) mrale.ph/talks/vmil2020/ Dart (dart.dev) might be the only contemporary programming language that changed its core principles so radically between two major versions. 10 years ago, in 2010, it was born as a dynamically typed programming language with optional static types - ideas of Strongtalk wrapped into familiar C-like syntax. A language destined to be executed in a native VM with an adaptive JIT compiler. Yet over the years Dart has evolved into a language with a sound static type system, and is being deployed in contexts that require ahead-of-time compilation and prohibit JITing. Now, it is even trying to get rid of the “billion-dollar mistake” - null - and incrementally transition to non-nullable by default reference types. This talk focuses on the architecture of Dart Virtual Machine and how it followed the evolution of the Dart language, adapting to the new semantics and new execution environments, where users wanted to bring Dart to. About the speaker: Vyacheslav Egorov is a software engineer on the Dart team at Google where he is mainly focused on the evolution of the Dart native platform (Dart VM). (This talk was presented at VMIL 2020)Why it's here
1 person recommends thisWhat people say. Recommended for its deep dive into virtual machine architecture and the engineering challenges of changing a language's type system.