|Subject:||Re: Emacsy v0.1.1 release - with a bare bones web browser|
|Date:||Wed, 24 Jul 2013 00:05:19 -0400|
I'm working on a Google Summer of Code project Emacsy, an embeddable Emacs-like library for Guile. I just finished putting out a release. The big new thing is it has a GTK WebKit browser as an example program. See screenshot.
Ludo and I were discussing some details below that we wanted to share with guile-user.
It's still very much alpha, but you can kick the tires some.
On Jul 18, 2013, at 5:57 PM, Ludovic Courtès <address@hidden> wrote:
> (Cc’ing Mark, who has shown interest on IRC. Feel free to reply to this
> message, or part of it, publicly on address@hidden.)
> • The scheduler described in block.nw looks like a nice use of
> delimited continuations. So it’s the user’s responsibility to call
> ‘block-tick’ once in a while to allow progress to be made, right?
Yes. It's cooperative multi-tasking. However, there is a feature you can enable whereby if (block-yield) isn't called within X seconds, it can send an alarm to abort the uncooperative coroutine.
> • The (emacsy buffer) looks very, well, Emacs-y. I wonder what could
> be factorized with Guile-Emacs. (Regarding buffer-local variables,
> BT had a fancy trick involving delimited continuations for
> Guile-Emacs; I don’t remember the details, but it seems that the
> ‘locals’ slot you have here is simple and does the job.)
Yeah, I've looked at a lot of different ways to do buffer-local variables, and I've seen BT's code, but I couldn't quite make sense out of it. In the end, I'm not certain it's a feature we want to replicate. Perhaps if it's a buffer-local-able variable, it ought to be a parameter with a fluid backing? Such that instead of earmuffs in Common Lisp *beware-var*, we'd have (beware-var) parameters that could be doing tricky stuff.
> • I missed C-h b & co. in hello-emacsy; I guess on-line documentation
> is for later?
Yeah, I'm stymied on that end right now by the (web server) bug that only works on the first request on OS X (Need to make a test case). I've got Debian running now though, so I should be able to push forward on that.
> I like what I’ve seen so far! It seems that it’s all working according
> to the plan.
> From a “marketing” viewpoint, I think it’d be good to emphasize examples
> and perhaps Emacsification of a concrete application (while remaining
> cautious, because that can be a can of worms, of course.)
I'm shooting for gathering minimal examples right now rather than Emacsifying an existing app. In part just because it's so much easier to understand the simple examples, both for me and for others. But I'd be interesting in considering some other apps.
> Could you also send a few paragraphs to guile-user@ describing what
> you’ve done in your own words, perhaps highlighting the technical tricks
> that you like the most?
Will do with an announce of Emacsy 0.1.1, so that people will have something to play with.
> Happy hacking!
|[Prev in Thread]||Current Thread||[Next in Thread]|