Re: LC compilation

2024-04-30 Thread Mike Kerner via use-livecode
if it wasn't the other kind, i wouldn't have anything to do

On Tue, Apr 30, 2024 at 11:10 AM Bob Sneidar via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Sometimes, I am very good at coding. It’s all the other times that
> presents problems. ;-)
>
> Bob S
>
>
> On Apr 29, 2024, at 6:30 PM, Mike Kerner via use-livecode <
> use-livecode@lists.runrev.com> wrote:
>
> sometimes, it is very good at coding
>
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>


-- 
On the first day, God created the heavens and the Earth
On the second day, God created the oceans.
On the third day, God put the animals on hold for a few hours,
   and did a little diving.
And God said, "This is good."
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-30 Thread Bob Sneidar via use-livecode
Perhaps they should take a page from Amazon’s AI book and hire a bunch of 
people in India to watch other people program and respond with the correct code.

Bob S


On Apr 29, 2024, at 6:30 PM, Mike Kerner via use-livecode 
 wrote:

i also saw, today, that zdnet tested microsoft's copilot against other
llm's on a coding exercise, and...it didn't go well (
https://www.zdnet.com/article/yikes-microsoft-copilot-failed-every-single-one-of-my-coding-tests
)

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-30 Thread Bob Sneidar via use-livecode
Sometimes, I am very good at coding. It’s all the other times that presents 
problems. ;-)

Bob S


On Apr 29, 2024, at 6:30 PM, Mike Kerner via use-livecode 
 wrote:

sometimes, it is very good at coding

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-30 Thread Richard Gaskin via use-livecode
Kinda perfect, really. ;)

Richard Gaskin
FourthWorld.com


Bob Sneidar wrote:

> That LC compilation should read GROKING stupid spell correct.
> Seemed like a good idea at the time…
>
> Bob S
>
>
>> On Apr 29, 2024, at 4:28 PM, Bob Sneidar wrote:
>>
>> I have a hard enough time growing
>>

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-29 Thread Mike Kerner via use-livecode
well, bob, since 10 was supposed to have an ai assistant as part of it...
gpt 4 is pretty good, with fairly simple stuff, with some languages. it has
not done well with anything LC that i've thrown at it. it keeps
hallucinating all sorts of things, like commands that don't exist, whole
documentation pages that don't exist, etc. that has not changed.
yesterday, and again, today, i tried to get it to correctly answer a c++
question regarding a robot i'm hacking, but it repeatedly failed.
but sometimes, it is very good at coding, especially if i give it some more
mainstream code (say in JS, or CSS), and ask it to explain to me why the
code isn't working.
i also saw, today, that zdnet tested microsoft's copilot against other
llm's on a coding exercise, and...it didn't go well (
https://www.zdnet.com/article/yikes-microsoft-copilot-failed-every-single-one-of-my-coding-tests
)

On Mon, Apr 29, 2024 at 7:32 PM Bob Sneidar via use-livecode <
use-livecode@lists.runrev.com> wrote:

> That should read GROKING stupid spell correct. Seemed like a good idea at
> the time…
>
> Bob S
>
>
> On Apr 29, 2024, at 4:28 PM, Bob Sneidar via use-livecode <
> use-livecode@lists.runrev.com> wrote:
>
> I have a hard enough time growing
>
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>


-- 
On the first day, God created the heavens and the Earth
On the second day, God created the oceans.
On the third day, God put the animals on hold for a few hours,
   and did a little diving.
And God said, "This is good."
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-29 Thread Bob Sneidar via use-livecode
That should read GROKING stupid spell correct. Seemed like a good idea at the 
time…

Bob S


On Apr 29, 2024, at 4:28 PM, Bob Sneidar via use-livecode 
 wrote:

I have a hard enough time growing

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-29 Thread Bob Sneidar via use-livecode
I will NEVER use AI to code. I have a hard enough time growing what I have 
already done, without having to decipher what some AI bot did. 

Bob S


