People tend to not like Shell. But I do!
Here is a simple example, try this floating point comparison:
$ [ 0.1 -gt 0.01 ] [: 0.1: bad number
The shell itself cannot use float.
But there are multiple workarounds. Here is the one I prefer:
if rpnc "$a" "$b" - | grep "^-" > /dev/null then echo "a < b" fi
Although you may not have the rpnc command, so here is another one:
if [ $(echo "$a < $b" | bc) -eq 1 ] then echo "a < b" fi