OFFSET
0,3
LINKS
A. Karttunen, Gatomorphisms (with the complete Scheme source)
PROG
(Scheme functions implementing this automorphism on list-structures:)
(define (gma082354! s) (cond ((not (pair? s)) s) ((not (pair? (cdr s))) s) ((not (pair? (cddr s))) (swap! (robl! s))) (else (robl! s))))
(define (robl! s) (let ((ex-car (car s))) (set-car! s (cddr s)) (set-cdr! (cdr s) ex-car) (swap! (cdr s)) (swap! s) s))
(define (swap! s) (let ((ex-car (car s))) (set-car! s (cdr s)) (set-cdr! s ex-car) s))
CROSSREFS
KEYWORD
nonn
AUTHOR
Antti Karttunen, Apr 17 2003
STATUS
approved