go-fringe.go: Language change: `closed' function on channels has gone.
authorMark Wooding <mdw@distorted.org.uk>
Mon, 1 Apr 2013 15:22:03 +0000 (16:22 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Mon, 1 Apr 2013 15:48:13 +0000 (16:48 +0100)
Replaced by a two-valued `<-' read operator, which does exactly what we
want.

go-fringe.go

index 70e23b5..d79760e 100644 (file)
@@ -52,9 +52,8 @@ func MakeIterator(it Iterable) Iterator {
 // Returns the next item from an iterator IT.  If there is indeed an item
 // available, return it and true; otherwise return nil and false.
 func (it Iterator) Next() (any, bool) {
-       item := <-it;
-       if closed(it) { return nil, false; }
-       return item, true;
+       item, anyp := <-it;
+       return item, anyp;
 }
 
 // Answer whether the iterators return the same items in the same order.