List Commands Library for 50g
|
08-23-2017, 05:30 PM
Post: #82
|
|||
|
|||
RE: List Commands Library for 50g
Re: Command Names and Library Menus
There have been some ideas bounced around lately about changing some existing command names and the ramifications of doing so. This prompted me to look a bit closer at the mechanism behind the library menus and the options that might exist for different treatments of the menus. Menu ≠ Command Names One suggestion was to see if it was possible to have the menu display something other than the actual command names (perhaps an abbreviated form of the name). It turns out there is a way to do that when the user selects the library menu using the RS-2 (LIB) command, but it won't work if the user shows the menu with "1423 MENU". Generally speaking, I can also see where this could be confusing, especially if some of the "alternate" menu labels are too close to existing commands (ROLL, POS, etc.). I'm still open to the idea, but with reservations about how it might be presented. Duplicate Command Names in Menus Others have expressed concerns about command names which are longer than can be shown in the menu, but start with the same 5 characters as other commands (thus showing in the menu as identical commands). I share those concerns, and would thus not support doing that. I believe each library command should have a unique representation in the menus. Command Aliases? This brings me to another possibility that I wasn't aware of until I started looking into this, and would like to hear other's thoughts on the concept. It's possible to create "alias" commands to existing ones, and those aliases need not show up in the menu. In other words, you can define multiple command names that all point to the same internal code in the library. Pressing the menu key shown will either execute the command or enter the name shown on the key if you are editing a program. But if you are typing in the command with an editor, you could use either the formal name or any of its aliases interchangeably. An example of using a command alias could be something like the following: LSPLT would be the "formal" name of that existing command, but you could also have LSPLIT, LISTSPLIT, LSplit, ListSplit, etc. defined as aliases which all execute the same code (but don't show up in the menu). Only the command's names are replicated, so they don't take up much space in the library. The downside to this, however, is that creating aliases in this way could make it more difficult for others to make meaningful names with their own commands (or any kind of object IDs) in the future. Once those aliases are defined in the library, anyone installing that library can't use any of the aliases as an identifier for something else. Reserving multiple IDs for a single command can thus be a "greedy" step that needlessly limits what users may want to do with their calculators. It could also make it harder for developers to come up with meaningful command names for similar/enhanced commands. That said, I do think minimal application of aliases for the ListExt library may make sense. Some possibilities: LRLLD - LROLLD LSPLT - LSPLIT (and/or LSPLITL?) LRSPL - LSPLITR LCASE - LOCASE UCASE - UPCASE Also, I'm thinking the following commands should probably just be renamed: LRLL to LROLL LDST to LDIST LSHF to LSHUF (my brain keeps seeing "LSHIFT" without the "U") LSWP to LSWAP What are your thoughts? |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)