Intended learning outcomes
A student completing this course unit should be able to:
- Compare and use different common constructs in modern programming languages, mapping different programming paradigms, and their support in the execution environment.
- Understand the main constituents of managed runtimes, and know how to compare different type systems approaches in these environments.
- Use runtime metadata (reflection) to examine types and use metaprogramming to analyze and transform programs at runtime.
- Analyze the performance of managed programs and efficiently use automatic memory management support (garbage collection).