Ternary logic: Difference between revisions
Added Arturo implementation
m (→{{header|Phix}}: added personal tag) |
Drkameleon (talk | contribs) (Added Arturo implementation) |
||
Line 490:
⌈ | ⌈ | ⌈ | ⌈
</pre>
=={{header|Arturo}}==
Arturo's '':logical'' values inherently support ternary logic (<code>true</code>, <code>false</code> and <code>maybe</code>) and the corresponding logical operations.
<lang rebol>vals: @[true maybe false]
loop vals 'v -> print ["NOT" v "=>" not? v]
print ""
loop vals 'v1 [
loop vals 'v2
-> print [v1 "AND" v2 "=>" and? v1 v2]
]
print ""
loop vals 'v1 [
loop vals 'v2
-> print [v1 "OR" v2 "=>" or? v1 v2]
]
print ""
loop vals 'v1 [
loop vals 'v2
-> print [v1 "XOR" v2 "=>" xor? v1 v2]
]</lang>
{{out}}
<pre>NOT true => false
NOT maybe => maybe
NOT false => true
true AND true => true
true AND maybe => maybe
true AND false => false
maybe AND true => maybe
maybe AND maybe => maybe
maybe AND false => false
false AND true => false
false AND maybe => false
false AND false => false
true OR true => true
true OR maybe => true
true OR false => true
maybe OR true => true
maybe OR maybe => maybe
maybe OR false => maybe
false OR true => true
false OR maybe => maybe
false OR false => false
true XOR true => false
true XOR maybe => maybe
true XOR false => true
maybe XOR true => maybe
maybe XOR maybe => maybe
maybe XOR false => maybe
false XOR true => true
false XOR maybe => maybe
false XOR false => false</pre>
=={{header|AutoHotkey}}==
|