Roy Smith wrote: > In article <mailman.12720.1407394838.18130.python-l...@python.org>, > Peter Otten <__pete...@web.de> wrote: > >> os.fork() >> Fork a child process. >> ... >> Availability: Unix. >> """ >> >> You are using the wrong operating system ;) > > To be honest, this could be considered a buglet in the os module. It > really should raise: > > NotImplementedError("fork() is only available on unix") > > or perhaps even, as Peter suggests: > > NotImplementedError("You are using the wrong operating system") > > either of those would be better than AttributeError.
I disagree. How would you tell if fork is implemented? With the current behaviour, telling whether fork is implemented or not is simple: is_implemented = hasattr(os, "fork") With your suggestion: try: pid = os.fork() except NotImplementedError: is_implemented = False else: if pid == 0: # In the child process. os._exit(0) # Unconditionally exit, right now, no excuses. is_implemented = True which is not obvious, simple or cheap. -- Steven -- https://mail.python.org/mailman/listinfo/python-list