code: def _descend_namespace(caller_globals, name):
      
      names =  name.split('.')
      cur = caller_globals
      for i in names:
          if type(cur) is dict:
              cur = cur[i]
          else:
              cur = getattr(cur, i)
      return cur
docs: Given a globals dictionary, and a name of the form "a.b.c.d", recursively
      walk the globals expanding caller_globals['a']['b']['c']['d'] returning
      the result. Raises an exception (IndexError) on failure.