/** Return a new object that is a child of the specified object. Note: this command will likely change along with a better inheritance mechanism for bsh in a future release.

extend() is like the object() command, which creates a new bsh scripted object, except that the namespace of the new object is a child of the parent object.

For example:

    foo=object();
    bar=extend(foo);

    is equivalent to:
      
    foo() { 
        bar() {
            return this; 
        }
    }

    foo=foo();
    bar=foo.bar();

    and also:
     
    oo=object();
    ar=object();
    ar.namespace.bind( foo.namespace );
    

The last example above is exactly what the extend() command does. In each case the bar object inherits variables from foo in the usual way. @method This extend( This object ) */ bsh.help.extend= "usage: extend( This parent )"; extend( bsh.This parent ) { this.namespace.setParent( parent.namespace ); return this; }