[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Questions about tree-sitter
From: |
Madhu |
Subject: |
Re: Questions about tree-sitter |
Date: |
Mon, 27 Nov 2023 12:46:40 +0530 (IST) |
* Eli Zaretskii <83zg26b1nz.fsf @gnu.org>
Wrote on Fri, 01 Sep 2023 13:58:24 +0300
>> Date: Fri, 01 Sep 2023 14:45:31 +0530 (IST)
>> Cc: emacs-devel@gnu.org
>> From: Madhu <enometh @meer.net>
>> * Eli Zaretskii <834jkecrl1.fsf @gnu.org>
>> Wrote on Fri, 01 Sep 2023 09:53:14 +0300
>> >> From: Madhu <enometh @meer.net>
>> >> Date: Fri, 01 Sep 2023 08:09:27 +0530
>> >> * Yuan Fu <C3EFD02D-F02F-4BE8-A6F4-A2506A9EFC90 @gmail.com> :
>> >> Wrote on Wed, 30 Aug 2023 00:03:03 -0700:
>> >> >> On Aug 29, 2023, at 2:26 PM, Augustin Chéneau (BTuin) <btuin
>> >> >> @mailo.com> wrote:
>> >> >> 1. Is there a way to reload a grammar? Emacs is pretty nice
>> >> >> as a playground for testing grammars, but once a grammar is
>> >> >> loaded, it won't be loaded again until Emacs restarts (as far
>> >> >> as I know). Is it possible to reload a grammar after
>> >> >> modifying it?
>> >> >
>> >> > No, and it’s probably not easy to implement either, since unloading
>> >> > the grammar would require Emacs to purge/invalid all the
>> >> > node/query/parsers using that grammar.
I ran into this, when a "wrong" tressitter dll got loaded, and had an
undefined symbol. In this situation there is no invalid state to
purge, and all I needed was a way to call dlclose from Elisp. The
shared library loading and unloading mechanism could have been exposed
to the user, in the spirit of the lisp machine.
[There may be an argument of not letting the user shoot himself in the
foot but in context it would not apply, but the security argument only
covers a locking down on freedoms of the user -- retaining control
with developers that consolidates power in a particular direction]
> It is not a change, no. See above: we already use quite a few of
> libraries for specific jobs related to important Emacs
> functionalities. For example, good support for sophisticated text
> display and shaping features is unimaginable without HarfBuzz, and
> some scripts cannot even be displayed in a reasonably legible way
> without it.
[But there is a fundamental sense in which the use of treesitter
modules ( "plugins" which are designed to be loaded and unloaded) that
different from the base library examples you give, which I hope you
can appreciate.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: Questions about tree-sitter,
Madhu <=