<!DOCTYPE html><html><head><meta charset="UTF-8"><style type="text/css">body { font-family: Monaco, Courier New, monospace; font-size: 12px; height: 100%; margin: 0px; margin-left: 5px; margin-top: 5px; } p { margin: 0; margin-left: 5px; } .ql-font-monospace { font-family: Monaco, Courier New, monospace; } .ql-font-sans { font-family: Helvetica, Arial, sans-serif; } .ql-font-serif { font-family: Georgia, Times New Roman, serif; } .ql-size-tiny { font-size: 0.6em; } .ql-size-small { font-size: 0.85em; } .ql-size-normal { font-size: 1.0em; } .ql-size-large { font-size: 1.4em; } .ql-size-big { font-size: 2.0em; } .ql-size-huge { font-size: 2.5em; } .ql-direction-rtl { direction: rtl; text-align: inherit; } .ql-align-center { text-align: center; } .ql-align-justify { text-align: justify; } .ql-align-right { text-align: right; }</style></head><body><p>On 13 Mar 2019, at 19:36, Jon Ogden via Nug <nug@xojousers.com> wrote:</p><p><br></p><p>> Most of the Xojo framework will be set aside AFAIK. Auto is deprecated and</p><p>> Variants are back. Like you said Text is deemphasized. Xojo.Net.HttpSocket has</p><p>> been replaced by URLConnection. Etc. </p><p><br></p><p>What I've been doing the last two to three years is re-implementing, in Xojo, an app that I previously implemented as a mixture of JavaScript to present to the user (via a browser window), using AJAX to talk to backend PHP scripts on the user's machine, using an instance of apache talking to localhost to do so. The PHP scripts did all the database and socket stuff.</p><p><br></p><p>I found some aspects of Xojo irritating while doing this work:</p><p><br></p><p>1) Accumulating text as I read from a socket was slow. Concatenation of Text appears to be very slow.</p><p><br></p><p>2) Because of (1) I had to accumulate the text as a memoryblock, then convert to a Xojo.Core.memoryblock so I could apply a TextEncoding and convert to Text. This was also slow when you're reading 5Mbytes of text from a socket, line by line, necessary since the the end-of-data marker is a special line in the text stream.</p><p><br></p><p>3) Xojo sockets don't have a getline() method so I had to create my own using socket.readall and then return data line by line, doing timeout and error handling too. Fastest way (performance-wise) at the bottom was to keep this sort of intermediate data in byte arrays.</p><p><br></p><p>4) Everything was made worse by the fact that the different frameworks (new and old) didn't always implement the same set of methods.</p><p><br></p><p><br></p><p>Now having all this working satisfactorily I'm not in much of a mood to change it.</p><br><br>-- <br>Cheers  --  Tim</body></html>