;ELC ;;; compiled by rms@mole.gnu.ai.mit.edu on Mon Aug 2 00:42:02 1993 ;;; from file /home/fsf/rms/e19/lisp/life.el ;;; emacs version 19.17.5. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "This file was compiled for Emacs 19")) (defconst life-patterns [("@@@" " @@" "@@@") ("@@@ @@@" "@@ @@ " "@@@ @@@") ("@@@ @@@" "@@ @@" "@@@ @@@") ("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@") ("@@@@@@@@@@") (" @@@@@@@@@@ " " @@@@@@@@@@ " " @@@@@@@@@@ " "@@@@@@@@@@ " "@@@@@@@@@@ ") ("@" "@" "@" "@" "@" "@" "@" "@" "@" "@" "@" "@" "@" "@" "@") ("@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @" "@ @") ("@@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@ " " @@") ("@@@@@@@@@" "@ @ @" "@ @@@@@ @" "@ @ @ @" "@@@ @@@" "@ @ @ @" "@ @@@@@ @" "@ @ @" "@@@@@@@@@")] "\ Vector of rectangles containing some Life startup patterns.") (byte-code "タチツ\"安テト\"安ナニ\"安ヌネ\"安ノハ\"安ヒフ\"安ヘホ\"安マミ\"安ムメ\"安モヤ\"安ユヨ\"安ラリ\"安ルレ\"維ロロロタ珮\"" [defalias life-life-char (macro lambda nil 64) life-death-char (macro lambda nil 65) life-birth-char (macro lambda nil 3) life-void-char (macro lambda nil 32) life-life-string (macro . #[nil "タチ!" [char-to-string 64] 2]) life-death-string (macro . #[nil "タチ!" [char-to-string 65] 2]) life-birth-string (macro . #[nil "タチ!" [char-to-string 3] 2]) life-void-string (macro . #[nil "タチ!" [char-to-string 32] 2]) life-not-void-regexp (macro . #[nil "タチツQ" ["[^" " " "\n]"] 3]) goto-beginning-of-buffer (macro . #[nil "タ" [(goto-char 1)] 1]) maxint (macro . #[nil "タ加ツ\"チ\"" [lsh -1 1] 4]) goto-end-of-buffer (macro . #[nil "タ" [(goto-char (maxint))] 1]) increment (macro . #[(variable) "タ ツ DE" [setq variable 1+] 4]) nil life-neighbor-deltas life-window-start life-current-generation life-generation-string abs #[(n) "チW [" [n 0] 2]] 3) (defalias 'life #[(&optional sleeptime) "チツ 暗!案ナ合" [sleeptime 1 life-setup life-display-generation life-exit (byte-code "タツ 暗 案 闇!)" [t inhibit-quit life-grim-reaper life-expand-plane-if-needed life-increment-generation life-display-generation sleeptime] 2)] 2 "\ Run Conway's Life simulation. The starting pattern is randomly selected. Prefix arg (optional first arg non-nil from a program) is the number of seconds to sleep between generations (this defaults to 1)." "p"]) (byte-code "タチツ\"暗チトナ#鞍ヌ!安ネノ\"安ハヒ\"安フヘ\"安ホマ\"安ミム\"安メモ\"安ヤユ\"安ヨラ\"暗リルレ#暗リロワ#胃ツ!" [defalias life-mode life put mode-class special random t life-setup #[nil "タツテト!ナ\"鞍 杏 安ノ\nヒ ナ ホミメヤ Sヨリp!異 椅b移ロタナ#エワンナ#6ヨb澗`)Z゙・mc j安y7゚ S瀑d\"Z゙・ヨb違 !遺b違 !椅bmタj医!`タ`|安y臚d\"亥 域 )" [nil n switch-to-buffer get-buffer-create "*Life*" t erase-buffer kill-all-local-variables case-fold-search "Life" mode-name life-mode major-mode truncate-lines 0 life-current-generation "0" life-generation-string ("Life: generation " life-generation-string) mode-line-buffer-identification window-width fill-column 1 life-window-start buffer-disable-undo life-insert-random-pattern re-search-forward "[^ \n]" replace-match "@" 2 window-height count-lines newline 8388607 move-to-column untabify life-expand-plane-if-needed life-compute-neighbor-deltas] 4] life-compute-neighbor-deltas #[nil "タ [ T[ ツ\\[テ 欝 ツ\\ッ" [-1 fill-column 2 1 life-neighbor-deltas] 9] life-insert-random-pattern #[nil "タ ツ G!!暗c" [insert-rectangle life-patterns random 10] 4] life-increment-generation #[nil "Tチ!" [life-current-generation int-to-string life-generation-string] 2] life-grim-reaper #[nil "タチ!按b庵演演ネノチハ#ヲ フ`S ム @\\fヘ=ゥホ欝ヘツハ%ZマWセホ欝欝ハ%ZミWバホ欝ミハ%ZムYペ T A' メ>ホ 欝ムモハ%-フ売ヤ 夷ツdミヘハ%夷ツdツヘハ%夷ツdユヘハ%夷ツdマムハ%夷ツdモヘハ%" [store-match-data nil 1 list living-neighbors pivot char point search-forward "@" t life-neighbor-deltas 0 32 subst-char-in-region 3 9 64 (2 3) 65 life-extinct-quit 2] 7] life-expand-plane-if-needed #[nil "タチ壕ツb暗ト` 家\\\\\\ヌ#0ツb以ノ \"位c以ノ \"位c ツ\\\\ フb囲ト` Z ZニZヌ#]フb以ノ \"位c以ノ \"位c ツ\\\\ " [done (byte-code "タbmВgチ=ツhチ=<タbm,テc按暗c按u ナ\\ニタ!杏 以ノハ\"按yツ" [1 64 nil 32 fill-column 2 scroll-left life-compute-neighbor-deltas throw done t] 3) 1 search-forward "@" fill-column 2 t insert-char 32 10 life-window-start 8388607 search-backward] 6] life-display-generation #[(sleeptime) "b庵ツ!暗 !ナ=ニヌネ\"" [life-window-start recenter 0 sit-for sleeptime t throw life-exit nil] 3] life-extinct-quit #[nil "タチ!按テト\"" [life-display-generation 0 signal life-extinct nil] 3] life-extinct error-conditions (life-extinct quit) error-message "All life has perished" provide] 4)