> On Apr 29, 2024, at 4:23 PM, Mark Smith via use-livecode 
>  wrote:
> 
> On 29 Apr 2024, at 3:18 PM, Mike Kerner via use-livecode 
>  wrote:
>> 
>> any compiler chatter?
>> asking for an interested party
> 
> 
> I wish!
> 
> Now that AI has completely revamped the art of coding, it might be more 
> important than ever. 
> 
> Mark
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-29 Thread Mark Smith via use-livecode
On 29 Apr 2024, at 3:18 PM, Mike Kerner via use-livecode 
 wrote:
> 
> any compiler chatter?
> asking for an interested party


I wish!

Now that AI has completely revamped the art of coding, it might be more 
important than ever. 

Mark

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: LC compilation

2024-04-29 Thread Mike Kerner via use-livecode
any compiler chatter?
asking for an interested party

On Mon, May 29, 2023 at 7:26 PM Mark Smith via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Hi Mike, sorry I thought it would have been copied with the reply. The
> original post from Skip Kimpel was more or less asking if LC is compiled.
> The exact post was…
>
> "Wait… what?  I have been away from this list for a while, LC is
> not currently compilable??
>
> SKIP”
>
> I do have a question based on your reply. You indicate LC doesn’t compile
> but then go on to list all of the stuff it compiles into a standalone
> application (most of which, such as the LC engine, extensions, libraries,
> etc) are just (I would argue) libraries when it builds an application.
> Taking the definition of compiler as “a process to convert (a program) into
> a machine-code <
> https://www.google.co.uk/search?client=safari=mac_bm=machine-code=AMnBZoFOMBUphduq9VwZxsuReC7YV6BL3UJP9cGsG2J_mNMPwgWXqX8HuVPC8gyFB81-plMkPkEzmbteRge93xxj5qVwJdYjXSPc2zeY_vz8RKYr_9tAP6Q%3D=1>
> or a lower-level <
> https://www.google.co.uk/search?client=safari=mac_bm=lower-level=AMnBZoG9fGMZkoPgk-g4eVoaZFdERA6BgFgTvewAwu3qykvLOcqyjsbvyNVL0k7ItNaeg3uetPXhm4wenDJM9iNdxIwXbgNT_MfjGFunU2ur_NpUowaHa-E%3D=1>
> form in which the program can be executed.” I would argue it “sort of” does
> that in that the included scripts (as I understand it) are not in their
> original editable form but have been converted into something that is more
> easily interpreted by the engine. I know it’s not ML, nor is it bytecode,
> but it’s one step removed from the actually editable text in the script
> editor. Would’t you agree?
>
> The true advantage of the byte code, I believe, is that it brings LC in
> line with other similar compilers and therefore allows a more sophisticated
> (and standardised) approach to code optimisation. Or at least that will be
> one of the advantages. Obfuscation of code, as you mention, is another
> (although I have never personally worried about anyone wanting to steal my
> code ).
>
> Mark
>
>
> > On 29 May 2023, at 5:56 pm, Mike Kerner via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > I don't see the original post, so I can only part-comment on this.
> > LC doesn't compile, per se. It builds standalone apps for all
> > platforms, but those apps include the LC engine, extensions,
> > libraries, and your stack(s). There is an obfuscator, but, no, no
> > bytecode or ML, yet. The apps behave as you would expect a standalone
> > app to behave, but, with a disassembler, you will have an easier time
> > with them than you would with a ML or BC compiled app.
> > The good news is that the current architecture makes remote debugging
> > from mobes much simpler, and, whether you are on a desktop or mobile
> > platform, you can include functionality such as side-loading and
> > real-time code execution trivially.
> > For example, let's say you have a debug build. If you include a button
> > in your debug build, with the following script, you can prompt for a
> > command, and execute it, live, in your standalone:
> >
> > on mouseUp
> >   global gDo
> >   ask "Do what?" with gDo
> >   if it is not empty then
> >  put it into gDo
> >  do gDo
> >   end if
> > end mouseUp
> >
> > The above script will also, as I am sure you deduced, store the last
> > command you typed, and prompt you with it, the next time you press the
> > button.
> > This is, of course, especially useful if you want to invoke the
> > debugger and then debug some routine. You can do that like by clicking
> > the button I just described, and then typing into the dialog:
> > breakpoint;send "mouseUp" to button "someButton" # steps you through
> > the debug button script, then to the mouseUp handler of "someButton"
> >
> > We are all patiently waiting for the script compiler, which, as of
> > last conversation with Mark W., is going to be a bytecode compiler,
> > not a ML compiler.
> >
> > On Mon, May 29, 2023 at 6:27 AM Mark Smith via use-livecode
> >  wrote:
> >>
> >> Hi Skip,
> >>
> >> I’m surprised no one has taken a stab at answering this. I'm certainly
> no expert on the internal workings of LC or compilers but I can take a stab
> at articulating what I think the answer is, and when I get it wrong someone
> else can jump in to correct me (I should probably know this stuff better
> anyway).
> >>
> >> So if I am correct, the current environment converts LC script into
> some sort of (possibly binary) tree structure that is better organised to
> be executed by the LC engine. The engine is a big chunk of what I think is
> mostly Obj C (or some relative thereof) code that interprets the tree
> structures created in the first phase. So I guess that makes it sort of
> compiled? Compiled to execute in/on the LC engine, but also interpreted
> because the tree code is not executed on the target platform directly but
> is interpreted by the engine to generate the final executable result.
> >>
> >> 

