packages sharing immutable symbols without values
Nobody has claimed this yet.
- Dominant language
- Macaulay2
- Stars
- 435
- Forks
- 297
- Avg merge
- 4d 20h
- Merged PRs (30d)
- 11
Description
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.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how package paths, immutable symbols, and the existing "export" operation are represented. Define the scope of the shared dictionary and the proposed "exportShared" variant, including the warning for shadowing; done requires an agreed design and implementation covering these cases.
Written by the indexing model from the issue text.
Assessment
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100