;;;; Programer: Kevin Rosenberg based on code by Peter Norvig
;;;; Date Started: 1 Nov 2001
;;;;
-;;;; $Id: io.lisp,v 1.3 2003/05/06 15:51:20 kevin Exp $
+;;;; $Id$
;;;;
-;;;; This file is Copyright (c) 2001-2002 by Kevin M. Rosenberg
+;;;; This file is Copyright (c) 2001-2003 by Kevin M. Rosenberg
;;;; and Copyright (c) 1998-2002 Peter Norvig
;;;;
;;;; Reversi users are granted the rights to distribute and use this software
(in-package #:reversi)
-(eval-when (:compile-toplevel)
- (declaim (optimize (safety 1) (space 0) (speed 3) (compilation-speed 0))))
-
(eval-when (:compile-toplevel :load-toplevel :execute)
(let ((square-names
(cross-product #'concat-symbol
'(? A B C D E F G H ?)
'(? 1 2 3 4 5 6 7 8 ?))))
+ (declare (type list square-names))
(defun h8->88 (str)
"Convert from alphanumeric to numeric square notation."
(defun 88->h8 (num)
"Convert from numeric to alphanumeric square notation."
(if (valid-p num)
- (elt square-names num)
+ (nth num square-names)
num)))
(defun moves-to-string (moves)