The procedure unit/sig->unit removes the signature from a signed unit and returns the core primitive unit. The unit's export names are all of the identifers in the export signature, using id: prefixes to recursively flatten sub-signatures. The unit's import variables are unnamed, but the number of import variables matches the total number of identifiers in the unit's import signature.