Tuesday, July 2, 2013

Dynamic Languages

A dynamic programming language, such as Lisp-derivatives and JavaScript, defer many common behaviors such typing of variables until runtime. Non-dynamic languages typically perform such behaviors at compile time.

Dynamic language behaviors at runtime

  • Extension of the program, by adding new code, by extending objects and definitions at runtime (for example, as JavaScript/jQuery plugins)
  • Typing of variables at runtime instead of compile-time. A given variable can change its type during runtime as a result of assignment.
  • Modification the type system at runtime

Dynamic Languages

  • Ruby
  • Perl
  • Python
  • Php
  • JavaScript
  • Clojure