;;;; 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"