7

I've looked around online and even asked a native speaker developer friend of mine, but I seem to get different answers everywhere I go.

Here are the relevant words/phrases I've seen so far:

  1. 繰り返し処理
  2. 反復処理
  3. ループ & ループ処理
  4. イテレート

My impression is that the entirely katakana words are used exactly like they are in English, including ループ being used as both a noun and verb. I've also seen イテレータ, but this refers to a very specific and well defined thing, so I don't think there's much ambiguity there.

繰り返し処理 seems to be the most common word, generally referring to any kind of repetitive processing, and is used as both a noun and する verb. 反復処理 seems to mean something similar, although I only see it used as a noun, and I get the impression it's more of a 書き言葉。

ループ処理 seems to refer to processing something via loop, although I don't really see a difference between it and ループ when used as する verbs.

I'm hoping someone who has worked as a programmer or developer in Japanese can shed some light on the more nuanced differences between words, when one would use one and not the other, etc. I am particularly interested in the differences between:

  • 繰り返し処理, ループ処理 and 反復処理 as nouns
  • 繰り返し処理する、ループ処理する、and イテレートする
  • 2
    Have you already tried asking ja.stackoverflow.com? They are professional programmers, so you can ask them if you put this more in Japanese words. – user25382 Jan 1 '18 at 7:40
  • You know, that's a really good idea. I haven't asked there yet, but if I don't get any answers here, I'll rewrite the question in Japanese and ask there. – Mindful Jan 1 '18 at 7:51
5

「ループ」と「繰り返し」と「反復」は全く同じ意味だと思います。「反復」は、ややアカデミックで固い印象があります。発音しやすいので会話では「ループ」が最も使われています。動詞として使う場合、"to process an (entire) loop" の意味で使うなら「ループ処理をする」「繰り返しを行う」「反復処理をする」など、"to go to the next loop" の意味で使うなら「ループする」「繰り返す」「反復する」です。

「イテレータ」「イテレーション」「イテレートする」も技術者であれば問題なく知っており、日常的に使う単語だと思います。ただしご存知の通り、多くのプログラミング言語で Iterator は特殊な意味を持っており、それと誤解されやすいので、一般的な(for-loop などの)ループ処理の意味で使うのは避けるようにしています。例えば:

iterate over DOM nodes = DOMノードに対して{繰り返し/反復/逐次}処理を行う

  • 1
    なるほどです!じゃつまり、"for (int i = 0; i < 10; i++){…}”というループは10回「ループ」しますが、「ループ処理」は1回しかしないという事ですよね。 英語で”iterator”は確かにプログラミング言語によって特殊な意味を持ったりしますが、”iterate”と”iteration”が日本語の「繰り返し処理」のように一般的に使われていますので少し迷っていました。 本当に勉強になりました!ありがとうございます。 – Mindful Jan 2 '18 at 5:23
3

The meaning of "繰り返し処理", "反復処理", and "ループ(処理)" are same and we often omit "する". As you indicated, "ループ" usually refers to a certain processing via for/while loop, but programmers also use the words "繰り返し処理" and "反復処理" as loop. As of the "イテレータ", it is the interface with which we access the contents of list, vector, tuple, dictionary and so on.

[1] 繰り返し処理(反復処理、ループ)
"繰り返し処理" is usually accompanied by "counters" like:
for (int cnt=0; cnt < 10; cnt++) { hairetsu[cnt]; }

[2] イテレータ
When we use vector in C++ for example, it is often accompanied by "イテレータ(iterator)" like:
for (vector<int>::iterator itr = v.begin(); itr != v.end(); ++itr) { *itr; }
This is also a loop, and we say this scanning with iterator.

  • イテレート(イテレータじゃなくて)という動詞も使うんですか?そして使うとしたら、「イテレート」と「繰り返し処理」の間の違いを説明していただけませんか?英語でのiterateは基本的に有限な集合の要素に対して使いますが、漢字から推測すると「繰り返し処理」はもう少し幅広そうです。たとえば、ミューテックスを待つループは「繰り返し処理」という範囲に入りますか? – Mindful Jan 2 '18 at 4:01
  • 1
    イテレートするという動詞はあまり使わないと思いますが、イテレータを使ってループを走査する、という言い方はよく聞きます。繰り返し処理とは、イテレータやカウンタを使って、ある条件が成立している間は同じ処理を繰り返すことです。また、ミューテックスを持つループは当然ループ処理ですので、繰り返し処理の範囲に入ります。 – iomat Jan 2 '18 at 5:05
  • 繰り返し処理の意味の範囲をもう少し把握できた気がします!ありがとうございます。 – Mindful Jan 2 '18 at 5:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.