On Tue, Nov 24, 2009 at 7:53 PM, David Creelman <creelman.david@...:
> On Tue, Nov 24, 2009 at 04:13:35PM -0800, Bhaskara Marthi wrote:
> > On Tue, Nov 24, 2009 at 3:50 PM, David Creelman <
> creelman.david@...:
> >
> > > Hi,
> > > I have a small utility I've written, cl-reminders that runs nicely in
> SBCL.
> > >
> <snip>
>
> > >
> > The specific error seems to be caused by sbcl not knowing that
> > with-smtp-connection is a macro, therefore treating (socket server) as a
> > function call. The likely causes are either 1) the macro definition of
> > with-smtp-connection has not been loaded 2) the symbol
> with-smtp-connection
> > is in a different package, and is not present in the package where your
> > unetwork-sendmail is defined.
>
> unetwork exports with-smtp-connection in its package.lisp.
> The package that uses unetwork has a :uses :unetwork clause in it.
> I thought this would mean that :unetwork exported symbols could be used
> within the package I've created.
>
Yes it should mean that. One way to check this is in the repl, switch to
the package, let's say it's called :sendmail, in which unetwork-sendmail is
defined, then do (symbol-package 'with-smtp-connection). It should say
unetwork, as opposed to sendmail. If not, then the symbol has not been
imported into the package. If it does return unetwork, but
with-smtp-connection still gives the error, that means the macro definition
has not been seen, so sbcl thinks with-smtp-connection is a function (the
default assumption). That means either that the file containing the
definition was not loaded, or perhaps that file didn't contain an
(in-package :unetwork), so that with-smtp-connection was interpreted as
belonging to the cl-user package or something. If you could post 1) the
asdf file, 2) the files containing the respective defpackage's 3) the files
containing the two function definitions, that would help. I don't know what
the convention is, but I'm guessing attaching them as individual source
files is fine.
- Bhaskara
>
> >
> > It's hard to diagnose further without seeing the code and system
> > definitions. Btw, the way you used the word "package" in your message
> makes
> > me suspect you might be confusing the role of a package and an asdf
> system.
> > In case you aren't sure about the difference, you should look at the
> > documentation further.
>
> I think I understand the difference between asdf systems and CL packages.
> I threw in the explanation of .asd file just to show that the asdf
> dependency
> was pulling in the unetwork.
>
> Is it okay to throw my code into a .tar.gz and attach it to an email here?
>
> Cheers
> David
>
> > - Bhaskara
> >
> >
> > > The version of SBCL I'm using is 1.0.25.Debian.
> > >
> > > Regards
> > > David
> > >
> > >
> > >
> ------------------------------------------------------------------------------
> > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day
> > > trial. Simplify your report design, integration and deployment - and
> focus
> > > on
> > > what you do best, core application coding. Discover what's new with
> > > Crystal Reports now. http://p.sf.net/sfu/bobj-july
> > > _______________________________________________
> > > Sbcl-help mailing list
> > > Sbcl-help@...
> > > https://lists.sourceforge.net/lists/listinfo/sbcl-help
> > >
> >
> >
> >
> > --
> > Bhaskara Marthi
> > Research Scientist
> > Willow Garage Inc.
> > 650-475-2856
>
--
Bhaskara Marthi
Research Scientist
Willow Garage Inc.
650-475-2856
|