Pretty good, I made an alternative using binvars:
alias ascii {
bset $iif(!$prop,-t) &ascii 1 $1-
return $bvar(&ascii,1,$bvar(&ascii,0)) [ $+ [ $iif($prop,.text) ] ]
}
Also, a little pointer: $eval(,0) (in your script) can be $!. So: $eval($chr,0) can be $!chr and $eval($+,0) can be $!+.
Perhaps try adding a way to do the opposite and convert asc values to actual characters? As I did in mine.