[plt-dev] weird error; contracts for xml error

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Sat May 30 15:46:41 EDT 2009

On Sat, May 30, 2009 at 12:17 PM, Matthias Felleisen
<matthias at ccs.neu.edu> wrote:
> 1. what does this really mean:
>> Making Web pages in /Users/matthias/0Unison/0Web/
>> link: module mismatch, probably from old bytecode whose dependencies have
>> changed: variable not provided (directly or indirectly and at the expected
>> position) from module: "/Users/matthias/plt/collects/xml/private/reader.ss"
>> accessed from module: "/Users/matthias/plt/collects/wxme/xml.ss" at source
>> phase level: 0 in: provide/contract-contract-id-read-xml.2
> This happened right after I ran setup-plt -l xml.
> 2. here is a contract error, which I believes illustrates the "pressure of
> contracts" conjecture:
>> Making Web pages in /Users/matthias/0Unison/0Web/107-f08/
>> (file "/Users/matthias/plt/collects/xml/private/reader.ss") broke the
>> contract
>>  (->
>>   (or/c location? symbol? #f)
>>   (or/c location? symbol? #f)
>>   symbol?
>>   (or/c permissive/c string?)
>>   attribute?)
>>  on make-attribute; not in permissive mode
> So this seems to mean a (permissive? #t) is missing from reader.ss. I added
> it and 'it works now' but I don't think that's the proper way to go about
> it.

I don't know what the pressure of contracts is, but the XML parameter
permissive? is basically only used by the XML tool in DrScheme to put
the special Scheme boxes inside of the XML behind the XML box. You
should put it in _your_ code, not the XML collection if you need it to
be in permissive mode.


Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University

"The glory of God is Intelligence" - D&C 93

Posted on the dev mailing list.