<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Just thinking out loud — ‘dynamic’ as an attribute on an object, allowing arbitrary method calls that are dispatched dynamically...<div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">let foo: @dynamic AnyObject = Foo()</div><div class="">foo.someWeirdMethod()</div><div class=""><br class=""></div><div class="">for thing in things {</div><div class=""> (thing as @dynamic).bar()</div><div class="">}</div></blockquote><div class=""><br class=""></div><div class="">Dynamic as a type:</div><div class=""><div class=""><br class=""></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div class="">let foo: dynamic = Foo()</div></div><div class=""><div class="">foo.someWeirdMethod()</div></div><div class=""><div class=""><br class=""></div></div><div class=""><div class="">for thing in things {</div></div><div class=""><div class=""> (thing as dynamic).bar()</div></div><div class=""><div class="">}</div></div></blockquote><div class=""><br class=""></div><div class="">Since the dynamic keyword defines a function that goes through runtime dispatch, the same very runtime dispatch that current AnyObject calls go through, it would make sense for the new stuff to be called something like dynamic or dynamic_binding or DynamicObject or whatever.</div><div class=""><br class=""></div><div class="">A.</div><div class=""><br class=""></div></body></html>