This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: the right way to compile and load modules
- From: Per Bothner <per at bothner dot com>
- To: kawa at sourceware dot org, mikel evins <mevins at me dot com>
- Date: Wed, 14 May 2014 00:32:41 -0700
- Subject: Re: the right way to compile and load modules
- Authentication-results: sourceware.org; auth=none
- References: <9F312D97-98C6-4F47-BDD9-B6CAF3868A28 at me dot com> <5371CFD0 dot 7070708 at bothner dot com> <7D1A5D60-5997-4B7A-9176-8F6FA315F016 at me dot com> <ED4375FE-30EE-4ABC-A9DC-2C6C4D67A87A at me dot com> <54132084-D633-4AAA-B2A4-9008FF37F779 at me dot com> <5372CA25 dot 7050602 at bothner dot com> <B01E0129-CA46-46DF-B6F1-65C33CC5A0BC at me dot com> <5372E86B dot 9020600 at bothner dot com>
On 05/13/2014 08:52 PM, Per Bothner wrote:
On 05/13/2014 07:05 PM, mikel evins wrote:
factest:
[kawa] (compiling factest.scm to factest)
[kawa] /Users/mikel/Workshop/fabric/src/fact.scm:3:9: warning - no use of fact
[kawa] factest.scm:3:1: warning - no declaration seen for fact
Not quite sure what is going on, but:
The problem is that the --main option "bleeds through" to the
require'd class fact. And the --main option changes the default to
"export nothing". (This can be a performance win, since it allows
some optimizations.)
A work-around: leave off the --main. Recent versions of Kawa
treat:
$ java kawa.repl -C foo.scm
$ java kawa.repl foo
as equivalent to:
$ java kawa.repl --main -C foo.scm
$ java foo
(If you do specify --main, you can still invoke java kawa.repl foo.)
--
--Per Bothner
per@bothner.com http://per.bothner.com/