[racket-dev] differences in error reporting
Update: it happens also for system supplied functions, for example
(car 3) displays the same behavior.
However, it happens always, when certain programs are in the editor,
and never with others.
I don't see a pattern. At this moment I cannot attach a file which
causes this (am typing in a phone...)
will send an example tomorrow.
P.
2013/1/30, Robby Findler <robby at eecs.northwestern.edu>:
> I don't see that with this program:
>
> #lang racket
>
> (define (integer->roman n)
> (cond ((not (integer? n))
> (raise-argument-error 'integer->roman "integer?" n))
> ((positive? n)
> (apply string-append n))
> ((negative? n)
> (apply string-append "NEGATIVVS " 1))
> (else
> "NVLLA")))
>
> Welcome to DrRacket, version 5.3.2.3--2013-01-29(32529d89/d) [3m].
> Language: racket; memory limit: 128 MB.
>> (integer->roman 3.3)
> . . integer->roman: contract violation
> expected: integer?
> given: 3.3
>> (integer->roman 3.3)
> . . integer->roman: contract violation
> expected: integer?
> given: 3.3
>>
>
>
> On Tue, Jan 29, 2013 at 4:33 PM, Pierpaolo Bernardi
> <olopierpa at gmail.com>wrote:
>
>> If I use raise-argument-error in my functions, like this:
>>
>> (define (integer->roman n)
>> (cond ((not (integer? n))
>> (raise-argument-error 'integer->roman "integer?" n))
>> ((positive? n)
>> (apply string-append (positive-integer->roman n)))
>> ((negative? n)
>> (apply string-append "NEGATIVVS " (positive-integer->roman (-
>> n))))
>> (else
>> "NVLLA")))
>>
>> I get errors like this:
>>
>> Welcome to DrRacket, version 5.3.2.2--2013-01-26(88404f3/a) [3m].
>> Language: racket [custom].
>> > (integer->roman 3.3)
>> integer->roman: contract violation
>> expected: integer?
>> given: 3.3
>> > (integer->roman 3.3)
>> . . C:\Program
>> Files\Racket-Full-5.3.2.2\collects\racket\private\more-scheme.rkt:263:2:
>> integer->roman: contract violation
>> expected: integer?
>> given: 3.3
>>
>> That is, from the second time on I get the extraneous prefix. Is this
>> expected?
>>
>> P.
>>
>>
>> _________________________
>> Racket Developers list:
>> http://lists.racket-lang.org/dev
>>
>>
>
--
Inviato dal mio dispositivo mobile