As I continue to look at `base`

and `Data.List.NonEmpty`

this other question has occurred to me:

`Data.List.NonEmpty.NonEmpty`

is, ultimately, a re-export from `ghc-internal`

of `GHC.Internal.Base.NonEmpty`

, which module also defines an instance of `Functor`

:

```
-- | @since base-4.9.0.0
instance Functor NonEmpty where
fmap f ~(a :| as) = f a :| fmap f as
b <$ ~(_ :| as) = b :| (b <$ as)
```

`Data.List.NonEmpty`

exports `map`

, defined as:

```
-- | Map a function over a 'NonEmpty' stream.
map :: (a -> b) -> NonEmpty a -> NonEmpty b
map f ~(a :| as) = f a :| fmap f as
```

This is the question: would it be better for `Data.List.NonEmpty.map`

to be:

```
map :: (a -> b) -> NonEmpty a -> NonEmpty b
map = fmap
```