X-Git-Url: http://git.kpe.io/?p=reversi.git;a=blobdiff_plain;f=io.lisp;h=635f90c0c76aa46ca8dc998d00e503183e804974;hp=6a61dba21885ca3245a21e74c9182f47a20911b2;hb=d92820d39c18a373611b5bfb018631cffe3e4bcd;hpb=b29c5d666cbd1d0c08d4da49b32e4ed41c6dabba diff --git a/io.lisp b/io.lisp index 6a61dba..635f90c 100644 --- a/io.lisp +++ b/io.lisp @@ -1,17 +1,24 @@ +;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10; Package: reversi -*- ;;;;*************************************************************************** ;;;; ;;;; FILE IDENTIFICATION ;;;; -;;;; Name: io.cl +;;;; Name: io.lisp ;;;; Purpose: Basic Input-Output for reversi -;;;; Programer: Kevin M. Rosenberg, M.D. +;;;; Programer: Kevin Rosenberg based on code by Peter Norvig ;;;; Date Started: 1 Nov 2001 -;;;; CVS Id: $Id: io.lisp,v 1.1 2002/10/25 08:36:42 kevin Exp $ ;;;; +;;;; $Id: io.lisp,v 1.6 2003/06/17 05:47:18 kevin Exp $ +;;;; +;;;; 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 +;;;; as governed by the terms of the Lisp Lesser GNU Public License +;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. ;;;;*************************************************************************** -(in-package :reversi) -(declaim (optimize (safety 1) (debug 3) (speed 3))) +(in-package #:reversi) (eval-when (:compile-toplevel :load-toplevel :execute) @@ -19,6 +26,7 @@ (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." @@ -28,7 +36,7 @@ (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)