[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Tree-sitter api
From: |
Eli Zaretskii |
Subject: |
Re: Tree-sitter api |
Date: |
Sun, 19 Dec 2021 09:11:14 +0200 |
> From: Yuan Fu <casouri@gmail.com>
> Date: Sat, 18 Dec 2021 18:51:25 -0800
> Cc: Philipp <p.stephani2@gmail.com>,
> ubolonton@gmail.com,
> theo@thornhill.no,
> cpitclaudel@gmail.com,
> emacs-devel@gnu.org,
> monnier@iro.umontreal.ca,
> stephen_leake@stephe-leake.org,
> john@yates-sheets.org
>
> >> That feature in itself won't be enough. Even with it, TreeSitter will
> >> have the same problem as GMP: allocation isn't allowed to fail, and
> >> longjmp'ing out of it isn't allowed and generally causes undefined
> >> behavior.
> >
> > It may not be enough to satisfy purists, but it's enough to allow the
> > user to save the session and shut down Emacs in an orderly fashion,
> > instead of abruptly exiting and losing all the edits.
>
> Uses can set tree-sitter-maximum-size to limit memory usage of tree-sitter.
> Buffers with size larger than that cannot enable tree-sitter. That doesn’t
> solve the problem directly but should let users avoid allocation failing most
> of the time.
Btw, we should have a good idea how frequent this out-of-memory
problem could be with tree-sitter. Did someone try to scroll through
all of xdisp.c, using tree-sitter for C Mode fontifications, and
measured the memory footprint that produces? If not, I think it would
be a good idea to try.
If the OOM problem happens frequently with large source files, it may
indeed be the case that we will need to disable tree-sitter up front
based on some size criteria.
- Re: Tree-sitter api, Yuan Fu, 2021/12/13
- Re: Tree-sitter api, Eli Zaretskii, 2021/12/13
- Re: Tree-sitter api, Philipp, 2021/12/18
- Re: Tree-sitter api, Eli Zaretskii, 2021/12/18
- Re: Tree-sitter api, Yuan Fu, 2021/12/18
- Re: Tree-sitter api,
Eli Zaretskii <=
- Re: Tree-sitter api, Yuan Fu, 2021/12/19
- Re: Tree-sitter api, Yoav Marco, 2021/12/24
- Re: Tree-sitter api, Yoav Marco, 2021/12/24
- Re: Tree-sitter api, Yuan Fu, 2021/12/25
- Re: Tree-sitter api, Eli Zaretskii, 2021/12/25
- Re: Tree-sitter api, Yuan Fu, 2021/12/26
- Re: Tree-sitter api, Eli Zaretskii, 2021/12/26
- Re: Tree-sitter api, Yuan Fu, 2021/12/29
- Re: Tree-sitter api, Eli Zaretskii, 2021/12/30
Re: Tree-sitter api, Daniel Martín, 2021/12/18