Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Alexander Klenin
On Sun, Oct 18, 2009 at 07:28, Jonas Maebe wrote: > FPC can already do this automatically for all classes in the entire program > with whole-program optimization. You don't need sealed classes for this > (they might slightly improve those optimizations, but I doubt it will be > noticeable in real

[fpc-devel] trunk does not compile on windows

2009-10-17 Thread Paul Ishenin
Hello, FPC developers' list "PX_SdnToGregorian" symbols is not found. I looked to the pxlib package and there it is defined for all platforms except windows :) Best regards, Paul Ishenin. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Jonas Maebe
Florian Klaempfl wrote on Sat, 17 Oct 2009: Graeme Geldenhuys schrieb: 2009/10/16 Paul Ishenin : Sealed class is a class which can't be derived by another class. This one is fully supported by delphi. Would you mind explaining this - I never saw the benefit of a sealed class. From a com

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Thaddy
AFAIK the rationale for a sealed class is that it can not be extended. In big shops that has an advantage in maintaining code. Also third parties can "lock" their code. f.e.: TDoNotTouchMe = class sealed (TMyTouchableClass); Means that if you use the former you cannot break code, if you use

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Vinzent Hoefler
On Saturday 17 October 2009, Florian Klaempfl wrote: > Vinzent Höfler schrieb: > > Florian Klaempfl : > >> From a compiler developers point of view, it makes optimization > >> easier under certain cases (e.g. virtual method calls). It's the > >> same as with inline: inline has no advantage except t

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Florian Klaempfl
Vinzent Höfler schrieb: > Florian Klaempfl : > >> From a compiler developers point of view, it makes optimization easier >> under certain cases (e.g. virtual method calls). It's the same as with >> inline: inline has no advantage except that it is a hint to the compiler >> how the code can be opti

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Vinzent Höfler
Florian Klaempfl : > From a compiler developers point of view, it makes optimization easier > under certain cases (e.g. virtual method calls). It's the same as with > inline: inline has no advantage except that it is a hint to the compiler > how the code can be optimized. I really doubt that "sea

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Vinzent Höfler
Graeme Geldenhuys : > 2009/10/16 Alexander Klenin : > > "Class sealing allows extension of classes within a package, but > > prevent clients from extending such classes outside of the package." > > This might actually make some sense, see e.g. TBasicChartSeries class > > in TAChart package. > > A

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Florian Klaempfl
Graeme Geldenhuys schrieb: > 2009/10/16 Paul Ishenin : >> Sealed class is a class which can't be derived by another class. This one is >> fully supported by delphi. > > Would you mind explaining this - I never saw the benefit of a sealed > class. >From a compiler developers point of view, it mak

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Paul Ishenin
dmitry boyarintsev wrote: On Sat, Oct 17, 2009 at 8:36 AM, Paul Ishenin wrote: Please look at example here: http://edn.embarcadero.com/article/34324 TMyClassHelper there has added HelloWorld and MyFunc to the TMyClass type. But they're not part of VMT, aren't they? I am not sure

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread dmitry boyarintsev
On Sat, Oct 17, 2009 at 8:36 AM, Paul Ishenin wrote: > Please look at example here: http://edn.embarcadero.com/article/34324 > > TMyClassHelper there has added HelloWorld and MyFunc to the TMyClass type. But they're not part of VMT, aren't they? Can these helper methods be used in units other tha

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Paul Ishenin
dmitry boyarintsev wrote: Obj-C categories are different to helper-classes. Helper-classes don't extend class methods, they just provide a way to access private/protected class section. Categories actually are adding methods to a obj-c class. Please look at example here: http://edn.embarcader

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread dmitry boyarintsev
On Sat, Oct 17, 2009 at 7:55 AM, Paul Ishenin wrote: > Class helpers will appear in fpc sooner or later too. As I heard they are > needed (although a bit extended) for the Jonas objective pascal project. Obj-C categories are different to helper-classes. Helper-classes don't extend class methods,

Re: [fpc-devel] class abstract, class sealed implementation. please review.

2009-10-17 Thread Paul Ishenin
Sergei Gorelkin wrote: But as soon as a feature appears, it starts to be used (and abused, too) here and there. Next come 'class helpers', the purpose of which is to circumvent sealed classes, and so on... Class helpers will appear in fpc sooner or later too. As I heard they are needed (althoug