1    object MutMap<K, V> =
2        def from (slice : Slice<(K, V)>) =
3            let map = Map<K, V>.new
4            for i = 0 until slice.size do
5                let (k, v) = slice[i]
6                map.add k v
7    
8            map
9    
10   object Map<K, V>
11       def from (slice : Slice<(K, V)>) =
12           let map = MutMap<K, V>.from slice
13           map.as_readonly
14   
15   fun from_slice<K, V> (slice : Slice<(K, V)>) : Map<K, V> = Map<K, V>.from slice
16   fun from_slice<K, V> (slice : Slice<(K, V)>) : MutMap<K, V> = MutMap<K, V>.from slice
17