Hello, On Fri, 06 Jun 2014 09:32:25 +0100 Mark Lawrence <breamore...@yahoo.co.uk> wrote:
> On 04/06/2014 16:52, Mark Lawrence wrote: > > On 04/06/2014 16:32, Steve Dower wrote: > >> > >> If copying into a separate list is a problem (memory-wise), > >> re.finditer('\\S+', string) also provides the same behaviour and > >> gives me the sliced string, so there's no need to index for > >> anything. > >> > > > > Out of idle curiosity is there anything that stops MicroPython, or > > any other implementation for that matter, from providing views of a > > string rather than copying every time? IIRC memoryviews in CPython > > rely on the buffer protocol at the C API level, so since strings > > don't support this protocol you can't take a memoryview of them. > > Could this actually be implemented in the future, is the underlying > > C code just too complicated, or what? > > > > Anybody? I'd like to address this, and other, buffer manipulation optimization ideas I have for MicroPython at some time later. But as you suggest, it would possible to transparently have "strings-by-reference". The reasons MicroPython doesn't have such so far (and why I'm, as a uPy contributor, not ready to discuss them) is because they're optimization, and everyone knows what premature optimization is. [] -- Best regards, Paul mailto:pmis...@gmail.com _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com