⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xchess

📁 A very small LISP implementation with several packages and demo programs.
💻
字号:
#!/usr/bin/picolisp /usr/lib/picolisp/lib.l# 24sep07abu# (c) Software Lab. Alexander Burger(load "@games/chess.l")(de reply @   (prinl (glue " " (rest)))   (flush) )(de xmove ()   (when (myMove)      (let L (car *Undo)         (reply "move"            (pack               (cdr (assoc (caar L) (cdr L)))               (pick cdr (cdar L)) ) ) ) ) )(in NIL   (loop      (case (read)         (protover            (read)            (reply "feature" "myname=\"Pico Lisp Chess\"")            (reply "feature" "time=0" "sigint=0" "usermove=1")            (reply "feature" "done=1") )         (accepted (read))         (new            (seed (in "/dev/urandom" (rd 3)))            (setup (format (sys "XCHESS_DEPTH"))) )         (level (line T))         (sd (setup (read)))         (black (off *Me) (on *You))         (white (on *Me) (off *You))         (usermove            (let (L (line)  From (pack (head 2 L))  To (pack (head 2 (cddr L)))  F (get L 5))               (if (and (yourMove (intern From) (intern To)) (or (not F) (= "q" F)))                  (xmove)                  (reply "Illegal move:" (pack L)) ) ) )         (go (xchg '*Me '*You) (xmove))         (undo (undo))         (remove (undo) (undo))         (result (line T))         (random)         (hard)         (quit (bye))         (T (reply "Error (unknown command):" @)) ) ) )# vi:et:ts=3:sw=3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -