Aktuelle Änderungen
Printable View
Änderungen
Bearbeiten
DocBook > DomainSpecific > DomainSpecificLanguages > DomainSpecificLanguage > DomainSpecificLanguages > DonaldEKnuth > DotEmacs > Emacs > DotEmacsCustomizations > DotNetFramework > DotNet > DrScheme > SchemeLanguage > DuctTapeProgrammer > Dylan > DylanLanguage > DynamicLanguageRuntimeClear Trail
DotNet
CommonLanguageRuntime
IronPython
- http://en.wikipedia.org/wiki/Dynamic_Language_Runtime
- The Dynamic Language Runtime (DLR) from Microsoft is an ongoing effort to bring a set of services that run on top of the CLR and provides language services for several different dynamic languages. These services include:
- A dynamic type system, to be shared by all languages utilizing the DLR services.
- Dynamic method dispatch
- Dynamic code generation
- Hosting API
- http://blogs.msdn.com/hugunin/archive/2007/04/30/a-dynamic-language-runtime-dlr.aspx
- The CLR has good support for dynamic languages today. IronPython-1.0 demonstrates this. The new Dynamic Language Runtime (DLR) adds a small set of key features to the CLR to make it dramatically better. It adds to the platform a set of services designed explicitly for the needs of dynamic languages. These include a shared dynamic type system, standard hosting model and support to make it easy to generate fast dynamic code.
- http://msdn.microsoft.com/en-us/magazine/cc163344.aspx
- The DLR uses adaptive method caching to produce fast dynamic programs, and all language implementations on the DLR benefit from this shared work.
- At a basic level, compilers are pipelines that start with a parser that produces a data structure representing the code. This data structure is an abstract syntax tree, or AST in compiler-speak. The compiler transforms the AST or creates new data structures as it goes through stages analyzing the code. Then, based on the resulting structures, the compiler generates machine code or intermediate language (IL) code for a virtual machine like the CLR.
- DynamicSites? are a runtime mechanism that caches methods appropriate to specific combinations of action and argument types. These allow dynamic code to run faster with little or no static type information at compile time.
- dynamic language method caching
- polymorphic inline method caching