Hello everybody,

  we have already discussed several times that a non-negligeable performace
improvement is to be had by relying less on smart pointers and constref'ing
arguments everywhere. The task is time consuming and disaster-prone, so I
propose we join forces. I've set up a task in savannah (
https://savannah.gnu.org/task/index.php?12916 )  where we may comment on
the progress and send patches with changes as atomic as possible, i.e. such
that they may be applied into the trunk after peer-review.

  See for instance the first attached patch, where I constref'ed a lot of
usages of string in analyze.?pp, string.?pp and elsewhere.

Suggestions:

1. We work with types, instead of files: first string, then tree, etc.
2. We don't leave source files "unfinished", i.e. with some functions
converted others not. Because we don't want to work on all types at the
same time, "unfinished" is to be understood wrt. to a given type.
3. We don't focus on this task, just maybe complete a few files from time
to time, and check / update the task in savannah, etc.
4. I don't know where changes would have greatest impact on performance,
but I guess targeting basic data manipulation routines for strings and
trees (next in the list) makes sense. Any ideas?
5. We may start a new branch, but conflict-hell is just around the corner.
It'd be good to integrate the patches into the trunk once they've been
checked instead of waiting for the whole task to be finished.

I know this is not critical stuff, but it's still possible to do some
progress on it from time to time.

Best,
--
Miguel de  Benito.
_______________________________________________
Texmacs-dev mailing list
Texmacs-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/texmacs-dev

Reply via email to