Iterators are just structs which implement the "Iterator" or a related
trait, right?

These structs which do can also implement lots of other traits, too:
no reason to make -Iter special.


Kevin



On Sat, Dec 21, 2013 at 12:50 PM, Palmer Cox <[email protected]> wrote:
> I'm not a big fan of Hungarian notation either. I'm not sure that having a
> naming convention for Iterators is Hungarian notation, however. For example,
> if you are doing Windows programming, you'll see stuff like:
>
> DWORD dwFoo = 0;
>
> In this case, the "dw" prefix on the variable indicates that we have a DWORD
> variable. However, the Iterator suffix that I'm proposing here is a suffix
> on the type names, not the actual variable names. So, if you are writing
> Rust code, you'd write something like this:
>
> let chunks = some_vector.chunks(50);
>
> So, the actual variable name doesn't have the Hungarian notation and the
> types aren't even generally visible since the compiler infers much of that.
> However, someone reading through the documentation and/or code will see a
> struct named ChunkIterator and instance know how the struct behaves - as an
> Iterator. So, I think the suffix serves less to describe the datatype and
> more to describe class of behavior that the struct implements.
>
> Anyway, as I said, I prefer #1. But, I also have done lots of Java
> programming so I'm probably much more used to verbosity than others. I'm not
> horribly against some sort of other naming convention, either, of course,
> but I would like to see some consistency.
>
> My main motivation for opening the request was because I created
> MutChunkIter and then realized that it was named differently than majority
> of other Iterators. I don't want to be responsible for someone reading
> through the docs and seeing something thats inconsistent for no good reason!
> Also, I was reading through some code and happened upon a "Map" and was
> exceptionally confused about it, until I realized it was iter::Map as
> opposed to container::Map. I figured I probably wasn't the only person that
> was going to be confused by something like this.
>
> -Palmer Cox
>
>
>
>
>
> On Sat, Dec 21, 2013 at 3:14 PM, Kevin Cantu <[email protected]> wrote:
>>
>> IMHO Hungarian notation is for things the type system and tooling
>> cannot deal with.  I'm not sure this is one of them...
>>
>>
>> Kevin
>
>
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to