[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Dynamic loading progress
From: |
Stephen J. Turnbull |
Subject: |
Re: Dynamic loading progress |
Date: |
Sat, 14 Feb 2015 21:18:51 +0900 |
Eli Zaretskii writes:
> > From: Stephen Leake <address@hidden>
> > Date: Fri, 13 Feb 2015 15:48:07 -0600
> >
> > My use case requires calling lisp functions; in particular,
> > put-text-property, but also other higher-level lisp functions in
> > ada-mode.
>
> Why do you need to call Lisp in the module? I think it's a no-no for
> modules to call Lisp; that should be done in the Lisp code that uses
> the module.
I don't understand. XEmacs's ELLs (dynamically loadable modules) have
no problem with calling Lisp (use Ffuncall) or using symbols (use
Fintern). The only requirement that I've seen expressed in this
thread that XEmacs ELLs don't satisfy is that a module should be
compilable for use with multiple versions of XEmacs (of course modules
actually work with multiple versions, but that's not officially
supported).
XEmacs also doesn't really support unloading, although there's an
unload function (there is no real guarantee that everything of
interest will be cleaned), but I can't really see why that's an
important requirement. It's mostly a convenience to enable a fast
compile-load-test-unload cycle, and if it works half the time, it's a
significant saving over compile-restart-load-test.
> > I need a compiled module to implement an LALR parser for the Ada
> > language that is fast enough for very large files.
>
> Why does an implementation of a parser need to call Lisp?
I can't give you a reason in the case of a parser, but in general
compiled Lisp functions may want to provide Lisp hooks, or implement
inner loops for simple functionality in C but do flexible handling of
more complex functionality in Lisp. Perhaps a similar motivation is
relevant to the Ada parser.
- Re: Dynamic loading progress, (continued)
- Re: Dynamic loading progress, Daniel Colascione, 2015/02/13
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/13
- Re: Dynamic loading progress, Daniel Colascione, 2015/02/13
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/13
- Re: Dynamic loading progress, Paul Eggert, 2015/02/13
- Re: Dynamic loading progress, Daniel Colascione, 2015/02/13
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/13
- Re: Dynamic loading progress, Daniel Colascione, 2015/02/13
- Re: Dynamic loading progress, Stephen Leake, 2015/02/13
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/14
- Re: Dynamic loading progress,
Stephen J. Turnbull <=
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/14
- Re: Dynamic loading progress, Stefan Monnier, 2015/02/14
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/14
- Re: Dynamic loading progress, Stefan Monnier, 2015/02/15
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/15
- Re: Dynamic loading progress, Stefan Monnier, 2015/02/15
- Re: Dynamic loading progress, Stephen J. Turnbull, 2015/02/14
- Re: Dynamic loading progress, Eli Zaretskii, 2015/02/14
- Re: Dynamic loading progress, Stephen J. Turnbull, 2015/02/15
- Re: Dynamic loading progress, Steinar Bang, 2015/02/15