Conditional structures: Difference between revisions
Content added Content deleted
Langurmonkey (talk | contribs) |
(add RPL) |
||
Line 6,910: | Line 6,910: | ||
}} |
}} |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
=={{header|RPL}}== |
|||
'''IF..THEN''' |
|||
'''IF''' <instruction(s)> '''THEN''' <instruction(s)> '''END''' |
|||
'''IF..THEN..ELSE''' |
|||
'''IF''' <instruction(s)> '''THEN''' <instruction(s)> '''ELSE''' <instruction(s)> '''END''' |
|||
Instructions between <code>IF</code> and <code>THEN</code> are not mandatory, but recommended for lisibility. The interpreter considers <code>IF</code> as a null word and performs branching when meeting the word <code>THEN</code>: if stack level 1 is not equal to zero, the instructions between <code>THEN</code> and <code>END</code> will be executed. |
|||
<code>IFT</code> and <code>IFTE</code> are stack-based conditonal structures. <code>IFT</code> evaluates the content of stack level 1 only if the content of stack level 2 is not zero, otherwise it is dropped. <code>IFTE</code> evaluates the content of stack level 1 if the content of stack level 2 is zero, otherwise if evaluates the content of stack level 2. |
|||
'''CASE..END''' |
|||
'''CASE''' |
|||
<instruction(s)> '''THEN''' <instruction(s)> '''END''' |
|||
<instruction(s)> '''THEN''' <instruction(s)> '''END''' |
|||
<span style="color:grey">@ as many branches as needed</span> |
|||
<instruction(s)> <span style="color:grey">@ default branch (optional)</span> |
|||
'''END''' |
|||
=={{header|Ruby}}== |
=={{header|Ruby}}== |