I’m well aware of the difference between ‘since’ and ‘for’. However I have a question.

Imagine I say ‘I’ve been working on the essay since Saturday’ or ‘I’ve been working on the essay for two days’. (correct right?)

Why would it be incorrect to say ‘I’ve been working on my essay for all weekend’? I would personally omit ‘for’, but why though?

It seems like you can also omit the proposition in other, related cases, like 'I'll see you on Friday night.' Again, why can you do that?


Solution 1:

As @Lawrence commented, "for the whole weekend" sounds correct, but "for all weekend" does not. This usage of "for" is grammatically "for ". "Two hours" and "the whole weekend" are durations, but I propose that "all weekend" is actually a specific time, not a duration. "All weekend" is a noun describing the location of a chunk of time: Sat + Sun (or Fri night + Sat + Sun). It's like "morning" or "afternoon", and would be similar to "6 o'clock".