protected function getReference(/*# string */ $name)
    {
        // default value
        $default = $this->defaultValue($name);

        // found in environment
        if (false !== getenv($name)) {
            return getenv($name);
        } elseif (null !== $default) {
            return $default;

        // PHP globals, _SERVER.HTTP_HOST etc.
        } elseif ('_' === $name[0]) {
            return $this->matchGlobalVars($name);

        // not found
        } else {
            return null;
        }
    }