Various languages have constructs like
select;
when <expression 1> then
<action 1>;
when <expression 2> then
<action 2>;
...
when <expression n> then
<action n>;
otherwise;
<action false>;
end;
or
if (<expression 1>) {
<action 1>
}
elsif (<expression 2>) {
<action 2>
}
...
elsif (<expression n>) {
<action n>
}
else {
<action false>
}
for evaluating a sequence of expressions and performing the first action for which the expression evaluates as true. I would have expected the expl3 kernel to include \case:n and \case:nTF for this purpose, but it does not. Is there any work in progress to add such a construct?

\int_casefor integers,\str_casefor strings,\tl_casefor token lists, and\dim_casefor dimensions. – Phelype Oleinik Feb 08 '19 at 19:28\bool_if:nTF {<logical expression>} {<true code>} {<false code>}and nest them at will. – Phelype Oleinik Feb 08 '19 at 19:46\bool_if:nTFbut that instead ofif {<test>} { <true> } { if { <other test> } { <true> } { <nesting> } }he wants it all in one level:if { <test> } { <true> } elseif { <other test> } { <true> } elseif ... fi. The overall result would be the same, but the code wouldn't be (explicitly) nested. – Phelype Oleinik Feb 08 '19 at 20:21