>The fact that it can't find boundaries for complicated functions, and you should give xmin and xmax in those situations, is already mentioned in the documentation (galsim/random.py, lines 63 to 65). 

I'm sorry, I didn't spot that.  I do think those sentences could be toughened or made more specific up if you decide to keep things as they are, or maybe the default (no xmin/xmax) behaviour good be given it's own paragraph. In this very instance I'm a perfect example of not having absorbed that info when I read the docstrings!

>I'd originally intended xmin and xmin to always be passed with functions, but "xmin and xmax are optional, unless you're passing a callable function, but actually it's STILL optional if that function happens to be a LookupTable" seemed overly complicated, so I figured a dumb boundary finder and caveat, um, coder? But we could remove this if it seems more likely to cause problems than solve them. 

It's nice to have a boundary solver, but I also don't think it's necessarily a bad thing to ask the user to be explicit about the support of their probability distribution.  It might make things cleaner, and less prone to user error despite the overhead of being required to supply the xmin, xmax.  I don't have a very strong opinion...