We developed a more efficient implementation of BCF that (i) avoids making unnecessary copies of the data; (ii) does not make redundant calculations when updating the trees; (iii) does not instantiate a matrix to hold all posterior draws of \(\tau (\mathbf {x},t)\) ; and (iv) provides users the option to use [1]}'s sparsity-inducing prior on the splitting variables used by each tree.
Our sampler returns a list of character vectors whose elements contain string representations of each regression tree in the ensemble used to approximate \(\tau .\) 
We wrote a new predict routine that takes these character vectors to output posterior samples of evaluations of \(\tau .\) 
Our implementation is available in an R package that we call flexBCF.
Compared to bcf, flexBCF is much faster and much less memory-intensive: our analyses ran in a few hours on shared computers in a high-throughput computing cluster and we needed only about 4GB of memory to analyze each beneficiary-level dataset with flexBCF.
