    (p/init! samp (srand-int))))
 
 (defn histogram!
-  ([estimator n]
+  ([estimator ^long n]
    (p/histogram! estimator n)))
 
 (defn histogram

(defn pdf [dist xs]
  (if (compatible? dist (p/data xs))
    (p/pdf (p/engine dist) (p/parameters dist) (p/data xs))
    (format "Incompatible xs: %s." (type xs))))

;;TODO rename to log-pd or log-density
(defn log-pdf [dist xs]
  (if (compatible? dist (p/data xs))
    (p/log-pdf (p/engine dist) (p/parameters dist) (p/data xs))
    (format "Incompatible xs: %s." (type xs))))

(defn likelihood [lik xs]
  (throw (UnsupportedOperationException. "TODO")))

(defn sample!
  ([sampler]
   (p/sample! sampler))
  ([sampler ^long n]
   (p/sample! sampler n)))

(defn sample
  ([sampler]
   (p/sample sampler))
  ([sampler ^long n]
   (p/sample sampler n)))

(defn init!
