My template for building packages has, at the end, the following expression that automatically ReadProtects all symbols defined in my pack:
ToExpression[Names["pack`*"], InputForm, SetAttributes[#, {ReadProtected(*,Locked*)}] &]
It works fine, with the exception of cases where I define a constant, like for example: iso=3; This produces the following message (when loading the package):
SetAttributes::sym: Argument 3 at position 1 is expected to be a symbol. >>
Can the automated expression that sets ReadProtected be changed to correct this behavior?
