This should probably be submitted eventually as a wishlist to R-core, as it requires (minor) changes to base R, but I thought I would float it here first ... In a package, I construct glm()-like model objects that have 'family' components based on the GLM family objects (binomial(), poisson(), Gamma(), etc.). I have written a 'simulate' method for these objects that has basically had to re-code much of what's already contained in the family()$simulate methods, because they are just a little bit too hardcoded. I can't just add list elements to my object, because it's represented by an S4 class ....... For example, poisson()$simulate contains references to * object$prior.weights -- could be replaced by weights(object) ? * fitted(object) -- I would like to be able to substitute my own "mu" value here, but I can hack around it (in a perfect world I would add a third optional argument: $simulate <- function(object,nsim,ftd=fitted(object)) { ... } binomial()$simulate contains references to the above two components, as well as a reference to object$model (which could be replaced by model.frame(object)). inverse.gaussian()$simulate has a reference to summary(object)$dispersion (this wouldn't be too hard) The required changes would be fairly minor, and as far as I can tell completely backward compatible. Of course I don't know if there's much demand for it ... it would certainly be helpful for me, I don't know if there is latent demand out there ... thoughts? Ben Bolker