Jump to content

Loops/Continue: Difference between revisions

Added Wren
(Rename Perl 6 -> Raku, alphabetize, minor clean-up)
(Added Wren)
Line 2,175:
Message(", ")
}</lang>
 
=={{header|Wren}}==
Wren does not currently have a ''continue'' keyword but, depending on the circumstances, I can think of four ways in which to work around its absence.
<lang ecmascript>// Invert the condition.
// OK for simple cases.
for (i in 1..10) {
System.write(i)
if (i%5 != 0) {
System.write(", ")
} else {
System.print()
}
}
 
System.print()
 
// Use a flag to indicate whether to continue or not.
// OK as a more general approach.
for (i in 1..10) {
System.write(i)
var cont = false
if (i%5 == 0) {
System.print()
cont = true
}
if (!cont) System.write(", ")
}
 
System.print()
 
// Break out of an inner infinite loop.
// Not good if you also need to use 'break' normally.
for (i in 1..10) {
while (true) {
System.write(i)
if (i%5 == 0) {
System.print()
break
}
System.write(", ")
break
}
}
 
System.print()
 
// Return from an inner closure.
// Heavy handed, other methods usually preferable.
for (i in 1..10) {
Fn.new {
System.write(i)
if (i%5 == 0) {
System.print()
return
}
System.write(", ")
}.call()
}</lang>
 
{{out}}
<pre>
1, 2, 3, 4, 5
6, 7, 8, 9, 10
 
1, 2, 3, 4, 5
6, 7, 8, 9, 10
 
1, 2, 3, 4, 5
6, 7, 8, 9, 10
 
1, 2, 3, 4, 5
6, 7, 8, 9, 10
</pre>
 
=={{header|X86 Assembly}}==
9,490

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.