M2 icon indicating copy to clipboard operation
M2 copied to clipboard

packages sharing immutable symbols without values

Open DanGrayson opened this issue 5 years ago • 2 comments

Many packages introduce immutable symbols with capitalized names to use as names of optional arguments, and there is no reason such things need to be private to the package (they don't get values assigned). Perhaps we should add another dictionary to the path for symbols in common use, shared by packages, and ensure that the user gets a new warning when exporting such symbols that shadow another. There would be a variant of "export" called "exportShared" that puts such symbols into that new dictionary for all to share, or gets it from there, if it's already there.

DanGrayson avatar May 27 '20 19:05 DanGrayson

There should also be something similar for methods.

DanGrayson avatar Jun 30 '20 15:06 DanGrayson

We could also allow packages to create method functions, since typically packages install methods for different combinations of types.

DanGrayson avatar Nov 03 '21 14:11 DanGrayson