Итак, при написании этого вопроса я посмотрел на исходный код типа IntSlice и понял, что IntSlice () не является функцией sort pkg, а скорее это псевдоним для [] int, поэтому sort.IntSlice (s) превращает slice в type IntSlice.
Причина, по которой нам нужно преобразовать [] int в тип IntSlice, заключается в том, что sort.Reverse () требует типа интерфейса и должен реализовывать Len (), Swap (), Less () который [] int не реализует.
Это также напоминает мне о другом моменте, который Донован и Керниган написали относительно интерфейсов: мы не можем изменять конкретные типы, но мы можем расширять функциональность через интерфейсы, и я понял, что это пример b / c [] int - это базовый тип как часть Go language spe c, но расширенное поведение sort pkg через интерфейс интерфейса.