function onCommand( alias ) {
		var aliases;
		var out;
		var N;
		var i;

		aliases = repl._aliases;
		N = aliases.length;

		if ( isString( alias ) ) {
			out = alias2pkg( alias );
		}
		// If provided an `alias` which is not a string or we failed to resolve a package name based on the provided string value, we try to resolve a string alias (and subsequently a corresponding package name) by searching the list of cached references of global variables/properties...
		if ( !out ) {
			i = indexOf( N/2, aliases, 2, 1, alias );
			if ( i >= 0 ) {
				out = alias2pkg( aliases[ i-1 ] );
			}
		}
		// If we failed to resolve a package name and the provided value is an object, try finding a provided value's constructor (e.g., if provided a `Uint32Array`, try finding the package name for `Uint32Array`)...
		if ( !out && typeof alias === 'object' && alias !== null && alias.constructor ) {
			i = indexOf( N/2, aliases, 2, 1, alias.constructor );
			if ( i >= 0 ) {
				out = alias2pkg( aliases[ i-1 ] );
			}
		}
		if ( out ) {
			return out;
		}
		repl._ostream.write( 'Error: unrecognized alias or alias is not associated with a package (such as a\nREPL-specific command). Alias: `'+alias2string( alias )+'`.\n' );
	}
Returns the package name corresponding to a provided alias.

@private
@param {*} alias - alias
@returns {(string|void)} package name