A simple test follows:

${message}

Now show the basic values:

${number1}, ${number2}, ${number3}
${string1}, ${string2}, ${string3}

Now as strings:

${asString(number1)}, ${asString(number2)}, ${asString(number3)}
${asString(string1)}, ${asString(string2)}, ${asString(string3)}

Now as numbers:

${asNumber(number1)}, ${asNumber(number2)}, ${asNumber(number3)}
${asNumber(string1)}, ${asNumber(string2)}, ${asNumber(string3)}

Native string conversion:

${number1 + ""}, ${number2 + ""}, ${number3 + ""}
${string1 + ""}, ${string2 + ""}, ${string3 + ""}

Native number conversion:

${number1 + 0}, ${number2 + 0}, ${number3 + 0}
${string1 + 0}, ${string2 + 0}, ${string3 + 0}

Non-trivial example:

${asNumber( number3 + 0 ) + 10}