可変長引数を取るmax関数でも定義すればいいじゃない

Max(params*) {
t := params[1]
Loop % params.MaxIndex() - 1 {
b := params[A_Index + 1]
t := t > b ? t : b
}
Return t
}

a := 10
b := 20
c := 30
d := 40
MsgBox % Max(a, b, c, d)
Return