[fpc-devel] Generics.Collections as package for Lazarus or package for FPC RTL

Anthony Walter sysrpl at gmail.com
Tue Jan 26 23:27:49 CET 2016


I guess this is good time to ask, how would the community feel about
setting a new standard for Free Pascal units going forward? I am thinking
that since FPC 3.0 is now official we don't really have a good excuse to
start using many of the great new language features it brings, such as
dotted name spaces, type helpers on intrinsic types, and of course the now
good working generics.

I would propose we start migrating new units to this type of standard:

unit Core.Text;

New string related routines go here, including type helper extensions to
the string type. It may incorporate my fast unicode string search and
splitting engine along with the type helper StringHelper with methods such
as Split, Join, BeginsWith, EndsWith, and so on.

unit Core.Collections;

New generic container types go here including Array<T>, ArrayList<T>, and
possibly my multicast delegate TDelegate<T> (see this page
http://www.codebot.org/delphi/?doc=9568).

unit Core.Network;

New basic socket class with other socket or network types such as
TAddressName (record type with implicit conversion from string and Resolve
method). Also the unit would includes an interface type for asynchronous
network requests.

The "Core" part of the namespace indicates that these units are officially
maintained by the Lazarus and Free Pascal committee members (those with svn
commit rights) and are included with every distribution of Free Pascal. I
think we could create several of these "Core" units to better organize a
Pascal library which incorporates many of the newer and useful language
features added since FPC 2.6.4.

What do you think about this idea of adopting this new Free Pascal library
standard which I believe would result in a cleaner organization of files
and perhaps better discovery of functionality for users?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20160126/6b974d4c/attachment.html>


More information about the fpc-devel mailing list