# [racket] Fwd: typo in signatures?

 From: Neil Toronto (neil.toronto at gmail.com) Date: Mon Oct 3 13:15:17 EDT 2011 Previous message: [racket] Fwd: typo in signatures? Next message: [racket] Fwd: typo in signatures? Messages sorted by: [date] [thread] [subject] [author]

```The "...+" means "takes at least one argument".

> (+)
0
> (max)
max: expects at least 1 argument, given 0
>

I think the preferred way to check for inexact equality is to compare
the absolute difference with a small tolerance, like you were looking for.

(require rackunit)

(define (inexact=? a b epsilon)
((abs (- a b)) . < . epsilon))

(check-false (inexact=? 1 2 0.1))
(check-true (inexact=? 1 1.05 0.1))

There are more sophisticated ways to do this, but they're harder to
understand and I've never seen them implemented in a math library.

Neil T

On 10/03/2011 10:55 AM, John Riedl wrote:
> In section 3.2.2 of the online Racket documentation a number of the
> signatures of the functions end with "+", e.g.,:
>
> (max x ...+) → real?
>
> Most signatures do not have the +, including those that take an
> arbitrary number of arguments, e.g.,:
>
> (+ z ...) → number?
>
> Do the plus signs mean anything, or are they just typos?
>
> (The reason I was looking is to see if there is a version of equal?
> that takes a tolerance, like check-=? from rackunit.  What is the
> preferred way to check equality for inexact numbers?)
>
> Thanks!
> John
>
> _________________________________________________