Docs improvement suggestion. An ambiguity in the `Future.cancel` for non-native English speakers

Sorry, I’m not a native English speaker, and the following document does confuse me for some time.

If the call is currently being executed or finished running and cannot be cancelled then the method will return False

Which confused me is I think Future has a cancelable running state when I reading the doc, like:

  1. Future running and non-cancelable → cancel return False
  2. Future running and cancelable → cancel return True

I think the more appropriate expression is:

The method returns False if the call cannot be cancelled because it is already running or has finished.

By the way, my native language is Chinese. I also tried some translators and the way they translated this sentence into Chinese implies that “Future” has a cancelable running state. Seems like Chinese is a Bamboo-like language. The logic goes step by step. If a conjunction appears, it acts like parentheses in a program.

5 Likes

That does sound clearer. Do you want to open a pull request?

1 Like

Sure. Thank you for your recognition. I’ll follow the guide to try submitting my first PR.

1 Like

Also for this Dutchman