PrintDefinitions give one a great view into many system functions. Often the design of these symbols incorporate multiple patterns that I see again and again. To name a few:
- For a symbol XYZ, there is iXYZ, aXYZ, etc...
- Use of so called “router” subroutines.
- Specialized failure catch/throw mechanisms
- Fancy nonstandard option handlings
- Autoloading/Dumping contexts
The source doesn’t look at all like the normal functions people write in packages. So I was hoping a developer could respond with a little tutorial on any interesting patterns that WRI likes to use for some built-in functions.