Iterable и Sequence Kotlin выглядят точно так же. Почему требуются два типа?

Оба этих интерфейса определяют только один метод public operator fun iterator(): Iterator<T> В документации написано Sequence, что нужно лениться. Но разве не Iterableленив (если не подкреплен Collection)?...