Re: LC compilation

2023-05-29 Thread Mark Smith via use-livecode
Hi Mike, sorry I thought it would have been copied with the reply. The original 
post from Skip Kimpel was more or less asking if LC is compiled. The exact post 
was…

"Wait… what?  I have been away from this list for a while, LC is not 
currently compilable??

SKIP”

I do have a question based on your reply. You indicate LC doesn’t compile but 
then go on to list all of the stuff it compiles into a standalone application 
(most of which, such as the LC engine, extensions, libraries, etc) are just (I 
would argue) libraries when it builds an application. Taking the definition of 
compiler as “a process to convert (a program) into a machine-code 

 or a lower-level 

 form in which the program can be executed.” I would argue it “sort of” does 
that in that the included scripts (as I understand it) are not in their 
original editable form but have been converted into something that is more 
easily interpreted by the engine. I know it’s not ML, nor is it bytecode, but 
it’s one step removed from the actually editable text in the script editor. 
Would’t you agree?

The true advantage of the byte code, I believe, is that it brings LC in line 
with other similar compilers and therefore allows a more sophisticated (and 
standardised) approach to code optimisation. Or at least that will be one of 
the advantages. Obfuscation of code, as you mention, is another (although I 
have never personally worried about anyone wanting to steal my code ). 

Mark


> On 29 May 2023, at 5:56 pm, Mike Kerner via use-livecode 
>  wrote:
> 
> I don't see the original post, so I can only part-comment on this.
> LC doesn't compile, per se. It builds standalone apps for all
> platforms, but those apps include the LC engine, extensions,
> libraries, and your stack(s). There is an obfuscator, but, no, no
> bytecode or ML, yet. The apps behave as you would expect a standalone
> app to behave, but, with a disassembler, you will have an easier time
> with them than you would with a ML or BC compiled app.
> The good news is that the current architecture makes remote debugging
> from mobes much simpler, and, whether you are on a desktop or mobile
> platform, you can include functionality such as side-loading and
> real-time code execution trivially.
> For example, let's say you have a debug build. If you include a button
> in your debug build, with the following script, you can prompt for a
> command, and execute it, live, in your standalone:
> 
> on mouseUp
>   global gDo
>   ask "Do what?" with gDo
>   if it is not empty then
>  put it into gDo
>  do gDo
>   end if
> end mouseUp
> 
> The above script will also, as I am sure you deduced, store the last
> command you typed, and prompt you with it, the next time you press the
> button.
> This is, of course, especially useful if you want to invoke the
> debugger and then debug some routine. You can do that like by clicking
> the button I just described, and then typing into the dialog:
> breakpoint;send "mouseUp" to button "someButton" # steps you through
> the debug button script, then to the mouseUp handler of "someButton"
> 
> We are all patiently waiting for the script compiler, which, as of
> last conversation with Mark W., is going to be a bytecode compiler,
> not a ML compiler.
> 
> On Mon, May 29, 2023 at 6:27 AM Mark Smith via use-livecode
>  wrote:
>> 
>> Hi Skip,
>> 
>> I’m surprised no one has taken a stab at answering this. I'm certainly no 
>> expert on the internal workings of LC or compilers but I can take a stab at 
>> articulating what I think the answer is, and when I get it wrong someone 
>> else can jump in to correct me (I should probably know this stuff better 
>> anyway).
>> 
>> So if I am correct, the current environment converts LC script into some 
>> sort of (possibly binary) tree structure that is better organised to be 
>> executed by the LC engine. The engine is a big chunk of what I think is 
>> mostly Obj C (or some relative thereof) code that interprets the tree 
>> structures created in the first phase. So I guess that makes it sort of 
>> compiled? Compiled to execute in/on the LC engine, but also interpreted 
>> because the tree code is not executed on the target platform directly but is 
>> interpreted by the engine to generate the final executable result.
>> 
>> As far as the script compiler project is concerned, I believe the goal is to 
>> create a byte code stream that can be interpreted more efficiently by (a 
>> possibly new?) engine. Not sure about the new engine part, but the idea is 
>> the tree structure thing goes away and in its place is a 

