unofficial mirror of emacs-tangents@gnu.org
 help / color / mirror / Atom feed
From: Qiantan Hong <qhong@mit.edu>
To: Jean Louis <bugs@gnu.support>
Cc: "emacs-tangents@gnu.org" <emacs-tangents@gnu.org>
Subject: Re: Question: what is Emacs mode?
Date: Sat, 24 Apr 2021 05:00:01 +0000	[thread overview]
Message-ID: <7392D442-DBE5-4117-87EB-B37E12FE3A6C@mit.edu> (raw)
In-Reply-To: <YIOdGVko8MgFDQrY@protected.localdomain>

> TECHNOLOGY TEMPLATE PROJECT OHS Framework 
> https://www.dougengelbart.org/content/view/110/460/
> 
> I suggest that you also look at Doug Engelbart's work.
Nice! Seems that lots of ideas in it can be incorporated naturally 
into my model.

> I will say something what may not look possible, I rather think it is
> possible. It would be good if each of those nodes would have its
> unique ID, as then it becomes possible to have someting similar as
> OPML able to reference those parts of text even if the node change its
> position. Maybe is not feasible.
In a live system, every object automatically get a unique identity,
which is their intrinsic object identity (on many implementations 
it’s the pointer address). It’s already used for cursors and
markers in my current experimental system and I wrote
editing command carefully to preserve identity as much as possible
(so the cursor and markers can moves “along” with edited code).
So to some sense, I already have it.

Now I read the OHS framework, it makes some sense to me that
sometimes we want human interpretable ID. Currently I’m imagine
giving some tags to some node, and hope the tags from the root
to a given node uniquely determine a node. It doesn’t have the property
that you can always determine a unique node though…

> Question is the speed.
> 
> Will that system have extension language and which one? Will it be
> Emacs Lisp or different?
Sure, my current experiment is written in Common Lisp, and
Common Lisp automatically become its extension language.
It’s an “extended” Common Lisp though (aka with some macros),
because I need to support buffer/node-local environment and advices.

For a serious long-term projects, I’m not sure if CL is the right way
to go. It’s too adhoc and unnecessarily complex to my taste,
and it also lack some important features (the-environment and call/cc).
My ideal language, to this day, seems to be GNU/MIT Scheme.
(I don’t like Guile better than CL. It doesn’t have full first-class environment
support and strictly speaking not even full call/cc, because it has to
corporate with C runtime).

  reply	other threads:[~2021-04-24  5:00 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-23 20:43 Question: what is Emacs mode? Qiantan Hong
2021-04-23 21:11 ` Jean Louis
2021-04-23 22:04   ` Qiantan Hong
2021-04-24  4:22     ` Jean Louis
2021-04-24  5:00       ` Qiantan Hong [this message]
2021-04-24  9:22         ` Jean Louis
2021-04-29  3:39           ` Qiantan Hong
2021-04-29  5:02             ` Jean Louis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7392D442-DBE5-4117-87EB-B37E12FE3A6C@mit.edu \
    --to=qhong@mit.edu \
    --cc=bugs@gnu.support \
    --cc=emacs-tangents@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).