| Index: sdk/lib/collection/collections.dart
 | 
| diff --git a/sdk/lib/collection/collections.dart b/sdk/lib/collection/collections.dart
 | 
| index 95d5a43dedf80fdd0e63f73b14b3e08c63a2b94f..2ff2228cc4a69c6877e069b990a345ce0ef9ccf5 100644
 | 
| --- a/sdk/lib/collection/collections.dart
 | 
| +++ b/sdk/lib/collection/collections.dart
 | 
| @@ -327,7 +327,6 @@ class IterableMixinWorkaround {
 | 
|  
 | 
|    static Iterable takeList(List list, int n) {
 | 
|      // The generic type is currently lost. It will be fixed with mixins.
 | 
| -    // This is currently a List as well as an Iterable.
 | 
|      return new SubListIterable(list, 0, n);
 | 
|    }
 | 
|  
 | 
| @@ -338,7 +337,6 @@ class IterableMixinWorkaround {
 | 
|  
 | 
|    static Iterable skipList(List list, int n) {
 | 
|      // The generic type is currently lost. It will be fixed with mixins.
 | 
| -    // This is currently a List as well as an Iterable.
 | 
|      return new SubListIterable(list, n, null);
 | 
|    }
 | 
|  
 | 
| @@ -365,6 +363,17 @@ class IterableMixinWorkaround {
 | 
|      return Arrays.lastIndexOf(list, element, start);
 | 
|    }
 | 
|  
 | 
| +  static Iterable getRangeList(List list, int start, int end) {
 | 
| +    if (start < 0 || start > list.length) {
 | 
| +      throw new RangeError.range(start, 0, list.length);
 | 
| +    }
 | 
| +    if (end < start || end > list.length) {
 | 
| +      throw new RangeError.range(end, start, list.length);
 | 
| +    }
 | 
| +    // The generic type is currently lost. It will be fixed with mixins.
 | 
| +    return new SubListIterable(list, start, end);
 | 
| +  }
 | 
| +
 | 
|    static void setRangeList(List list, int start, int length,
 | 
|                             List from, int startFrom) {
 | 
|      if (length == 0) return;
 | 
| 
 |