With Guile-2.0.9 (Ubuntu package), it crashes with Backtrace: In ice-9/psyntax.scm: 2683: 19 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 18 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 17 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 16 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 15 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 14 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 13 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 12 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 11 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 10 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 9 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 8 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 7 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 6 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 5 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 4 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 3 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 2 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 1 [match-each-any (#f #f #f ...) ((#f top) shift) ...] 2683: 0 [match-each-any (#f #f #f ...) ((#f top) shift) ...] ice-9/psyntax.scm:2683:37: In procedure match-each-any: ice-9/psyntax.scm:2683:37: Throw to key `vm-error' with args `(vm-run "VM: Stack overflow" ())'. which might give a clue as to where Guile-v2 is spending all its time. -- David Kastrup