guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Editing Scheme in the installation image


From: Mike Gran
Subject: Re: Editing Scheme in the installation image
Date: Sun, 8 Jan 2017 18:43:22 +0000 (UTC)



>On Sunday, January 8, 2017 2:48 AM, Ludovic Courtès <address@hidden> wrote:
>Hello,

>Maxim Cournoyer <address@hidden> skribis:

>> address@hidden (Ludovic Courtès) writes:
>>
>>> Mike Gran <address@hidden> skribis:
>>>
>>>> The functions expressed in Scheme in Zile-on-Guile are the same
>>>> as upstream Zile had.  It is a fairly limited set.
>>>> Zile-on-Guile is a Scheme, not an elisp, even though the functions
>>>> it expresses have elisp-like names. So there is little portability
>>>> between Emacs and this Zile.
>>>
>>> Yes.  Any idea how hard it would be to port the real Paredit to
>>> Zile-on-Guile?
>>
>> Isn't there native support for elisp in Guile? Would this allow running
>> directly Paredit (elisp), provided that Zile-on-Guile implements
>> everything that Paredit needs from the Emacs API?
>>
>> This is probably more work in the short term than rewriting Paredit in
>> Scheme, but it would enable Zile-on-Guile to potentially run (m)any Emacs
>> packages.

>I think it would take more than elisp compilation support to port Emacs
>packages to Zile-on-Guile.  Essentially we’d need many APIs that Emacs
>provides.

I looked at the current beta of paredit, and I quickly scanned
the code to look for *emacs* primitives.  Below please find a list
of the primitives that Zile is missing.  Note that this isn't the
missing *elisp* procedures.
Adding the majority of these is quite straightforward, but,
some have heretofore been out of scope for Zile. The missing
categories of concepts are
- lisp and scheme filling and indentation
- blinking the cursor or a matching parenthesis
- handling comments
- handling what emacs calls "lists" which is moving up and down
  balanced parentheses
Here's the list. I probably missed a few.
backward-delete-char-untabify 
backward-up-list 
beginning-of-defun 
blink-matching-open 
buffer-end 
buffer-string 
buffer-substring 
char-after 
char-before 
check-parens 
comment-forward 
comment-indent 
comment-kill 
comment-region 
comment-search-forward 
current-column 
delete-active-region 
delete-indentation 
end-of-defun 
indent-sexp 
indent-to 
interactive 
kill-whole-line 
line 
lisp-fill-paragraph 
lisp-indent-function 
lisp-indent-line 
make-marker 
matching-paren 
message 
narrow-to-region 
newline 
point 
point-at-bol 
point-at-eol 
point-max 
point-min 
position 
read-kbd-macro 
region-beginning 
region-end 
save-excursion 
scan-sexps 
show-paren-mode 
skip-chars-forward 
start+end 
uncomment-region 
up-list 
yank-pop 
zerop 
Thanks,
Mike


reply via email to

[Prev in Thread] Current Thread [Next in Thread]