Re: LC compilation

2023-05-29 Thread Mike Kerner via use-livecode
I don't see the original post, so I can only part-comment on this.
LC doesn't compile, per se. It builds standalone apps for all
platforms, but those apps include the LC engine, extensions,
libraries, and your stack(s). There is an obfuscator, but, no, no
bytecode or ML, yet. The apps behave as you would expect a standalone
app to behave, but, with a disassembler, you will have an easier time
with them than you would with a ML or BC compiled app.
The good news is that the current architecture makes remote debugging
from mobes much simpler, and, whether you are on a desktop or mobile
platform, you can include functionality such as side-loading and
real-time code execution trivially.
For example, let's say you have a debug build. If you include a button
in your debug build, with the following script, you can prompt for a
command, and execute it, live, in your standalone:

on mouseUp
   global gDo
   ask "Do what?" with gDo
   if it is not empty then
  put it into gDo
  do gDo
   end if
end mouseUp

The above script will also, as I am sure you deduced, store the last
command you typed, and prompt you with it, the next time you press the
button.
This is, of course, especially useful if you want to invoke the
debugger and then debug some routine. You can do that like by clicking
the button I just described, and then typing into the dialog:
breakpoint;send "mouseUp" to button "someButton" # steps you through
the debug button script, then to the mouseUp handler of "someButton"

We are all patiently waiting for the script compiler, which, as of
last conversation with Mark W., is going to be a bytecode compiler,
not a ML compiler.

On Mon, May 29, 2023 at 6:27 AM Mark Smith via use-livecode
 wrote:
