Which sentence is the right one and why: "Service object through which asynchronous operations are dispatched" or "Service object which asynchronous operations are dispatched through". Please explain when is it allowed to put prepositions at the end of a sentence?
-
These sentences don't sound complete to me– Chris RogersCommented Dec 20, 2016 at 10:32
-
This is a documentation block of a variable in a programming language. Whether the sentence is complete or not does not matter in this case I think. I'd just like to know the rules for using prepositions.– Arthur EirichCommented Dec 20, 2016 at 10:36
-
For example why is it possible to put a preposition at the end of a question, like "What are you looking for?"– Arthur EirichCommented Dec 20, 2016 at 10:38
-
3en.oxforddictionaries.com/grammar/… may help with that– Chris RogersCommented Dec 20, 2016 at 10:39
-
The first part of your question on which sentence is correct depends on the rest of the sentence. Either could be correct.– Chris RogersCommented Dec 20, 2016 at 10:44
1 Answer
The idiomatic spoken version is:
... the service object (that) async operations are dispatched through...
It has a potentially reduced clause and a postponed preposition, and it drops the relative pronoun which.
The more formal written version is:
... the service object through which asynchronous operations are dispatched...
A small percentage of speakers are such practiced writers that they will use the second version even when speaking. But they are the exception, not the rule.
A simpler way to state it is to avoid the passive:
.. the service object which dispatches asynchronous operations...