Re: [fpc-pascal] class operator in record
On 2017-03-01 03:06, Graeme Geldenhuys wrote: On 2017-03-01 02:39, nore...@z505.com wrote: How come: class operator Initialize(var aFoo: TFoo); class operator Finalize(var aFoo: TFoo); in a record are called class operator.. why not "record operator"? hahaha... You are asking all the questions I've been meaning to ask too. From your question, just goes to show how rubbish Delphi is being designed these days. Mixing concepts of class and record interchangeably. And now we have "records" with constructors and destructors! WTF. EMBT/Delphi are seriously polluting the Object Pascal with all this rubbish. Unfortunately FPC feels like they need to follow them like lemmings. I don't blame FPC for following them in some respects because it enables compatible code to be shared between FPC and delphi, but I get what you mean.. Oberon is a fresh new start without all this rubbish but look where oberon is: no where. Almost no one uses it, nor cares about it.. so if fpc does things right and diverges from delphi, you have incompatibility ... But I see what you mean and understand your point ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] class operator in record
In our previous episode, Sven Barth said: > > > > why not "record operator"? > > > > Are these advanced neo-records considered classes? > > It's simply that Delphi introduced static methods to records using the same > syntax as for classes and operators followed along. > > We've simply followed that along as we would have needed to do so at least > for mode Delphi anyway and the implementor of advanced records decided not > to deviate from that. Moreover it doesn't add anything and it only means an extra requirement for editing to change a record to a class and viceversa. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] class operator in record
Am 01.03.2017 10:06 schrieb "Graeme Geldenhuys" < mailingli...@geldenhuys.co.uk>: > > On 2017-03-01 02:39, nore...@z505.com wrote: > > How come: > > > >class operator Initialize(var aFoo: TFoo); > >class operator Finalize(var aFoo: TFoo); > > > > in a record are called class operator.. > > > > why not "record operator"? > > > hahaha... You are asking all the questions I've been meaning to ask too. > From your question, just goes to show how rubbish Delphi is being > designed these days. Mixing concepts of class and record > interchangeably. And now we have "records" with constructors and > destructors! WTF. EMBT/Delphi are seriously polluting the Object Pascal > with all this rubbish. Unfortunately FPC feels like they need to follow > them like lemmings. Records don't allow destructors, only constructors. Also they allow to more tightly couple initialization functions for some record with the record they belong to. Same for operators by the way: without them you couldn't use a record's operators in generics. Also I personally prefer to have routines that deal explicitly with a given records type as part of said record. Regards, Sven ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] class operator in record
Am 01.03.2017 03:39 schrieb: > > How come: > > class operator Initialize(var aFoo: TFoo); > class operator Finalize(var aFoo: TFoo); > > in a record are called class operator.. > > why not "record operator"? > > Are these advanced neo-records considered classes? It's simply that Delphi introduced static methods to records using the same syntax as for classes and operators followed along. We've simply followed that along as we would have needed to do so at least for mode Delphi anyway and the implementor of advanced records decided not to deviate from that. Regards, Sven ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] class operator in record
On 2017-03-01 02:39, nore...@z505.com wrote: > How come: > >class operator Initialize(var aFoo: TFoo); >class operator Finalize(var aFoo: TFoo); > > in a record are called class operator.. > > why not "record operator"? hahaha... You are asking all the questions I've been meaning to ask too. >From your question, just goes to show how rubbish Delphi is being designed these days. Mixing concepts of class and record interchangeably. And now we have "records" with constructors and destructors! WTF. EMBT/Delphi are seriously polluting the Object Pascal with all this rubbish. Unfortunately FPC feels like they need to follow them like lemmings. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal