[plt-scheme] identifier already imported (from a different source)

From: Doug Orleans (dougorleans at gmail.com)
Date: Fri Jun 2 16:47:44 EDT 2006

Is this supposed to be an error?  I thought you're allowed to import
the same identifier multiple times via different require chains.

dro <166> % cat foo/foo.ss
(module foo mzscheme
  (define foo 'FOO)
  (provide foo)
)
dro <167> % cat foo/foo2.ss
(module foo2 mzscheme
  (require "foo.ss")
  (provide (all-from "foo.ss"))
)
dro <168> % cat foo.ss
(module foo mzscheme
  (require "foo/foo.ss")
  (provide (all-from "foo/foo.ss"))
)
dro <169> % cat foo2.ss
(module foo2 mzscheme
  (require "foo.ss")
  (require "foo/foo2.ss")
)
dro <170> % mzscheme -qt foo2.ss
Welcome to MzScheme version 301.16, Copyright (c) 2004-2006 PLT Scheme Inc.
foo2.ss:3:2: module: identifier already imported (from a different source) at: foo in: (require "foo/foo2.ss")


--dougorleans at gmail.com


Posted on the users mailing list.