There seems to exist some interest in FPC modifications that are
incompatible with the official FPC code (SVN trunk). If so, we should
find means to open one or more public alternative repositories, and
possibly a dedicated mailing list, chat room... Graeme, you seem to be
the git expert, what would you suggest for the repository topic?
Next we'll have to agree about the topics, which are subject to a
redesign, extension or whatsoever. Clearly everybody can tweak the
existing code in any way, but perhaps we want to integrate various
changes into one new compiler, what deserves some considerations. IMO at
least the back-ends (target systems and CPUs) should be inherited from
the FPC trunk, because these require detailed knowledge about both the
targets and the related FPC infrastructure (code generation...). The
same for the compiler and RTS build process, at least we should have a
chance to get a fully working environment (including Lazarus) for any
non-standard compiler.
My own interests concentrate on the compiler infrastructure, where I
feel a need for a more abstract (parser oriented) API. Next comes the
consolidation of the layer beyond that API, as covered partially in my
NoGlobals branch. The result should be a more readable and extensible
compiler, best along with according documentation.
Unfortunately some restrictions apply to the possible changes to the
original code, when we want to stay in sync with the SVN trunk. I've
already tried out several ways, with questionable results. At least we
have to understand and respect the way, how SVN or Git merge updates
into an common branch. IMO large changes should be avoided, they can be
moved into include files or into subroutines in a different location. If
nothing helps, the original subroutine can be renamed, so that it is not
used further, and a new subroutine of the old name can be located
somewhere else, e.g. at the end of the unit. Perhaps somebody has more
experience with the compatibility and merging of modified code, possibly
from multiple branches?
So much for now, from my part. Please specify your own interests, if you
want to participate in an FPC fork, and want your work being noticed and
used by the community.
The same considerations apply to Lazarus forks, but that's quite a
different story. As a general note, I'd like to publish a user-oriented
Lazarus version, with only approved (documented) features, and easy
installation. Every Lazarus (LCL...) component or feature should be
added to that version only iff documented (online help available) and
implemented without major flaws. My favorites for exclusion/replacement
are AutoSize, AnchorDocking and the management of IDE form positions...
DoDi
_______________________________________________
fpc-other maillist - fpc-other@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-other