Correct On Wed, Oct 23, 2013 at 4:38 PM, Erik Pearson <e...@adaptations.com> wrote: > On Wed, Oct 23, 2013 at 3:31 PM, Jay McCarthy <jay.mccar...@gmail.com> > wrote: >> >> Here are two ideas. >> >> 1) You simply have an old use of the original net/url. When #<url> is >> printed, it uses the symbolic name and you can't really figure out >> what the underlying code came from. I would do a grep to make sure >> this is not the case. > > > Would the operative places to look be the point at which the url object is > created and then where it is used? In other words, if it is created in the > context of net/url (i.e. a module where net/url is required) and used in a > module with adaptnet/url required, it will look like a #<url> (when printed) > but not be a url? according to adaptnet/url's url-structs, and where the > object travels in between doesn't make a difference? > >> >> 2) You are using namespaces somewhere and actually have two instances >> of the same module somewhere where a value produced by copy 1 is going >> to copy 2. This is possible with the Web server if you don't set up >> the servlet namespace properly: >> >> >> http://docs.racket-lang.org/web-server-internal/dispatch-servlets.html#(part._namespace) >> >> On Wed, Oct 23, 2013 at 4:25 PM, Erik Pearson <e...@adaptations.com> >> wrote: >> > Excuse my poor experience with contracts, this is probably an easy one. >> > >> > I'm using a copy of net/url and have a strange problem. The copied >> > library >> > is working fine in general, but this problem cropped up today: >> > >> > struct:exn:fail:contract:blame url-port: contract violation >> > expected: url? >> > given: #<url> >> > in: the 1st argument of >> > (-> url? (or/c #f number?)) >> > contract from: >> > /home/epearson/work/racket/github/adaptnet/url-structs.rkt >> > blaming: /home/epearson/work/racket/github/racqueb/httpc.rkt >> > at: /home/epearson/work/racket/github/adaptnet/url-structs.rkt:4.28 >> > >> > The error is thrown in my usage of url-port which is being passed a >> > perfectly good url struct object. The file is requiring the copied >> > url-structs. If I play with the function that is being blamed in >> > httpc.rkt >> > via the repl in dr racket, this specific error is not thrown. The call >> > to >> > (url-port url) succeeds without throwing this contract exception. >> > >> > From my primitive understanding, I'm flummoxed: Why is a #<url> not a >> > url? >> > >> > I suspected that there may have been a leftover require of net/url >> > confusing >> > things, but I can't find any in my code. >> > >> > Using racket head from github 5.90.0.9--2013-10-20(d6610289/d) >> > >> > Help! >> > >> > Thanks, >> > Erik. >> > >> > >> > >> > ____________________ >> > Racket Users list: >> > http://lists.racket-lang.org/users >> > >> >> >> >> -- >> Jay McCarthy <j...@cs.byu.edu> >> Assistant Professor / Brigham Young University >> http://faculty.cs.byu.edu/~jay >> >> "The glory of God is Intelligence" - D&C 93 > > > > > -- > Erik Pearson > Adaptations > ;; web form and function
-- Jay McCarthy <j...@cs.byu.edu> Assistant Professor / Brigham Young University http://faculty.cs.byu.edu/~jay "The glory of God is Intelligence" - D&C 93 ____________________ Racket Users list: http://lists.racket-lang.org/users