r10498: fix number type
[reversi.git] / utils.lisp
index d201033e9cd3750f770d6c2ced5e6ace72e7dcc8..29d9a42506ffdf50fa253e658b3ceb48332d40a0 100644 (file)
@@ -7,17 +7,17 @@
 ;;;;  Programer:      Kevin M. Rosenberg
 ;;;;  Date Started:   1 Nov 2001
 ;;;;
-;;;; $Id: utils.lisp,v 1.3 2002/10/25 12:39:15 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 
 ;;;;
 ;;;; 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) (compilation-speed 0)))
+(in-package #:reversi)
+
 
 (defmacro missing-argument ()
   `(error "Missing an argument to a constructor"))
   Like mapcon, but uses append instead of nconc."
   (apply #'append (mapcar fn list)))
 
-(defun random-elt (seq) 
+(defun random-nth (seq)
+  (declare (list seq))
   "Pick a random element out of a sequence."
-  (elt seq (random (length seq))))
+  (nth (random (length seq)) nth))
 
 (defun concat-symbol (&rest args)
   "Concatenate symbols or strings to form an interned symbol"