Regarding loops, here are the top/bottom rated results for loops ("rated 0 (0% intuitive) to 10 (100%
intuitive)") from the paper:
Loops
Non-programmer
Top choices: repeat (6.88, 2.94), again (6.43, 3.05),
loop (6.30, 3.20)
Bottom choices: foreach (2.99, 2.97), while (2.37, 2.70), for
(2.13, 2.83)
Programmer
Top choices: loop (7.88, 2.28), repeat (7.49, 2.70),
cycle (6.65, 2.45)
Bottom choices: duplicate (4.67, 2.82), foreach (4.35,3.02),
echo (4.13, 2.87)
Quorum uses repeat, repeat while, and repeat until (
https://quorumlanguage.com/tutorials/language/repeat.html) so it still uses while but it's prefixed with a repeat. Anecdotally, I think having an until can be useful since for many problems, students will often think in terms of when to
stop instead of when to continue.
Regarding the accuracy results from this paper though, they are for text-based languages so they may not generalize to block-based ones. For block-based languages, I'd imagine that it's possible that "if then" would get a comparable or even higher accuracy result than "if" alone since it wouldn't be necessary to type the "then."
Best,
Jason