Re: [sibilant] Why are some macros defined in core.lisp and others in macros.lisp?
- Evan R. Murphy
- 2010-12-15 @ 21:28
Great, thanks for the super-clear explanation!
On Wed, Dec 15, 2010 at 3:20 PM, Jacob Rothstein
> Sibilant bootstraps from the macros defined in core.lisp. Probably
> some of the macros in core.lisp can be moved into macros.lisp and
> should be, but I think the core that can't be are defmacro, lambda,
> and anything that those macros need. Everything else can and should
> be moved to macros.lisp. Similarly, the order of macros in
> macros.lisp is important, because many of the macros towards the
> bottom are defined in terms of the macros above.
> I added an issue on github:
> https://github.com/jbr/sibilant/issues/issue/29. If you feel like it,
> I'd love a patch that applies cleanly. If not, I'll get to it soon,
> as I agree there should be as few macros in core.lisp as possible.
> On Wed, Dec 15, 2010 at 10:54 AM, Evan R. Murphy <firstname.lastname@example.org>
> > Is there a consistent rule of thumb for deciding whether a macro should
> > defined in core.lisp or in macros.lisp? I get the sense that only the
> > fundamental operators are defined in the core and all others elsewhere,
> > is there a clear place to draw the line? Could some definitions be moved
> > between core.lisp and macros.lisp without breaking it?
> > Still trying to understand how Sibilant ticks. :)
> > Evan