in reply to memory not freed after perl exits. Solaris.

I can’t speak for Solaris, but is it possible that the computer is simply holding things around in-memory, hoping that you will reference the same thing again soon?   If you wait a couple minutes, does the memory allocation figure gradually recede on its own?

(You see the effect of this “lazy” behavior when you run the same program twice in succession:   it starts much faster the second time, since most of the code/data is still there.   Given the number of times Unix systems tend to invoke the same programs (e.g. in a Shell script...), that would be a very big deal.