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

Reply via email to