From: danb
Subject: Re: (defX-export ...
Date: 
Message-ID: <929e01ac-1bff-4066-96f6-c7f9d46200b2@n77g2000hse.googlegroups.com>
On Mar 21, 4:17 pm, Numeromancer <·······@sbcglobal.net> wrote:
> I find [putting together the :export list] tedious.

Same here.

> (defmacro def(un|var|paramater|const|macro|...)-export

I haven't done this methodically, but I'm using
these names so far:

defun    + export = defxport
defmacro + export = macxport
defun    + inline = def-inline  (might change this)

> I have a nagging fear that the appeal of a neat macro
> is causing me to overlook something.

The chaos of everyone using a different dialect?

> I know most readers of the code will expect
> to find all exported symbols in defpackage

Until they don't see any.  Then they'll start to wonder.

> any technical problems

I haven't had any.  I also have a nice macro for
single-file packages, which was my first macro to
use progn, and which Kenny helped me with:

(defmacro in-defpackage (name &rest options)
  `(progn
     (defpackage ,name ,@options)
     (in-package ,name)))

> should I just tell my nag to shut up?

Ask your nag what has it worried.  Maybe it's
an artifact of your pre-Lisp days.

As for the definition names, I seem to recall seeing
names like XDEF and XMAC in some Arc code somewhere.
But what if you want to export an inline function?
This is what we really need to discuss.  A good naming
convention for concise definition macros.  One simple
system might be DEF for functions and MAC for macros,
as in Arc, an IN prefix for inline functions, and
an X prefix or XPORT or -EXPORT suffix for exporting:

[in]def[xport]
    mac[xport]

--Dan

------------------------------------------------
Dan Bensen
http://www.prairienet.org/~dsb/

"Lispers ... almost by definition, don't know
any modern programming languages."
--Dr. Frog