Extend your language: Difference between revisions

m (→‎{{header|Wren}}: Changed to Wren S/H)
 
(2 intermediate revisions by the same user not shown)
Line 2,007:
 
=={{header|langur}}==
Langur doesn't currently have macros, but the following will otherwise accomplish the task, using the fact that a givenswitch expression may accept multiple test expressions. No extension of the language is necessary. This is not limited to 2 conditions.
 
We could use the nxor (logical equivalence) operator to test truthiness.
 
<syntaxhighlight lang="langur">givenswitch[and] .x nxor, .y nxor {
case true: ... # both true
case true, false: ... # first true, second false
Line 2,020:
To test directly for Boolean values (not truthiness), we could use the default == comparison.
 
<syntaxhighlight lang="langur">givenswitch[and] .x, .y {
case true: ... # both true
case true, false: ... # first true, second false
case false, true: ... # first false, second true
case null, _: ... # first null, second irrelevant
default: ... # other
}</syntaxhighlight>
885

edits