For example, I have two sentences:

Have you been waiting long?


Have you been waiting for long?

I read both sentences in my grammar book. But I am unable to get which is correct in which situation?

Can anyone have any clarification?

Thanks! :)

  • 2
    as a native English speaker these both sound completely fine and mean the exact same thing. it's possible that there is some prescriptive "rule" that you should avoid one but if so I am unaware of it.
    – hunter
    Dec 11 '13 at 17:36

I think that both examples are grammatical. If the preposition doesn't add to/change the meaning (i.e. it's not part of a phrasal verb), it usually can be omitted. You don't need a preposition with the adverb long. Including for adds nothing, so this is a style choice. There's no difference in meaning in your examples (or mine).

I say this because you can easily rephrase that into another question as a test:

[For] How long have you been waiting?


How long have you been waiting [for]?

You only need for if it were followed by a pronoun/noun like me/us/John.

Have you been waiting long for John?

Have you been waiting for long for John?

For how long have you been waiting for John?

  • I was about to remind you about the case of "for how long", which is likely to cause many ELLs to think they should say "... waiting for long?" But you added that already. Nice answer! Dec 11 '13 at 20:34
  • 1
    I should add that this is the basis for the miguided advice given to ELLs about not ending sentences with prepositions, which in reality can only be omitted when they are superfluous. (and even then, it's still optional). This source has a pretty straightforward explanation of phrasal verbs and the For whom, For how long, From which, From where, etc. syntax. And then of course, there's also Grammar Girl, whom I highly recommend for learners. Dec 11 '13 at 21:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .