function launchWorker(f) {
  if (! (f instanceof Function)) {
      throw new Error(`Cannot launch ${typeof(f)} as Worker`);
  }
  const src = `(${f})();`;
  const blob = new Blob([src], {type: 'application/javascript'});
  const url = URL.createObjectURL(blob);
  return new Worker(url);
}