fundamental principles of counting



dear group,

I plan to do urn experiments in class with Maxima.

maxima's permutations(s,list) will list all possible permutations of
set/list s.
That's fine.

But I don't find functions to list (not only count) all
. arrangements of s (whose number is n^r )
. combinations of s (whose number is C(n,r) )
. variations of s   (:= all combs with repetitons,
  there are C(n+r-1,r) many of them and we want to see them all)

see e.g. Grimaldi: Discrete and combinatorial mathematics, 1999 (4.),
p.42.

Maybe the group can help me where to find those functions
or provide (simple educational) code to do these tasks ..

Thanks in advance,

Wolfgang