[fpc-pascal] Namespaces Support

Dmitry Boyarintsev skalogryz.lists at gmail.com
Sun Oct 27 03:23:58 CET 2013

On Sat, Oct 26, 2013 at 9:17 PM, Fabrício Srdic <fabricio.srdic at gmail.com>wrote:

> D2009 "forced" us to adjust our existing code base to its new
> UnicodeString support, but in return it give us internationalization
> support and new possibilities.
Again, this is not really accurate. Internationalization is provided by
underlying text-rendering engine. In Delphi case - Windows OS. So
multilingual has been there from the start. All you had to do was using
proper API calls together with either VCL components or 3d-party unicode
aware components. WideString took care of that nicely.
People who wanted multilingual support - had it.

D2010 have introduced the namespace feature and DXE2 "forced" us to adjust
> our existing code base to its new unit scope names - namespace of its base
> units - but in return it give us new possibilities to organize our existing
> code base through namespaces, a feature that is present in all other
> entreprise-class dev platforms - e.g Java and .NET - promoting code reuse
> and providing us a more clear RTL and API.
As Marco said earlier (multiple times in other threads) namespaces are used
in Java and .NET as either languages don't have "units".
Adding "features" just because "enterpise-class dev platforms" have them is
more marketing move, than actual technical need.

I must assume you had no problems organizing your code while working D2009
w/o namespaces?
Were you unable reuse the code you wrote without namespaces? Were your
units and code that you created unclear to you?

> Other examples include the addition of Generics and the changes to many
> classes like TList and so on.
> Today, after "forced" us to adjusting our code base many times, Delphi
> provide us generics, closures, namespaces and internationalization support.
> Its a great evolution, do not you think?
No, these are sales points and language overloading features.

> On the other hand, fpc community seems to be resistent to implement some
> improvements - sorry, "changes" - that Delphi already has because it
> "forces" the users to adjust some peaces of their existing code base.
Of course.
I had to pay for a new compiler that forces me to spend more time (and
money) to update the existing code, that has been debugged and possibly
introduce new bugs and loose even more time (and money) by fixing them?
I seriously doubt. That's why there're companies who are still using D6+ as
well as 3d components are keeping up with D6+ compatibility..
That's also another reason, why they would stick to the good-old Delphi,
rather than try to port their code to FPC/Lazarus.

So, what do you mean when say "be better than Delphi"? Be more backward
> compatible and in other hand have fewer features than Delphi?
> I really don't understand this kind of reaction.
Well, this is not a real discussion anymore, but a pure flame. So before
Jonas comes in and sends everyone to fpc-other, I'd say the following:

You don't have to understand. Just follow the corporate guide blindly.
Every new feature is a bless. Spend you time and money in constant update
of what you have. Btw, they probably have a business plan of releasing the
new compiler version (yes - with new features) every other year.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20131026/3c67eae8/attachment.html>

More information about the fpc-pascal mailing list