Вопрос собственно в том, возможен ли сабж?
Например:
(define automate (let ((state #f)) (lambda() (if state (set! state #f) (set! state #t)) (write state))))
(automate)
(automate)
(automate)
; #t#f#t
Рботает как автомат, но входной алфавит ему не нужен. Это не соответствует определению автомата на вике. Это автомат?