Sha256: 92f01c35e9e6cf05eccba2a691fb6c66dba540827b878fa53a71613b629b2560

Contents?: true

Size: 762 Bytes

Versions: 396

Compression:

Stored size: 762 Bytes

Contents

(defpackage #:robot
  (:use #:common-lisp)
  (:export #:build-robot #:robot-name #:reset-name #:robot))

(in-package #:robot)

(defun random-alpha-char ()
  (code-char (+ (char-code #\A) (random 26))))
(defun random-digit-char ()
  (code-char (+ (char-code #\0) (random 10))))

(defun random-robot-name ()
  (concatenate 'string (list (random-alpha-char)
                             (random-alpha-char)
                             (random-digit-char)
                             (random-digit-char)
                             (random-digit-char))))

(defun build-robot () (make-instance 'robot))
(defclass robot ()
  ((name :reader robot-name :initform (random-robot-name))))
(defun reset-name (robot)
  (setf (slot-value robot 'name) (random-robot-name)))

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.179 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.178 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.177 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.176 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.175 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.174 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.173 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.172 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.171 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.170 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.169 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.167 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.166 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.165 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.164 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.163 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.162 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.161 tracks/common-lisp/exercises/robot-name/example.lisp
trackler-2.2.1.160 tracks/common-lisp/exercises/robot-name/example.lisp