In my package, I use some of the built-in Mathematica symbols in non-canonical ways. Right now, I use them as Options
or OptionValues
to certain package symbols. Therefore, I modified the ::usage
of the built-in symbols to include information about how those symbols are used in the package.
For example the package has a function FoldDistribution
and I've given it an option Integer
that can be True
or False
. So I modified the ::usage
as follows:
Unprotect[Integer]
Integer::usage = "Integer is the head used for integer.
Integer is an option to FoldDistribution."
Protect[Integer]
Giving ? Integer
:
So far, things look like they're going ok, and nothing fundamentally wrong seems to be happening with how Mathematica operates. Question: should I be worried about anything bad happening down the line? Is it recommended not to use built-in symbols in unintended ways? And what about changing their usage messages?
"Integer"
? $\endgroup$