++- List reverse, canonical version                             ++- List reverse, a bit slower version

reverse = src + dest ->                                         reverse -rc = list + reversed ->
  - reverse src ( n -> attach dest n )                            if list ->
_                                                                   detach list head tail
  src : list : <T>
  dest : list : T : [src]                                           if tail ->
;                                                                     attach reversed (reverse tail) head
                                                                    else
reverse reverse -rc = list @fp ->                                     attach reversed head
  if list ->                                                        ;
    detach list head tail                                         ;
    - reverse tail @fp [ tail ]                                 _
    - fp head                                                     list : list : <T>
  ;                                                               reversed : list : T : [list]
;                                                               ;

