Re: [MSEide-MSEgui-talk] MSElang, objects
While I think, private, protected and public are enough visibility complexity (omitting published and all the new fancy stuff invented by Embarcadero), I supposed abstract is one of the concepts that should be added to the description. -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On 11/22/2013 09:09 AM, Michael Schnell wrote: I supposed abstract is one of the concepts that should be added to the description. + reintroduce (will non-heap objects have virtual methods ?) BTW.: IMO method is a more appropriate new combined name for procedure/function than sub. It is commonly understood in the Object-world, and it's less likely that a program to be ported uses same as a variable name. -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
[MSEide-MSEgui-talk] app size on linux
hi Martin i am using manjaro , i made a simple application with msegui . just 1 form with 2 button and 1 ttabwidget and 1 tstringgrid , the size becomes 3Mb with no debug information , so is it normal or there are some tricks to reduce the size ? thanks -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On 11/21/2013 05:41 PM, Ivanko B wrote: end:= result; == It means one more memory copying opetation which can be quite expensive in case of large data (dynarrays,..). Why does everybody suspect that Martin is a bad compiler designer that is unable to do decent optimization ? I do trust him (seemingly more than he does himself, see non-constant case labels) -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 09:13:49 Michael Schnell wrote: (will non-heap objects have virtual methods ?) Yes. BTW.: IMO method is a more appropriate new combined name for procedure/function than sub. It is commonly understood in the Object-world, and it's less likely that a program to be ported uses same as a variable name. Use 'method' instead of 'sub' everywhere or introduce a new keyword? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On 11/21/2013 08:24 PM, Ivanko B wrote: The 'sub' keyword is just ugly, not an error. ;-) = Feels less ugly than function for non-returning procedure for returning :) IMHO. If inventing a new keyword replacing as well function as procedure it should be Method as same is well know with language independent theories of object-programming. I would not mind extending it to stuff outside of objects (inherently called classes :-) ) -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On 11/21/2013 10:50 PM, Sieghard wrote: Hallo Michael, Du schriebst am Thu, 21 Nov 2013 10:10:29 +0100: Using a procedure name without () can be either a call to this procedure or denote the address of this procedure to be moved onto a procedure variable. It will be what was defined for it to be. (With fpc you need to add @ for the second, which I think is extremely ugly.) But it is thoroughly consistent with the use of @ with variables, where it returns their address as well. This makes the C approach (above) look inconsistent. Is this really you speaking ? Dealing with explicit pointers is a typical way of C programming. It's a beauty of Pascal that this usually is not necessary (i.e. hidden behind other concepts such as object instance and with). -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 09:09:21 Michael Schnell wrote: While I think, private, protected and public are enough visibility complexity (omitting published and all the new fancy stuff invented by Embarcadero), I supposed abstract is one of the concepts that should be added to the description. In Delphi 'published' is used to switch on RTTI for streaming, we need another way to define streamed properties independent of visibility level. 'abstract' and 'reintroduce' or equivalents are planned. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
On Friday 22 November 2013 09:16:47 misu kun wrote: hi Martin i am using manjaro , i made a simple application with msegui . just 1 form with 2 button and 1 ttabwidget and 1 tstringgrid , the size becomes 3Mb with no debug information , so is it normal or there are some tricks to reduce the size ? I get 1.7MB with 'Project'-'Make 4' which uses smart-linking (-B -CX -XX). Without grid it is 1.4MB, grid code is very complex. Without tabwidget it is 1.3MB. Also the recently added code for anti-aliased XRender drawing counts. It is planned to optimize MSEgui for better smart-linking and to make some features optional in order to make the binaries smaller. Another possibility is to use whole-program-optimization: http://wiki.freepascal.org/Whole_Program_Optimization I don't know if whole-program-optimization currently works, there sometimes are abstract errors. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 09:34:06 Michael Schnell wrote: On 11/22/2013 09:26 AM, Martin Schreiber wrote: Use 'method' instead of 'sub' everywhere or introduce a new keyword? Everywhere. Doesn't 'method' imply that there is an instace pointer additional to the code address? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
On Friday 22 November 2013 10:50:42 Martin Schreiber wrote: On Friday 22 November 2013 09:16:47 misu kun wrote: hi Martin i am using manjaro , i made a simple application with msegui . just 1 form with 2 button and 1 ttabwidget and 1 tstringgrid , the size becomes 3Mb with no debug information , so is it normal or there are some tricks to reduce the size ? I get 1.7MB with 'Project'-'Make 4' which uses smart-linking (-B -CX -XX). With whole-program-optimization the size goes down to 1.5MB but it does not run because of a EAbstractError exception... Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On 11/22/2013 10:54 AM, Martin Schreiber wrote: Doesn't 'method' imply that there is an instace pointer additional to the code address? For me this would be a method of object. (But of course this is a matter of taste.) -Michael -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
2013/11/22, Martin Schreiber mse00...@gmail.com: I get 1.7MB with 'Project'-'Make 4' which uses smart-linking (-B -CX -XX). linux or windows ? . -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
On Friday 22 November 2013 11:28:00 misu kun wrote: 2013/11/22, Martin Schreiber mse00...@gmail.com: I get 1.7MB with 'Project'-'Make 4' which uses smart-linking (-B -CX -XX). linux or windows ? . 32bit Linux OpenSuse 12.3. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 5:26 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 09:13:49 Michael Schnell wrote: (will non-heap objects have virtual methods ?) Yes. BTW.: IMO method is a more appropriate new combined name for procedure/function than sub. It is commonly understood in the Object-world, and it's less likely that a program to be ported uses same as a variable name. Use 'method' instead of 'sub' everywhere or introduce a new keyword? Two different worlds. Use 'method' only for Class methods of course. 'sub' was defined for function? No chance to change that? :( -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 5:34 AM, Michael Schnell mschn...@lumino.de wrote: On 11/22/2013 09:26 AM, Martin Schreiber wrote: Use 'method' instead of 'sub' everywhere or introduce a new keyword? Everywhere. Experimente um novo navegador com tradução automática.Faça Download do Google ChromeDispensar Tradutor Mas são dois mundos diferentes aqui: processuais vs OO. IMHO não devemos unir as duas coisas. Então, se processual é um velho mundo vamos usar uma velha palavra chamado função ou função. Esta palavra, mesmo usando abreviatura, falam mais do que 'sub'. Google Tradutor para empresas:Google Toolkit de tradução para appsTradutor de sitesGlobal Market Finder Desativar tradução instantâneaSobre o Google TradutorCelularPrivacidadeAjudaEnviar feedback I decently dislike sub. For me, a keyword should be speaking (like to or for) and not be an abbreviation. method is a lot shorter than subroutine and more speaking than sub. I agree. But, in that context, I will be happy using 'method' or 'function' to class methods. -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 6:54 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 09:34:06 Michael Schnell wrote: On 11/22/2013 09:26 AM, Martin Schreiber wrote: Use 'method' instead of 'sub' everywhere or introduce a new keyword? Everywhere. Doesn't 'method' imply that there is an instace pointer additional to the code address? Yes. +1 -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 5:34 AM, Michael Schnell mschn...@lumino.de wrote: On 11/22/2013 09:26 AM, Martin Schreiber wrote: Use 'method' instead of 'sub' everywhere or introduce a new keyword? Everywhere. But here are two different worlds: Procedural vs. OO. IMHO we should not combine the two things. So if procedural is an old world we use an old word called function or function. This word, using the same abbreviation, speak more than 'sub'. I decently dislike sub. For me, a keyword should be speaking (like to or for) and not be an abbreviation. method is a lot shorter than subroutine and more speaking than sub. I agree. But, in that context, I will be happy using 'method' or 'function' to class methods. -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 13:03:08 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 5:33 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 09:09:21 Michael Schnell wrote: While I think, private, protected and public are enough visibility complexity (omitting published and all the new fancy stuff invented by Embarcadero), I supposed abstract is one of the concepts that should be added to the description. In Delphi 'published' is used to switch on RTTI for streaming, we need another way to define streamed properties independent of visibility level. 'abstract' and 'reintroduce' or equivalents are planned. Maybe: tfoo = class func exec(); rtti; end; Or with compiler switch: tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; end; Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 9:26 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 13:03:08 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 5:33 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 09:09:21 Michael Schnell wrote: While I think, private, protected and public are enough visibility complexity (omitting published and all the new fancy stuff invented by Embarcadero), I supposed abstract is one of the concepts that should be added to the description. In Delphi 'published' is used to switch on RTTI for streaming, we need another way to define streamed properties independent of visibility level. 'abstract' and 'reintroduce' or equivalents are planned. Maybe: tfoo = class func exec(); rtti; end; Or with compiler switch: tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; end; But you need to close the compiler switch, right? tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; {$rtti off} end; -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 13:42:32 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 9:26 AM, Martin Schreiber mse00...@gmail.com wrote: tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; end; But you need to close the compiler switch, right? tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; {$rtti off} end; {$rtti xxx} is local to the object type definition, default at start is {$rtti off}. {$rtti streaming} means make rtti which can be used for streaming, set the streaming flag in rtti. type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected property prop1: int32 read fprop1 write fprop1; //not streamed {$rtti streaming} property prop2: int32 read fprop2 write fprop2; //streamed public property prop3: int32 read fprop3 write fprop3; //streamed end; tfoo1 = object(tfoo) //rtti is off private fprop4: int32; public property prop4: int32 read fprop4 write fprop4; //not streamed end; -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
On Friday 22 November 2013 11:28:00 misu kun wrote: 2013/11/22, Martin Schreiber mse00...@gmail.com: I get 1.7MB with 'Project'-'Make 4' which uses smart-linking (-B -CX -XX). linux or windows ? . In order to create smartlinkable units of MSEgui the MSEgui sources must be available while compiling with 'Make'-'Make 4'. I suggest to install MSEide+MSEgui as described here: http://mseide-msegui.sourceforge.net/ I don't know if the precompiled packages from msegui.org are compiled with -CX. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 13:15:07 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 5:34 AM, Michael Schnell mschn...@lumino.de wrote: On 11/22/2013 09:26 AM, Martin Schreiber wrote: Use 'method' instead of 'sub' everywhere or introduce a new keyword? Everywhere. But here are two different worlds: Procedural vs. OO. IMHO we should not combine the two things. So if procedural is an old world we use an old word called function or function. This word, using the same abbreviation, speak more than 'sub'. I decently dislike sub. For me, a keyword should be speaking (like to or for) and not be an abbreviation. method is a lot shorter than subroutine and more speaking than sub. I agree. But, in that context, I will be happy using 'method' or 'function' to class methods. 'method' for object methods with object instance pointer and 'sub' for ordinary subroutines is OK for me. I don't like 'method' for ordinary subroutines. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 13:00:22 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 5:26 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 09:13:49 Michael Schnell wrote: (will non-heap objects have virtual methods ?) Yes. BTW.: IMO method is a more appropriate new combined name for procedure/function than sub. It is commonly understood in the Object-world, and it's less likely that a program to be ported uses same as a variable name. Use 'method' instead of 'sub' everywhere or introduce a new keyword? Two different worlds. Use 'method' only for Class methods of course. 'sub' was defined for function? No chance to change that? :( MSElang definition will be changed until it is perfect. :-) Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
What about multiple return values (e.g. in Golang)? something like this: function Something(a,b:integer):integer, string; begin ... exit(1,'abc'); end; On Fri, Nov 22, 2013 at 7:39 AM, Martin Schreiber mse00...@gmail.comwrote: On Friday 22 November 2013 06:07:37 Ivanko B wrote: Also, we don't know what ( var or out ) is current state result. What will locally defined result variable (to assign from in end:=) be ? What's the difference between these result-s ? One can read Delphi 'result' and forget to set it. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 9:57 AM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 13:42:32 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 9:26 AM, Martin Schreiber mse00...@gmail.com wrote: tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; end; But you need to close the compiler switch, right? tfoo = class private fprop1: int32; fprop2: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; public property prop2: int32 read fprop2 write fprop2; {$rtti off} end; {$rtti xxx} is local to the object type definition, default at start is {$rtti off}. {$rtti streaming} means make rtti which can be used for streaming, set the streaming flag in rtti. type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected property prop1: int32 read fprop1 write fprop1; //not streamed {$rtti streaming} property prop2: int32 read fprop2 write fprop2; //streamed public property prop3: int32 read fprop3 write fprop3; //streamed end; tfoo1 = object(tfoo) //rtti is off private fprop4: int32; public property prop4: int32 read fprop4 write fprop4; //not streamed end; But we can't do this: type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti on} property prop3: int32 read fprop3 write fprop3; //streamed {$rtti off} end; -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On Fri, Nov 22, 2013 at 2:25 PM, August Oktobar augustokto...@gmail.com wrote: What about multiple return values (e.g. in Golang)? something like this: function Something(a,b:integer):integer, string; begin ... exit(1,'abc'); end; +1 ! But like this: function Something(a,b:integer):integer, string; begin //... return 1, 'abc'; end; -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
smart-linking Note loss of debugging with GDB on smartlinked app units. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
function Something(a,b:integer):integer, string; Like an [single-row] array of values of diferent type ? Excellent highly demanded ! (it may allow to avoid exessive ugly using var subroutine params ) -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
Mixing atomic, refcounted object types in same return is appreciated too. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
{$rtti on} == Why not simply a new keyword : nortti property prop1: boiolean read boolvar1; ...; or rttiproperty prop1: boiolean read boolvar1; ...; which in turn can override {$rtti on}. It looks finer granular :) It's -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On Friday 22 November 2013 18:25:46 August Oktobar wrote: What about multiple return values (e.g. in Golang)? something like this: function Something(a,b:integer):integer, string; begin ... exit(1,'abc'); end; How looks the call of the function? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
How looks the call of the function? == Smth like in Python: (var1,var2):= MultResFunc(arg1,arg2); -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
or even : var1^,var2,@var3:= .. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
var s:string; i:integer; s, i := Something(1, 2); or _, s := Something(1, 2); or i, _ := Something(1, 2); or some other keyword (nil?) On Fri, Nov 22, 2013 at 6:49 PM, Martin Schreiber mse00...@gmail.comwrote: On Friday 22 November 2013 18:25:46 August Oktobar wrote: What about multiple return values (e.g. in Golang)? something like this: function Something(a,b:integer):integer, string; begin ... exit(1,'abc'); end; How looks the call of the function? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 18:46:26 Ivanko B wrote: {$rtti on} == Why not simply a new keyword : nortti property prop1: boiolean read boolvar1; ...; or rttiproperty prop1: boiolean read boolvar1; ...; which in turn can override {$rtti on}. Because it is a new keyword. I like to completely separate RTTI and streaming from the language. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
[MSEide-MSEgui-talk] MSElang, Arrays
Another idea from Golang: Slices MyArray = array [0..10] of Type; var s: slice [0, 2] of MyArray; slice (keyword) is lightweight wrapper around data (array), no allocation, pass by reference. in my example from index 0, length = 2 -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On Friday 22 November 2013 18:52:32 Ivanko B wrote: How looks the call of the function? == Smth like in Python: (var1,var2):= MultResFunc(arg1,arg2); I think the main reason for functions are expressions and subroutine parameters. Use a record (- object in MSElang) in order to return multi value function results or out parameters. MultResFunc(arg1,arg2,var1,var2); Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, Arrays
On Friday 22 November 2013 19:03:06 August Oktobar wrote: Another idea from Golang: Slices MyArray = array [0..10] of Type; var s: slice [0, 2] of MyArray; slice (keyword) is lightweight wrapper around data (array), no allocation, pass by reference. in my example from index 0, length = 2 Can you provide an example to use? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, Arrays
slice[0] same as ordinary array, only limited to slice[0] and slice[1] (length(slice) is 2) you can pass slice of an array (or buffer) to another function without copying or passing pointer, index and len On Fri, Nov 22, 2013 at 7:12 PM, Martin Schreiber mse00...@gmail.comwrote: On Friday 22 November 2013 19:03:06 August Oktobar wrote: Another idea from Golang: Slices MyArray = array [0..10] of Type; var s: slice [0, 2] of MyArray; slice (keyword) is lightweight wrapper around data (array), no allocation, pass by reference. in my example from index 0, length = 2 Can you provide an example to use? Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
What about returning by var? function f(t: T):var T; or function f(t: T):out T; or function f(t: T):T;var; in delphi you must return record by pointer or var/out parameter to avoid copying On Fri, Nov 22, 2013 at 7:09 PM, Martin Schreiber mse00...@gmail.comwrote: On Friday 22 November 2013 18:52:32 Ivanko B wrote: How looks the call of the function? == Smth like in Python: (var1,var2):= MultResFunc(arg1,arg2); I think the main reason for functions are expressions and subroutine parameters. Use a record (- object in MSElang) in order to return multi value function results or out parameters. MultResFunc(arg1,arg2,var1,var2); Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 2:55 PM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 18:29:49 Marcos Douglas wrote: But we can't do this: type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti on} property prop3: int32 read fprop3 write fprop3; //streamed {$rtti off} end; Why not? '{$rtti off}' is another possible setting. The last {$rtti off} in the example is not necessary. Do you would rather have two possibilities?? So, is this right? type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti streaming} property prop3: int32 read fprop3 write fprop3; //streamed end; IMO is more readable using: {$rtti on} {$rtti off} -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 3:02 PM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 18:46:26 Ivanko B wrote: {$rtti on} == Why not simply a new keyword : nortti property prop1: boiolean read boolvar1; ...; or rttiproperty prop1: boiolean read boolvar1; ...; which in turn can override {$rtti on}. Because it is a new keyword. I like to completely separate RTTI and streaming from the language. +1 -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
Many funcs should return bool success/failure flag and result value for sucess (and undefined for failure). Mutiple return would excellet for this purpose: ret_code, func_result:= superpuperfunc(..); if ret_code then func_result:= ...; With the VAR approch it looks ugly : if superpuperfunc(..,func_result) then.. func_result:= .. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Friday 22 November 2013 19:40:29 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 2:55 PM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 18:29:49 Marcos Douglas wrote: But we can't do this: type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti on} property prop3: int32 read fprop3 write fprop3; //streamed {$rtti off} end; Why not? '{$rtti off}' is another possible setting. The last {$rtti off} in the example is not necessary. Do you would rather have two possibilities?? So, is this right? type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti streaming} property prop3: int32 read fprop3 write fprop3; //streamed end; IMO is more readable using: {$rtti on} {$rtti off} {$rtti on} {$rtti streaming}. {$rtti streaming} additional sets the streaming flag for the properties in RTTI. There probably will be many different RTTI settings. To be defined later. :-) Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] tstringgrid: appendrow and appenddatarow
On 11/21/2013 10:49 AM, Patrick Goupell wrote: Hello Martin, What / Are there any benefits / drawbacks to using appendrow over appenddatarow in a tstringgrid? Can someone provide an answer to this question? Thanks. -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On Friday 22 November 2013 19:19:10 August Oktobar wrote: What about returning by var? function f(t: T):var T; or function f(t: T):out T; or function f(t: T):T;var; in delphi you must return record by pointer or var/out parameter to avoid copying Are you sure? AFAIK 'result' is a hidden var parameter. Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] tstringgrid: appendrow and appenddatarow
On Friday 22 November 2013 19:47:27 Patrick Goupell wrote: On 11/21/2013 10:49 AM, Patrick Goupell wrote: Hello Martin, What / Are there any benefits / drawbacks to using appendrow over appenddatarow in a tstringgrid? Can someone provide an answer to this question? Sorry, I overlooked your mail. function appendrow(const value: array of msestring): integer; overload; function appendrow(const value: msestringarty): integer; overload; function appendrow(const value: msestring): integer; overload; //for visible single row append function appenddatarow(const value: array of msestring): integer; overload; function appenddatarow(const value: msestringarty): integer; overload; function appenddatarow(const value: msestring): integer; overload; //for multiple data append in a beginupdate/endupdate block If you need to add a single row use the first, if there are many use the second with beginupdate()/endupdate(). Martin -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, objects
On Fri, Nov 22, 2013 at 3:51 PM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 19:40:29 Marcos Douglas wrote: On Fri, Nov 22, 2013 at 2:55 PM, Martin Schreiber mse00...@gmail.com wrote: On Friday 22 November 2013 18:29:49 Marcos Douglas wrote: But we can't do this: type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti on} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti on} property prop3: int32 read fprop3 write fprop3; //streamed {$rtti off} end; Why not? '{$rtti off}' is another possible setting. The last {$rtti off} in the example is not necessary. Do you would rather have two possibilities?? So, is this right? type tfoo = object //rtti is off private fprop1: int32; fprop2: int32; fprop3: int32; protected {$rtti streaming} property prop1: int32 read fprop1 write fprop1; //streamed {$rtti off} property prop2: int32 read fprop2 write fprop2; //not streamed public {$rtti streaming} property prop3: int32 read fprop3 write fprop3; //streamed end; IMO is more readable using: {$rtti on} {$rtti off} {$rtti on} {$rtti streaming}. {$rtti streaming} additional sets the streaming flag for the properties in RTTI. There probably will be many different RTTI settings. To be defined later. :-) Martin H... :-) -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] app size on linux
thanks Martin i recompile it with -B -O2 -XX -Xs -CX , and i got 1.4Mb , after upx it i got 441kb :) thanks again -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
Hallo Michael, Du schriebst am Fri, 22 Nov 2013 09:28:41 +0100: (With fpc you need to add @ for the second, which I think is extremely ugly.) But it is thoroughly consistent with the use of @ with variables, where it returns their address as well. This makes the C approach (above) look inconsistent. Is this really you speaking ? Dealing with explicit pointers is a typical way of C programming. It's a beauty of Pascal that this usually is not necessary (i.e. hidden behind other concepts such as object instance and with). No. Just think yourself why. -- -- (Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem) --- Mit freundlichen Grüßen, S. Schicktanz --- -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
Hallo Martin, Du schriebst am Fri, 22 Nov 2013 07:49:51 +0100: On Friday 22 November 2013 07:32:17 Martin Schreiber wrote: On Thursday 21 November 2013 22:23:22 Sieghard wrote: THen, what about using the function name as a pseudo variable to pass out the resukt value? (Oops - that's exactly what original Pascal did...) Actually the exotic proposal is the same as assigning to FUNCTIONNAME in Pascal with the advantages that it can't be forgotten, it is not necessary to synchronize the names and there is no potential to accidentally produce a recursion by trying to read from FUNCTIONNAME. Ok, then. DO create your user specific LuaPerlPython and name it as you like. You sure will be the only one who can use it correctly among the few bold ones to use it at all. I for my part came to use your msegui/mseide because it was functional and based on a language I like. Maybe I'm the only one to do so, but I guess I'll have to reorient gradually to be ready to give up on this mess in the near future. Anyway, thank you a lot for your previous work, and get happy with your undertaking. -- -- (Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem) --- Mit freundlichen Grüßen, S. Schicktanz --- -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk
Re: [MSEide-MSEgui-talk] MSElang, procedures and functions
On Fri, Nov 22, 2013 at 5:48 PM, Sieghard s_c_...@arcor.de wrote: Hallo Martin, Du schriebst am Fri, 22 Nov 2013 07:49:51 +0100: On Friday 22 November 2013 07:32:17 Martin Schreiber wrote: On Thursday 21 November 2013 22:23:22 Sieghard wrote: THen, what about using the function name as a pseudo variable to pass out the resukt value? (Oops - that's exactly what original Pascal did...) Actually the exotic proposal is the same as assigning to FUNCTIONNAME in Pascal with the advantages that it can't be forgotten, it is not necessary to synchronize the names and there is no potential to accidentally produce a recursion by trying to read from FUNCTIONNAME. Ok, then. DO create your user specific LuaPerlPython and name it as you like. You sure will be the only one who can use it correctly among the few bold ones to use it at all. I for my part came to use your msegui/mseide because it was functional and based on a language I like. Maybe I'm the only one to do so, but I guess I'll have to reorient gradually to be ready to give up on this mess in the near future. Anyway, thank you a lot for your previous work, and get happy with your undertaking. Uau... Let's all think about Sieghard's words. What we want? A 'new' language or a Object Pascal better? Well, I prefer a better Object Pascal language. I love this language and, unfortunately, we know this language is dieing. The world, today, is Java, C#, C/C++ and JavaScript... a bit of Python, Ruby... I don't know... what I know is I can use Object Pascal for MANY types of programs. Desktop, Web, mobile, whatever. So, we have exceptional language, very simple, powerfull, elegant and beautifull. Pascal has some problems, yes, and we need to think about fix these problems, and not try to make another language and loose the true Pascal spirit. We can use some features by another language -- of course! They copy everything at Pascal for years! -- but we can't forget where we came... our culture. Best regards, -- Marcos Douglas -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk