記事のスライス操作版のコードは

> // ReverseArrayWithSlice はスライス操作で配列を逆順にする(再帰)
> func ReverseArrayWithSlice(arr []int) []int {
>   // ベースケース: 要素が1つ以下なら逆順にする必要なし
>   if len(arr) <= 1 {
>     return arr
>   }
>
>   // 最初の要素を取り出し、残りを再帰的に逆順にしてから結合
>   return append(ReverseArrayWithSlice(arr[1:]), arr[0])
> }

引数の配列内容を書き換えないし再帰を説明する上では面白い例だと思うが、パフォーマンスは最低だ罠。