Thanks for helping! Unforunately,
the result I'm looking for is [1,2], like this ...
(%o7) mtd(expr,v):=block([a:inpart(v,1),b:inpart(v,2)],
create_list(expr,a,1,b))
(%i8) mtd(x,[x,2]);
(%o8) [x,x]
(%i9) mtc(expr,v) := apply('create_list, [expr,inpart(v,1),1,inpart(v,2)]);
(%i10) mtc(x,[x,2]);
(%o10) [1,2]
The probem also occurs in the simpler case of
mte(expr,v1,v2):=create_list(expr,v1,1,v2)
John