Currently it's quite easy to end up with packages that have builder scripts that can't be read by Guile. This is part of the following builder script: (cons "--enable-mpi-java" #) from: /gnu/store/yngxnpcs4s6y8acxf4nwx5pcpj0j6q6i-java-openmpi-4.1.4-builder And when attempting to build that derivation, you get the following error. ice-9/read.scm:126:4: In procedure read-expr*: /gnu/store/yngxnpcs4s6y8acxf4nwx5pcpj0j6q6i-java-openmpi-4.1.4-builder:1:3820: Unknown # object: "#<" It would be nice if Guix could detect this category of problems and raise an error at the time the derivation is created, rather than the error occuring only when you build the derivation. This would be helpful particularly for the Guix Data Service since currently it ends up storing these useless derivations, often many times since the builder includes some often changing string (7f366e0cd930 in the example above), so this is a common cause of spurious changes between revisions (as often noted on qa.guix.gnu.org).