when과 if를 한국어로 번역할 때 구별이 안가는 경우가 있기에 이 차이점을 알아본다. when은 실제로 조건문이 아니나 한국말은 조건과 ~할 때라는 말을 같은 뜻으로 쓸 때도 있기 때문에 혼동될 수가 있다. 우선 결과를 말하자면 when은 100% 일어날 일 또는 일어난 일에 대해서 말한다. if는 일어나지 않았거나 50%확률로 일어날 일을 말한다.
위 4가지 형태 중 여기서는 0번과, 1번을 중심으로 설명하고 다음시간에 나머지를 설명한다.
예)
A: I'm going to the library.
B :When you go to the library, will you return this book?
A는 도서관에 가는 상황이고, (어떤 예기치 못할 상황이 발생되지 않는 한 도서관에 간다(99.999%).) B는 그 상황을 알기 때문에 when을 쓴다. 만약 A가 도서관에 간다는 말을 하지 않은 경우라면 A가 도서관에 갈지 모르므로 If를 쓴다.
이 때 When이나 If 절에 현재형을 쓴다.(미래를 나타내지만 will을 쓰지 않는다.)
2번의 경우 If절에 과거형이 쓰이는데, 이 때의 과거형은 불가능, 일어나지 않음, 가상의 세계 등을 나타낸다.
예)
I was going to go there. (거기 가려고 했지만, 가지 않았음을 뜻함)
이 때 was는 과거형으로 시간이 뒤로 물러난 경우기도 하지만, 실제로 일어나지 않았음을 뜻하기도 한다.
If I were bird, I would fly to you.
실제 새가 될 수 없으므로 were를 썼고, 주절에 would를 쓴 것도 실제로 날 수 없으므로 한걸음 과거로 물러난 시제를 썼다.
3번의 경우는 2번에서 더 과거로 물러난 때를 말한다. (아마 좀 더 과거 전에 ~했다면 과거에 ~했을 텐데 라고 해석되겠지??)
when과 비슷한 때를 나타내는 말들
좀더 세부적인 때를 나타낼 때 when 대신 while, after, before, as soon as, until 을 사용할 수 있다.
예)
Until I come back, wait here.
as soon as Jhon arrive, we will have dinner.
when 절에have p.p.가 쓰이는 경우
예)
When I have called Kate, We can have dinner.
위 문장에서 when 절과 종속절은 시간의 순서대로다. 즉 위 문장은 다음과 같다.
After I call Kate, We can have dinner.
단순히When I call Kate라고 하면 때가 불명확 하다. 이 때 have p.p.는 때를 명확히 해주는 효과가 있는데, have p.p.는 중간 집계(그 때 까지 어떤 행위가 완료됨을 뜻함)이므로 이 경우 After 대신 when ~ have p.p.(~가 끝나고)를 사용할 수 있다.