code: def submit(func, *args, **kwargs):
      
      child = _createFuture(func, *args, **kwargs)
  
      control.futureDict[control.current.id].children[child] = None
      control.execQueue.append(child)
      return child
docs: Submit an independent asynchronous :class:`~scoop._types.Future` that will
      either run locally or remotely as `func(*args)`.
  
      :param func: Any picklable callable object (function or class object with
          *__call__* method); this object will be called to execute the Future.
          The callable must return a value.
      :param args: A tuple of positional arguments that will be passed to the
          func object.
      :param kwargs: A dictionary of additional arguments that will be passed to
          the func object.
  
      :returns: A future object for retrieving the Future result.
  
      On return, the Future can be pending execution locally but may also be
      transfered remotely depending on load or on remote distributed workers. You
      may carry on with any further computations while the Future completes.
      Result retrieval is made via the :meth:`~scoop._types.Future.result`
      function on the Future.