Venture: a higher-order probabilistic programming platform with programmable inference