This would be difficult/impossible because /tokenize uses existing identifiers $1 - $99. To create new identifier names on the fly, I'm not sure what kind of new variable scope Khaled would have to invent. Your suggestion is much like asking to /var variables that begin with a dollar sign $.

Personally, I'm satisfied with $gettok. Through speed tests I've conducted, referencing a %var is much faster than referencing $1. Not positive why, but %variables evaluate faster. My guess is that $1- identifiers are simply $gettoks behind the scenes and each evaluation is an entirely new string comparison. Whereas a %var is a defined value that needs no parsing to obtain. It would be much faster to perform your $gettoks and save them to individual %var's.

Code:
/mytokenize {
  var %name = $1
  var %delimit = $2
  var %s = $3-
  if (!%s) || ( %delimit !isnum ) return
  var %i = 1
  WHILE ( $gettok(%s,%i,%delimit) ) {
    set -u0 % $+ [ %name ] $+ [ %i ] $ifmatch
    inc %i
} }

//mytokenize test 32 a b c d | echo -a %test1 - %test2 - %test3 - %test4
a - b - c - d

- Raccoon


Well. At least I won lunch.
Good philosophy, see good in bad, I like!