In #3091 I added a the partial evaluator to the Netlist environment, so that I could evaluate a closed Term to a literal so that termToDataError wouldn't choke on something such as (/\b . Nil 0 (0~0) b) Bool because it wasn't beta-reduced.
The partial evaluator is now only called in that very specific case, but perhaps termToDataError should always evaluate its argument to Normal Form (NF) before trying to do the conversion.