Re: [Boost-users] iterators must go
Date: Sun, 10 May 2009 09:24:42 -0400 From: Neal Becker
Subject: [Boost-users] iterators must go To: boost-users@lists.boost.org Message-ID: Content-Type: text/plain; charset="US-ASCII" Interesting presentation:
http://www.boostcon.com/site- media/var/sphene/sphwiki/attachment/2009/05/08/iterators-must-go.pdf ********************************************
Re slide #21, he didn't mention the biggest one. I had a rather negative reaction to the design when I first saw the proposal and design that was to become the STL. The two iterators of a range have no connection to each other, and it is easy to get them mixed up with no way to test that the second is in the same collection as the first. Rather than (begin,end), I much prefer (begin, length) as a specification. And in implementation, iterators are literally as bad as pointers. I've preached that they must be treated like pointers, hidden away behind walls of encapsulation. When I first saw Boost ranges, I thought that was indeed much better. Way back when, abstracting a "range" and still allowing more generality was way beyond the ability of templates or template programmers. Slide #26: Yes! That discussion should have been had way back when. But the fait accompli of an existing library to serve as a starting point, and politics, shut down any hint of backtalk. Slide #47: shades of Perl 6...makes me think how the previous few slides of operations on ranges is like Perl. (#48) But in Perl6, even "Int" types can hold exceptional values, so list.size() would have no trouble returning Inf. --John (sorry about the footer; it's not my idea) TradeStation Group, Inc. is a publicly-traded holding company (NASDAQ GS: TRAD) of three operating subsidiaries, TradeStation Securities, Inc. (Member NYSE, FINRA, SIPC and NFA), TradeStation Technologies, Inc., a trading software and subscription company, and TradeStation Europe Limited, a United Kingdom, FSA-authorized introducing brokerage firm. None of these companies provides trading or investment advice, recommendations or endorsements of any kind. The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer.
participants (1)
-
John Dlugosz