> In other words current-directory and (in a future release) current-umask are abstractions of the POSIX chdir() and umask() syscalls but they don’t actually call those syscalls (because the semantics of those syscalls in a threaded world is broken). So you would do it like: open(path, flags, mask & ~current_thread_umask)