challenge: What is the core idea behind the Dynamic Language Runtime (DLR)?
  
  A. To use a generic language-agnostic abstract syntax tree to implement language specificities
  B. To limit the number of languages that can be implemented on the runtime
  C. To statically generate code for dynamic languages
  D. To implement language-specific constructs directly on the runtime stack
  Answer: 