A name is a property of an object. Every object must have a name.
You can typically refer to objects by name in most MUSH commands when you're carrying them or in the same room as they are. Names of things, rooms, and exits are not necessarily unique, and objects of the same name in the same room as well as objects in other rooms must usually be referenced by dbref instead. Exit names are are a list of aliases delimited by semicolons -- only the first of which is usually shown. The fullname() function is an exception, and will show the aliases as well.
There are often limitations on the names of players. Player names and their aliases must be unique. Many games restrict player names to be single words (no whitespace allowed) and enforce a maximum length. Some may have lists of forbidden names that players can not choose.
The @name command sets object names.
PennMUSH provides several English-style adjectives for distinguishing objects with the same name that are nearby, including my object (object in your inventory), here or this here object (object in your location), toward exit (an exit in your location), and cardinal numbers (1st, 2nd, 3rd, etc.) for picking out a particular object when many match (using the order in which they would be seen).