>
> Hi Skip,
>
> I’m surprised no one has taken a stab at answering this. I'm certainly no 
> expert on the internal workings of LC or compilers but I can take a stab at 
> articulating what I think the answer is, and when I get it wrong someone else 
> can jump in to correct me (I should probably know this stuff better anyway).
>
> So if I am correct, the current environment converts LC script into some sort 
> of (possibly binary) tree structure that is better organised to be executed 
> by the LC engine. The engine is a big chunk of what I think is mostly Obj C 
> (or some relative thereof) code that interprets the tree structures created 
> in the first phase. So I guess that makes it sort of compiled? Compiled to 
> execute in/on the LC engine, but also interpreted because the tree code is 
> not executed on the target platform directly but is interpreted by the engine 
> to generate the final executable result.
>
> As far as the script compiler project is concerned, I believe the goal is to 
> create a byte code stream that can be interpreted more efficiently by (a 
> possibly new?) engine. Not sure about the new engine part, but the idea is 
> the tree structure thing goes away and in its place is a linear stream of 
> byte codes that can both be executed more effiencetly but also optimised more 
> fully. This particular byte stream (and here I’m going way outside my 
> wheelhouse) is similar to what other compilers like Java, Python, (Pascal? — 
> which I do know was a byte code compiled run time interpreted language… 
> although companies like Borland eventually wrote Pascal compilers that 
> executed directly on the target platform without any interpretation) produce. 
> So, it would bring the LC compiled code more in line with what other 
> compilers are producing which means post compilation the code could be 
> optimised more completely using well developed industry standard approaches. 
> And so everything ends up a little smaller and faster but it also opens the 
> door to doing other things with the script code down the road.
>
> Well, that's my take on Mark Waddinghams’ most recent seminar on this topic. 
> But he assuredly can fill you in much better than I can.
>
> Cheers,
> Mark
>
>
>
> > On 28 May 2023, at 3:54 pm, Skip Kimpel via use-livecode 
> >  wrote:
> >
> > Wait… what?  I have been away from this list for a while, LC is not 
> > currently compilable??
> >
> > SKIP
> >
> >> On May 27, 2023, at 4:39 PM, harrison--- via use-livecode 
> >>  wrote:
> >>
> >> Hi Skip,
> >>
> >> Doubtful.  I would wait until after we have a compilable version of LC and 
> >> then it will be more possible.
> >>
> >> Rick
> >>
> >>> On May 27, 2023, at 12:26 PM, Skip Kimpel via use-livecode 
> >>>  wrote:
> >>>
> >>> Has anybody done anything with LC and AR?
> >>>
> >>> Curious minds want to know :)
> >>>
> >>> SKIP
> >>
> >> ___
> >> use-livecode mailing list
> >> use-livecode@lists.runrev.com
> >> Please visit this url to subscribe, unsubscribe and manage your 
> >> subscription preferences:
> >> http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> > ___
> > use-livecode mailing list
> > 

Re: LC compilation

2023-05-29 Thread Mark Smith via use-livecode
Hi Skip,

I’m surprised no one has taken a stab at answering this. I'm certainly no 
expert on the internal workings of LC or compilers but I can take a stab at 
articulating what I think the answer is, and when I get it wrong someone else 
can jump in to correct me (I should probably know this stuff better anyway).

So if I am correct, the current environment converts LC script into some sort 
of (possibly binary) tree structure that is better organised to be executed by 
the LC engine. The engine is a big chunk of what I think is mostly Obj C (or 
some relative thereof) code that interprets the tree structures created in the 
first phase. So I guess that makes it sort of compiled? Compiled to execute 
in/on the LC engine, but also interpreted because the tree code is not executed 
on the target platform directly but is interpreted by the engine to generate 
the final executable result. 

As far as the script compiler project is concerned, I believe the goal is to 
create a byte code stream that can be interpreted more efficiently by (a 
possibly new?) engine. Not sure about the new engine part, but the idea is the 
tree structure thing goes away and in its place is a linear stream of byte 
codes that can both be executed more effiencetly but also optimised more fully. 
This particular byte stream (and here I’m going way outside my wheelhouse) is 
similar to what other compilers like Java, Python, (Pascal? — which I do know 
was a byte code compiled run time interpreted language… although companies like 
Borland eventually wrote Pascal compilers that executed directly on the target 
platform without any interpretation) produce. So, it would bring the LC 
compiled code more in line with what other compilers are producing which means 
post compilation the code could be optimised more completely using well 
developed industry standard approaches. And so everything ends up a little 
smaller and faster but it also opens the door to doing other things with the 
script code down the road. 

Well, that's my take on Mark Waddinghams’ most recent seminar on this topic. 
But he assuredly can fill you in much better than I can.

Cheers,
Mark



> On 28 May 2023, at 3:54 pm, Skip Kimpel via use-livecode 
>  wrote:
> 
> Wait… what?  I have been away from this list for a while, LC is not currently 
> compilable??
> 
> SKIP
> 
>> On May 27, 2023, at 4:39 PM, harrison--- via use-livecode 
>>  wrote:
>> 
>> Hi Skip,
>> 
>> Doubtful.  I would wait until after we have a compilable version of LC and 
>> then it will be more possible.
>> 
>> Rick
>> 
>>> On May 27, 2023, at 12:26 PM, Skip Kimpel via use-livecode 
>>>  wrote:
>>> 
>>> Has anybody done anything with LC and AR?
>>> 
>>> Curious minds want to know :)
>>> 
>>> SKIP
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode