Dlaczego NSDate nie można porównać za pomocą <lub>?

NSDate *date = [NSDate date];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc]init];
[dateFormat setDateFormat:@"MM/dd/yyyy"];
NSLog([@"today is " stringByAppendingString:[dateFormat stringFromDate:date]]);
NSLog([@"firstBirthdayDate is " stringByAppendingString:[dateFormat stringFromDate:firstBirthdayDate]]);
NSLog([@"secondBirthdayDate is " stringByAppendingString:[dateFormat stringFromDate:secondBirthdayDate]]);
if ([firstBirthdayDate isEqualToDate:secondBirthdayDate])
    NSLog(@"First date is the same as second date");
if (firstBirthdayDate < date)
    NSLog(@"First date is earlier than today");
else
    NSLog(@"First date is later than today");

if (secondBirthdayDate < date)
    NSLog(@"Second date is earlier than today");
Dzisiaj jest 11/08/2012firstBirthdayDate jest 01/23/2012secondBirthdayDate jest 01/23/2012

Oto, co dostaję w dzienniku:

Pierwsza data jest taka sama jak druga data

Pierwsza data jest późniejsza niż dzisiaj

Druga data jest wcześniejsza niż dzisiaj

Myślę, że oszaleję ...

questionAnswers(4)

yourAnswerToTheQuestion