Subject: Re: bug#74994: Improve Emacs iCalendar support

From: Richard Lawrence <[email-masked]>
Date: Thu, 23 Jan 2025 19:48:33 +0100

Eli Zaretskii <[email-masked]> writes:
 
>> Is this more about maintaining the source history, or about not wanting
>> to break the setups of people who have (require 'icalendar) or similar
>> in their configuration?
>
> The former.  As good as current VCS forensic tools are, some of the
> relevant VCS commands still don't work across renames.  So it is
> preferable to rename only when necessary.
> ...
> If there's a lot of stuff to be moved out of the file, I think it's
> better to leave the file alone, and instead start new files (as you
> have evidently done).

OK, got it. I'll see what I can do to clean up and generalize
icalendar.el without moving the existing code.

To be honest, though, I've found this rough going over the last few days
(in agreement with my previous attempts). The code in icalendar.el is
not easy for me to understand, even now; much of it appears to have been
written by someone who was more used to writing in a language like C,
and also had apprehensions about long variable names, the overhead of
accessor functions which aren't "car" or "cdr", the use of other data
structures when strings will do, etc. I'm finding it hard to integrate
the new parser with the existing code without just wholesale replacing
entire function bodies, and I find myself constantly wondering if it's
worth the effort. I may end up just leaving icalendar.el untouched and
writing an alternative diary-icalendar feature from scratch; certainly
that seems easier to me right now. If I decide that's the best route,
would anything stand in the way of that new file becoming the
default way of doing things, recommended in the manual, etc.?