"repeat" shoud be named "do...times"

The label "repeat ..." is misleading. If I repeat something two times I do it three times over all!

I suggest to label the loop block "do ... times"?


its fine as it is and it does what it says, it repeats it again twice

Welcome to the forum!

I'm afraid you're fighting 50 years of tradition (in Logo and then in Scratch). I don't think I've ever seen anyone really misunderstand it the way you're envisioning.

My pupils do misunderstand it.
Maybe it's a question of language (tradition)? We're here in Germany and "repeat" translates to "wiederholen" which means clearly that you do something again what you've already done once. Therefore if you "wiederholen" something one time you have done it (at least) two times when you're finished. Consequently you cannot repeat (wiederholen) something that you haven't done at least once, that's quite impossible. Repeating (wiederholen) refers necessarily to something you have done before.

Maybe the english meaning is slightly different and an english speaker can repeat something that he has never done before? And if I repeat a word once I have said it only once at all?

My english skills are not so sophisticated to decide this, but if this is the case, we have to live with it here in Germany...

I'd then only ask you to change the german translation to "mache ... mal" instead of "wiederhole ... mal" because the german "wiederhole ..." is definitely misleading.

Ah, I see. Since @jens is German, he can rule on this. There's no reason a translation has to be literal, as long as the meaning is clear.

If you would rather have a "do ... times" block, here's a custom one you can make easily:
untitled script pic
the (Input # = 10) just means I selected 'number' as the input type and set the default value to 10.
the (script λ) is the blocks inside of the loop. When creating this reporter, select "command (c-shape) "
Then just find the original repeat block, right click it, and click "hide".
Then you will have your request!

Sure, my English skills are worse :joy: ... but I think the problem is not with languages, it is about meaning and context.

If I "repeat once something", yes it seems I've done it twice.
But if somebody tells me "repeat this", I will only do it once.

Here, the block tells "the computer" to do something. It is like a dialog. If the block says "repeat 2 this", "the computer" (or maybe "the sprite") will do this twice (yes 2 times, not 3!).

Aside this, as Brian said, we are not discovering anything. Not only Logo and Scratch... look at JS, PHP... Repeat is clear!


Good point!

There is no difference in meaning for "repeat" in German and English.

@fach is correct that the word "repeat" implies doing something more than once. The question is whether that is something that confuses novices and whether there is a better wording. I've given up on judging whether something can confuse people, because I've seen professionals confused by less ambiguous terms, so yes, I believe you that sometimes students are confused by this.

But I'm afraid that "do... times" is hardly less confusing, because it's not clear whether something is done a number of times in sequence or in parallel. In my personal experience with kids the idea of sequence is far from easy, beginners - even adults - often think that everything inside a script happens at the same time, and that's not even a far-fetched assumption in a massively parallel environment such as Snap.

The decision how to name loops boils down not to subtle semantic differences in spoken languages but to taste. Also, there is the "cultural background" of several decades of naming loops. @bh has pointed out that both LOGO and Scratch used the word "repeat", so did Smalltalk (timesRepeat). Of course, repeating (sic!) a mistake doesn't make it right. We're having some discussions as to whether and how much Snap! should (be allowed to) diverge from Scratch, and I'm usually the conservative one, preferring for kids to "feel at home" in Snap when they make the switch from Scratch.

Oh, we're both conservative. It's just that my conservatism is based on Logo, not Scratch-come-lately. :~)