Confusing descriptions?

I hope this is in the right place... I have very new to Snap/Scratch so I probably don;t know what I'm talking about but.....

I was vert confused about the naming of ..

replace item: replaces the data held at item x of a list
find first item: finds the data in the list according to the test in the predicate...

given the use of the word "item", I would have expected find first item to return the item number according to the test - in other words where in the list the item is?

I appreciate that after I RTM it was clear what they did. But i';m someone to play first then read the manual !

I didn't see it as confusing when I started using :snap:. You can just rewrite "find first item" as
untitled script pic where the predicate and list are the same.

Hi, sorry for the confusion. You're right that "item" means the value of an element in the list, whereas we refer to what you call the "item number" as the "index" of an item in a list. Does that make sense? I'm not aware of any programming language referring to an element's index as it's "item", but I don't know every programming language :wink:

@jens: Hmm, maybe we should change it to REPLACE ITEM NUMBER _ OF _ WITH _ ? Or, since you doesn't like long names, ITEM # ? That's sort of implied by the shape of the input slot, but that might go over the head of a beginner.

@chaintong: The confusion is partly a result of the mixed parentage of Snap!. The list command blocks, such as REPLACE, we inherited from Scratch, and their way of thinking about getting at items of a list is all about the item's position in the list -- its index, or item number. The list reporters, such as FIND FIRST, are all about treating the list as a whole, in principle looking at every item all at once. So those two groups of blocks were named by different people, at different times, in different contexts.

Thanks for pointing this out to us!

that has nothing to do with this topic

they are placeholder names. I always just use A, B, C but some people use those words.