more compatible function definition
use expr instead of let as it is more portable