add ruedi's compile buffer functionality