Esteban Lorenzano uploaded a new version of VMConstruction-Plugins-AioPlugin to project AioPlugin: http://www.squeaksource.com/AioPlugin/VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19.mcz ==================== Summary ==================== Name: VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19 Author: EstebanLorenzano Time: 26 May 2016, 1:56:31.823249 pm UUID: 6608ce78-afce-4d1b-9061-f24c6492c36c Ancestors: VMConstruction-Plugins-AioPlugin-eem.18 replace cCode: '' with cCode:[] |
yeah, but now I saw lots of translations are missing too… so this needs some iterations :( > On 26 May 2016, at 13:56, [hidden email] wrote: > > > Esteban Lorenzano uploaded a new version of VMConstruction-Plugins-AioPlugin to project AioPlugin: > http://www.squeaksource.com/AioPlugin/VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19.mcz > > ==================== Summary ==================== > > Name: VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19 > Author: EstebanLorenzano > Time: 26 May 2016, 1:56:31.823249 pm > UUID: 6608ce78-afce-4d1b-9061-f24c6492c36c > Ancestors: VMConstruction-Plugins-AioPlugin-eem.18 > > replace cCode: '' with cCode:[] > |
Hi Esteban, I missed the discussion here, but this does not look like a good change. The values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms sources. They should also not be hard-coded in the image, which is what happens when you define them as class variables in AioPlugin. Also, the change cannot be loaded without enabling the "Allow underscores selectors" preference. Dave On Thu, May 26, 2016 at 02:45:24PM +0200, Esteban Lorenzano wrote: > > yeah, but now I saw lots of translations are missing too??? so this needs some iterations :( > > > On 26 May 2016, at 13:56, [hidden email] wrote: > > > > > > Esteban Lorenzano uploaded a new version of VMConstruction-Plugins-AioPlugin to project AioPlugin: > > http://www.squeaksource.com/AioPlugin/VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19.mcz > > > > ==================== Summary ==================== > > > > Name: VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19 > > Author: EstebanLorenzano > > Time: 26 May 2016, 1:56:31.823249 pm > > UUID: 6608ce78-afce-4d1b-9061-f24c6492c36c > > Ancestors: VMConstruction-Plugins-AioPlugin-eem.18 > > > > replace cCode: '' with cCode:[] > > |
On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: > > Hi Esteban, > > I missed the discussion here, but this does not look like a good change. The > values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms > sources. They should also not be hard-coded in the image, which is what happens > when you define them as class variables in AioPlugin. What is the preferred way to synchronise header values between the platform sources and the Image? cheers -ben > > Also, the change cannot be loaded without enabling the "Allow underscores > selectors" preference. > > Dave > > On Thu, May 26, 2016 at 02:45:24PM +0200, Esteban Lorenzano wrote: >> >> yeah, but now I saw lots of translations are missing too??? so this needs some iterations :( >> >> > On 26 May 2016, at 13:56, [hidden email] wrote: >> > >> > >> > Esteban Lorenzano uploaded a new version of VMConstruction-Plugins-AioPlugin to project AioPlugin: >> > http://www.squeaksource.com/AioPlugin/VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19.mcz >> > >> > ==================== Summary ==================== >> > >> > Name: VMConstruction-Plugins-AioPlugin-EstebanLorenzano.19 >> > Author: EstebanLorenzano >> > Time: 26 May 2016, 1:56:31.823249 pm >> > UUID: 6608ce78-afce-4d1b-9061-f24c6492c36c >> > Ancestors: VMConstruction-Plugins-AioPlugin-eem.18 >> > >> > replace cCode: '' with cCode:[] >> > |
On Sat, May 28, 2016 at 05:29:03AM +0800, Ben Coman wrote: > > On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: > > > > Hi Esteban, > > > > I missed the discussion here, but this does not look like a good change. The > > values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms > > sources. They should also not be hard-coded in the image, which is what happens > > when you define them as class variables in AioPlugin. > > What is the preferred way to synchronise header values between the > platform sources and the Image? > Do not do that. Do not attempt to synchonize them. Use the actual values in the header files. Do not assume that they will never change, and do not assume that they they will be the same on all platforms. For example, you can write this, because it invokes the actual C language definition of 'AIO_X' as defined in an external header file, and it uses 4 as a default for VM simulation: flags := flags bitOr: (self cCode: 'AIO_W' inSmalltalk: [4]) But you should not write the following, where AIO_X is a class var set to 4. It looks prettier, but it is wrong because the value of AIO_W is hard coded in a class initialization in the image: flags := flags bitOr: AIO_W Pretty code is nice, but it is more important that it be correct. Dave |
yes, I was trying to “fix” a problem that emerged with a commit from Eliot that was forbidding strings in cCode:… but that is already properly fixed, so this package should be removed. Esteban > On 28 May 2016, at 04:17, David T. Lewis <[hidden email]> wrote: > > > On Sat, May 28, 2016 at 05:29:03AM +0800, Ben Coman wrote: >> >> On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: >>> >>> Hi Esteban, >>> >>> I missed the discussion here, but this does not look like a good change. The >>> values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms >>> sources. They should also not be hard-coded in the image, which is what happens >>> when you define them as class variables in AioPlugin. >> >> What is the preferred way to synchronise header values between the >> platform sources and the Image? >> > > Do not do that. Do not attempt to synchonize them. Use the actual values > in the header files. Do not assume that they will never change, and do not > assume that they they will be the same on all platforms. > > For example, you can write this, because it invokes the actual C language > definition of 'AIO_X' as defined in an external header file, and it uses 4 > as a default for VM simulation: > > flags := flags bitOr: (self cCode: 'AIO_W' inSmalltalk: [4]) > > But you should not write the following, where AIO_X is a class var set to 4. > It looks prettier, but it is wrong because the value of AIO_W is hard coded > in a class initialization in the image: > > flags := flags bitOr: AIO_W > > Pretty code is nice, but it is more important that it be correct. > > Dave > |
forget to say: but I’m not admin so I cannot remove it myself… could you please do it? thanks! > On 28 May 2016, at 11:45, Esteban Lorenzano <[hidden email]> wrote: > > yes, I was trying to “fix” a problem that emerged with a commit from Eliot that was forbidding strings in cCode:… but that is already properly fixed, so this package should be removed. > > Esteban > >> On 28 May 2016, at 04:17, David T. Lewis <[hidden email]> wrote: >> >> >> On Sat, May 28, 2016 at 05:29:03AM +0800, Ben Coman wrote: >>> >>> On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: >>>> >>>> Hi Esteban, >>>> >>>> I missed the discussion here, but this does not look like a good change. The >>>> values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms >>>> sources. They should also not be hard-coded in the image, which is what happens >>>> when you define them as class variables in AioPlugin. >>> >>> What is the preferred way to synchronise header values between the >>> platform sources and the Image? >>> >> >> Do not do that. Do not attempt to synchonize them. Use the actual values >> in the header files. Do not assume that they will never change, and do not >> assume that they they will be the same on all platforms. >> >> For example, you can write this, because it invokes the actual C language >> definition of 'AIO_X' as defined in an external header file, and it uses 4 >> as a default for VM simulation: >> >> flags := flags bitOr: (self cCode: 'AIO_W' inSmalltalk: [4]) >> >> But you should not write the following, where AIO_X is a class var set to 4. >> It looks prettier, but it is wrong because the value of AIO_W is hard coded >> in a class initialization in the image: >> >> flags := flags bitOr: AIO_W >> >> Pretty code is nice, but it is more important that it be correct. >> >> Dave >> > |
In reply to this post by David T. Lewis
On Sat, May 28, 2016 at 10:17 AM, David T. Lewis <[hidden email]> wrote: > > On Sat, May 28, 2016 at 05:29:03AM +0800, Ben Coman wrote: >> >> On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: >> > >> > Hi Esteban, >> > >> > I missed the discussion here, but this does not look like a good change. The >> > values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms >> > sources. They should also not be hard-coded in the image, which is what happens >> > when you define them as class variables in AioPlugin. >> >> What is the preferred way to synchronise header values between the >> platform sources and the Image? >> > > Do not do that. Do not attempt to synchonize them. Use the actual values > in the header files. Do not assume that they will never change, and do not > assume that they they will be the same on all platforms. > > For example, you can write this, because it invokes the actual C language > definition of 'AIO_X' as defined in an external header file, and it uses 4 > as a default for VM simulation: > > flags := flags bitOr: (self cCode: 'AIO_W' inSmalltalk: [4]) Thanks Dave. That is useful to know. cheers -ben > > But you should not write the following, where AIO_X is a class var set to 4. > It looks prettier, but it is wrong because the value of AIO_W is hard coded > in a class initialization in the image: > > flags := flags bitOr: AIO_W > > Pretty code is nice, but it is more important that it be correct. |
In reply to this post by EstebanLM
Will do, thank you Esteban :-) Dave On Sat, May 28, 2016 at 11:47:16AM +0200, Esteban Lorenzano wrote: > > forget to say: but I???m not admin so I cannot remove it myself??? could you please do it? > > thanks! > > > > On 28 May 2016, at 11:45, Esteban Lorenzano <[hidden email]> wrote: > > > > yes, I was trying to ???fix??? a problem that emerged with a commit from Eliot that was forbidding strings in cCode:??? but that is already properly fixed, so this package should be removed. > > > > Esteban > > > >> On 28 May 2016, at 04:17, David T. Lewis <[hidden email]> wrote: > >> > >> > >> On Sat, May 28, 2016 at 05:29:03AM +0800, Ben Coman wrote: > >>> > >>> On Sat, May 28, 2016 at 1:52 AM, David T. Lewis <[hidden email]> wrote: > >>>> > >>>> Hi Esteban, > >>>> > >>>> I missed the discussion here, but this does not look like a good change. The > >>>> values of AIO_R, AIO_W, and AIO_X are declared in a header file in the platforms > >>>> sources. They should also not be hard-coded in the image, which is what happens > >>>> when you define them as class variables in AioPlugin. > >>> > >>> What is the preferred way to synchronise header values between the > >>> platform sources and the Image? > >>> > >> > >> Do not do that. Do not attempt to synchonize them. Use the actual values > >> in the header files. Do not assume that they will never change, and do not > >> assume that they they will be the same on all platforms. > >> > >> For example, you can write this, because it invokes the actual C language > >> definition of 'AIO_X' as defined in an external header file, and it uses 4 > >> as a default for VM simulation: > >> > >> flags := flags bitOr: (self cCode: 'AIO_W' inSmalltalk: [4]) > >> > >> But you should not write the following, where AIO_X is a class var set to 4. > >> It looks prettier, but it is wrong because the value of AIO_W is hard coded > >> in a class initialization in the image: > >> > >> flags := flags bitOr: AIO_W > >> > >> Pretty code is nice, but it is more important that it be correct. > >> > >> Dave > >> > > |
Free forum by Nabble | Edit this page |