Index: org/python/core/__builtin__.java =================================================================== RCS file: /cvsroot/jython/jython/org/python/core/__builtin__.java,v retrieving revision 2.57 diff -u -r2.57 __builtin__.java --- org/python/core/__builtin__.java 6 Aug 2003 11:46:26 -0000 2.57 +++ org/python/core/__builtin__.java 19 Feb 2005 21:11:20 -0000 @@ -913,6 +922,27 @@ return o.__str__(); } + public static PyObject sum(PyObject seq, PyObject result) { + + if(result instanceof PyString) { + throw Py.TypeError("sum() can't sum strings [use ''.join(seq) instead]"); + } + + PyObject iter = seq.__iter__(); + for(;;) { + PyObject item = iter.__iternext__(); + if(item == null) { + break; + } + result = result._add(item); + } + return result; + } + + public static PyObject sum(PyObject seq) { + return sum(seq, Py.Zero); + } + public static PyString unicode(PyObject v) { return unicode(v.__str__(), null, null); }