dynamically created symbol



Unless there is some other requirement, doesn't this work?

  h(n):= concat(foo,n)


then h(1) creates foo1.


You can figure out more elaborate name schemes from this
model, using intern and format from lisp..

h(n):= ?intern(?format(false,"$FOO~s",n));

h(1);


there is also, in Maxima,
gensym(foo);
  but that uses its own number, not 1.