Swift provides the `is` keyword (and `as?`) to check whether an object can be downcast successfully:

```
if foo is MyClass {
    // ...
}

```

But `NSObjectProtocol` also provides the original `func isKindOfClass(aClass: AnyClass!) -> Bool`:

```
if something.isKindOfClass(MyClass) {
    // ...
}

```

For classes conforming to `NSObjectProtocol`, is this really much different?