This is an investigation of whether implementations return `#t`

or `#f`

to `(exact? (sqrt 25/4))`

. RnRS recommends, but does not require, that the value is `#t`

, but implementations are free to convert 25/4 to an inexact value and return the inexact square root of that. On implementations where exact rationals are not supported, `(exact? (sqrt 4))`

was substituted.

Supports exact `sqrt`

: Racket, Gauche, MIT, Gambit, Chicken with the `numbers`

egg, Guile, Chez, Vicare, Larceny, Ypsilon, Mosh, IronScheme, STklos, Unlikely, Rep, Sizzle, LMU, Sagittarius, Owl Lisp

Supports only inexact `sqrt`

: plain Chicken, Bigloo, Scheme48/scsh, Kawa, SISC, SCM, NexJ, JScheme, KSi, BDC, Schemik, UMB, Elk, SXM, Dfsch, Inlab, Foment, Picrin, Chibi

Does not support `sqrt`

: SigScheme, Shoe, Llava, FemtoLisp, Oaklisp

Indeterminate results (`exact?`

does not exist and neither `eq?`

nor the printer can be relied on to distinguish): SIOD, XLisp