Sha256: 7dd45bcecf9083cad5ec3093c9e16e8f93eb8dec3c66f586da6e9bd39194390d

Contents?: true

Size: 594 Bytes

Versions: 396

Compression:

Stored size: 594 Bytes

Contents

#lang racket

(provide response-for)

(define (response-for phrase)
  (cond
    [(silent? phrase) "Fine. Be that way!"]
    [(shouting? phrase) "Whoa, chill out!"]
    [(question? phrase) "Sure."]
    [else "Whatever."]))

(define (silent? phrase)
  (or (null? phrase)
      (equal? (string-normalize-spaces phrase) "")))

(define (shouting? phrase)
  (and (equal? (string-upcase phrase) phrase)
       (ormap (lambda (x) (char-alphabetic? x)) (string->list phrase))))

(define (question? phrase)
  (char=? #\?
          (string-ref phrase
                      (- (string-length phrase) 1))))

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.159 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.158 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.157 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.156 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.155 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.154 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.153 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.152 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.151 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.150 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.149 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.148 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.147 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.146 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.145 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.144 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.143 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.142 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.141 tracks/racket/exercises/bob/example.rkt
trackler-2.2.1.140 tracks/racket/exercises/bob/example.rkt