Re: Anything LiveCode Can Learn From GO

2018-06-15 Thread Mark Talluto via use-livecode
Sigh on me for I missed the ‘mobile’ part…also clearly stated. We are out of 
luck in that area. But, the idea works well for desktop solutions. 

Data access for mobile use should be pretty fast even if it is processed as a 
‘sync’ process. Most mobile apps need to do more modest processing due to all 
the constraints of the device anyways.


Best regards,

Mark Talluto
livecloud.io <http://livecloud.io/>
nursenotes.net <http://nursenotes.net/>
canelasoftware.com <http://www.canelasoftware.com/>


> On Jun 14, 2018, at 5:59 PM, Ralph DiMola via use-livecode 
>  wrote:
> 
> Mark,
> 
> Thanks but, Sigh...Not possible on mobile.
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
> 
> 
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf 
> Of Mark Talluto via use-livecode
> Sent: Thursday, June 14, 2018 5:09 PM
> To: How to use LiveCode
> Cc: Mark Talluto
> Subject: Re: Anything LiveCode Can Learn From GO
> 
> I missed the local db part. It is clearly written in your original email. 
> But, since I am here typing these chars…pondering…how about running a local 
> server that accesses your local db and use tsnet to do async calls?
> 
> Best regards,
> 
> Mark Talluto
> livecloud.io <http://livecloud.io/>
> nursenotes.net <http://nursenotes.net/>
> canelasoftware.com <http://www.canelasoftware.com/>
> 
> 
>> On Jun 14, 2018, at 12:45 PM, Ralph DiMola via use-livecode 
>>  wrote:
>> 
>> I was referring to a local mobile SQLite DB query. But I do use async 
>> tsNet for web service requests. It works like a charm even with many 
>> requests outstanding. I fire up 10 or more at a time and they all 
>> compete as expected. Async tsNet +1
>> 
>> Ralph DiMola
>> IT Director
>> Evergreen Information Services
>> rdim...@evergreeninfo.net
>> 
>> 
>> -Original Message-
>> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
>> Behalf Of Mark Talluto via use-livecode
>> Sent: Thursday, June 14, 2018 2:21 PM
>> To: How to use LiveCode
>> Cc: Mark Talluto
>> Subject: Re: Anything LiveCode Can Learn From GO
>> 
>> tsNet with async calls can help you get this.
>> 
>> Best regards,
>> 
>> Mark Talluto
>> livecloud.io <http://livecloud.io/>
>> nursenotes.net <http://nursenotes.net/> canelasoftware.com 
>> <http://www.canelasoftware.com/>
>> 
>> 
>>> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode 
>>>  wrote:
>>> 
>>> I would love to be able to start a thread that formatted a field that might 
>>> be selected and made visible at a later date or have a scrolling field that 
>>> could have the non-visible lines being formatted in another thread before 
>>> you scroll down. Say you were going to a new card that required a DB query. 
>>> You could have the card layout code and the query to a local DB running at 
>>> the same time. Even with LCs message hierarchy multithreading could work. 
>>> You could fire off a DB query thread and have a message sent to the main 
>>> thread when complete. Inter thread communication would be key. That is 
>>> where locking would be tricky to prevent dead locks.
>>> 
>>> Ralph DiMola
>>> IT Director
>>> Evergreen Information Services
>>> rdim...@evergreeninfo.net
>>> 
>>> -Original Message-
>>> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
>>> Behalf Of Bob Sneidar via use-livecode
>>> Sent: Thursday, June 14, 2018 10:56 AM
>>> To: How to use LiveCode
>>> Cc: Bob Sneidar
>>> Subject: Re: Anything LiveCode Can Learn From GO
>>> 
>>> Multithreading sounds like a good idea until you realize most things that 
>>> have to happen in Livecode due to the message heirarchy need to be single 
>>> threaded. It's only when you need to make a server of some sort that 
>>> multithreading really needs to be implemented. 
>>> 
>>> Bob S
>>> 
>>> 
>>>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>>>>  wrote:
>>>> 
>>>> I wasn't thinking about high language per se.   but more from an engine 
>>>> point of view, specifically use of "Goroutines"
>>>> 
>>>> "But, most of the modern programming languages(like Java, Python etc.) are 
>>>> from the ’90s sing

RE: Anything LiveCode Can Learn From GO

2018-06-14 Thread Ralph DiMola via use-livecode
Running a web server on a mobile device accessing the app's data. tsNet work 
like a charm on mobile. I download a slew of images while the user is entering 
their credentials. I used to do it serially. tsNet rocks(and rolls).

Ralph DiMola
IT Director
Evergreen Information Services
rdim...@evergreeninfo.net


-Original Message-
From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf Of 
Tom Glod via use-livecode
Sent: Thursday, June 14, 2018 9:21 PM
To: How to use LiveCode
Cc: Tom Glod
Subject: Re: Anything LiveCode Can Learn From GO

Ralph, which part is not possible on mobile?the asynched requests with 
tsnet or something different?

On Thu, Jun 14, 2018 at 8:59 PM, Ralph DiMola via use-livecode < 
use-livecode@lists.runrev.com> wrote:

> Mark,
>
> Thanks but, Sigh...Not possible on mobile.
>
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
>
>
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
> Behalf Of Mark Talluto via use-livecode
> Sent: Thursday, June 14, 2018 5:09 PM
> To: How to use LiveCode
> Cc: Mark Talluto
> Subject: Re: Anything LiveCode Can Learn From GO
>
> I missed the local db part. It is clearly written in your original email.
> But, since I am here typing these chars…pondering…how about running a 
> local server that accesses your local db and use tsnet to do async calls?
>
> Best regards,
>
> Mark Talluto
> livecloud.io <http://livecloud.io/>
> nursenotes.net <http://nursenotes.net/> canelasoftware.com 
> <http://www.canelasoftware.com/>
>
>
> > On Jun 14, 2018, at 12:45 PM, Ralph DiMola via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > I was referring to a local mobile SQLite DB query. But I do use 
> > async tsNet for web service requests. It works like a charm even 
> > with many requests outstanding. I fire up 10 or more at a time and 
> > they all compete as expected. Async tsNet +1
> >
> > Ralph DiMola
> > IT Director
> > Evergreen Information Services
> > rdim...@evergreeninfo.net
> >
> >
> > -Original Message-
> > From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
> > Behalf Of Mark Talluto via use-livecode
> > Sent: Thursday, June 14, 2018 2:21 PM
> > To: How to use LiveCode
> > Cc: Mark Talluto
> > Subject: Re: Anything LiveCode Can Learn From GO
> >
> > tsNet with async calls can help you get this.
> >
> > Best regards,
> >
> > Mark Talluto
> > livecloud.io <http://livecloud.io/>
> > nursenotes.net <http://nursenotes.net/> canelasoftware.com 
> > <http://www.canelasoftware.com/>
> >
> >
> >> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >>
> >> I would love to be able to start a thread that formatted a field 
> >> that
> might be selected and made visible at a later date or have a scrolling 
> field that could have the non-visible lines being formatted in another 
> thread before you scroll down. Say you were going to a new card that 
> required a DB query. You could have the card layout code and the query 
> to a local DB running at the same time. Even with LCs message 
> hierarchy multithreading could work. You could fire off a DB query 
> thread and have a message sent to the main thread when complete. Inter 
> thread communication would be key. That is where locking would be tricky to 
> prevent dead locks.
> >>
> >> Ralph DiMola
> >> IT Director
> >> Evergreen Information Services
> >> rdim...@evergreeninfo.net
> >>
> >> -Original Message-
> >> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] 
> >> On Behalf Of Bob Sneidar via use-livecode
> >> Sent: Thursday, June 14, 2018 10:56 AM
> >> To: How to use LiveCode
> >> Cc: Bob Sneidar
> >> Subject: Re: Anything LiveCode Can Learn From GO
> >>
> >> Multithreading sounds like a good idea until you realize most 
> >> things
> that have to happen in Livecode due to the message heirarchy need to 
> be single threaded. It's only when you need to make a server of some 
> sort that multithreading really needs to be implemented.
> >>
> >> Bob S
> >>
> >>
> >>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via
> use-livecode  wrote:
> >>>
> >>> I wasn't thinking about high language per se.   but more from an
> engine point of view, 

Re: Anything LiveCode Can Learn From GO

2018-06-14 Thread Tom Glod via use-livecode
Ralph, which part is not possible on mobile?the asynched requests with
tsnet or something different?

On Thu, Jun 14, 2018 at 8:59 PM, Ralph DiMola via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Mark,
>
> Thanks but, Sigh...Not possible on mobile.
>
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
>
>
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On
> Behalf Of Mark Talluto via use-livecode
> Sent: Thursday, June 14, 2018 5:09 PM
> To: How to use LiveCode
> Cc: Mark Talluto
> Subject: Re: Anything LiveCode Can Learn From GO
>
> I missed the local db part. It is clearly written in your original email.
> But, since I am here typing these chars…pondering…how about running a local
> server that accesses your local db and use tsnet to do async calls?
>
> Best regards,
>
> Mark Talluto
> livecloud.io <http://livecloud.io/>
> nursenotes.net <http://nursenotes.net/>
> canelasoftware.com <http://www.canelasoftware.com/>
>
>
> > On Jun 14, 2018, at 12:45 PM, Ralph DiMola via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > I was referring to a local mobile SQLite DB query. But I do use async
> > tsNet for web service requests. It works like a charm even with many
> > requests outstanding. I fire up 10 or more at a time and they all
> > compete as expected. Async tsNet +1
> >
> > Ralph DiMola
> > IT Director
> > Evergreen Information Services
> > rdim...@evergreeninfo.net
> >
> >
> > -Original Message-
> > From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On
> > Behalf Of Mark Talluto via use-livecode
> > Sent: Thursday, June 14, 2018 2:21 PM
> > To: How to use LiveCode
> > Cc: Mark Talluto
> > Subject: Re: Anything LiveCode Can Learn From GO
> >
> > tsNet with async calls can help you get this.
> >
> > Best regards,
> >
> > Mark Talluto
> > livecloud.io <http://livecloud.io/>
> > nursenotes.net <http://nursenotes.net/> canelasoftware.com
> > <http://www.canelasoftware.com/>
> >
> >
> >> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >>
> >> I would love to be able to start a thread that formatted a field that
> might be selected and made visible at a later date or have a scrolling
> field that could have the non-visible lines being formatted in another
> thread before you scroll down. Say you were going to a new card that
> required a DB query. You could have the card layout code and the query to a
> local DB running at the same time. Even with LCs message hierarchy
> multithreading could work. You could fire off a DB query thread and have a
> message sent to the main thread when complete. Inter thread communication
> would be key. That is where locking would be tricky to prevent dead locks.
> >>
> >> Ralph DiMola
> >> IT Director
> >> Evergreen Information Services
> >> rdim...@evergreeninfo.net
> >>
> >> -Original Message-
> >> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On
> >> Behalf Of Bob Sneidar via use-livecode
> >> Sent: Thursday, June 14, 2018 10:56 AM
> >> To: How to use LiveCode
> >> Cc: Bob Sneidar
> >> Subject: Re: Anything LiveCode Can Learn From GO
> >>
> >> Multithreading sounds like a good idea until you realize most things
> that have to happen in Livecode due to the message heirarchy need to be
> single threaded. It's only when you need to make a server of some sort that
> multithreading really needs to be implemented.
> >>
> >> Bob S
> >>
> >>
> >>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via
> use-livecode  wrote:
> >>>
> >>> I wasn't thinking about high language per se.   but more from an
> engine point of view, specifically use of "Goroutines"
> >>>
> >>> "But, most of the modern programming languages(like Java, Python etc.)
> are from the ’90s single threaded environment. Most of those programming
> languages supports multi-threading. But the real problem comes with
> concurrent execution, threading-locking, race conditions and deadlocks.
> Those things make it hard to create a multi-threading application on those
> languages.
> >>
> >> ___
> >> use-livecode mailing list
> >> use-livecode@lists.runrev.

RE: Anything LiveCode Can Learn From GO

2018-06-14 Thread Ralph DiMola via use-livecode
Mark,

Thanks but, Sigh...Not possible on mobile.

Ralph DiMola
IT Director
Evergreen Information Services
rdim...@evergreeninfo.net


-Original Message-
From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf Of 
Mark Talluto via use-livecode
Sent: Thursday, June 14, 2018 5:09 PM
To: How to use LiveCode
Cc: Mark Talluto
Subject: Re: Anything LiveCode Can Learn From GO

I missed the local db part. It is clearly written in your original email. But, 
since I am here typing these chars…pondering…how about running a local server 
that accesses your local db and use tsnet to do async calls?

Best regards,

Mark Talluto
livecloud.io <http://livecloud.io/>
nursenotes.net <http://nursenotes.net/>
canelasoftware.com <http://www.canelasoftware.com/>


> On Jun 14, 2018, at 12:45 PM, Ralph DiMola via use-livecode 
>  wrote:
> 
> I was referring to a local mobile SQLite DB query. But I do use async 
> tsNet for web service requests. It works like a charm even with many 
> requests outstanding. I fire up 10 or more at a time and they all 
> compete as expected. Async tsNet +1
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
> 
> 
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
> Behalf Of Mark Talluto via use-livecode
> Sent: Thursday, June 14, 2018 2:21 PM
> To: How to use LiveCode
> Cc: Mark Talluto
> Subject: Re: Anything LiveCode Can Learn From GO
> 
> tsNet with async calls can help you get this.
> 
> Best regards,
> 
> Mark Talluto
> livecloud.io <http://livecloud.io/>
> nursenotes.net <http://nursenotes.net/> canelasoftware.com 
> <http://www.canelasoftware.com/>
> 
> 
>> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode 
>>  wrote:
>> 
>> I would love to be able to start a thread that formatted a field that might 
>> be selected and made visible at a later date or have a scrolling field that 
>> could have the non-visible lines being formatted in another thread before 
>> you scroll down. Say you were going to a new card that required a DB query. 
>> You could have the card layout code and the query to a local DB running at 
>> the same time. Even with LCs message hierarchy multithreading could work. 
>> You could fire off a DB query thread and have a message sent to the main 
>> thread when complete. Inter thread communication would be key. That is where 
>> locking would be tricky to prevent dead locks.
>> 
>> Ralph DiMola
>> IT Director
>> Evergreen Information Services
>> rdim...@evergreeninfo.net
>> 
>> -Original Message-
>> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On 
>> Behalf Of Bob Sneidar via use-livecode
>> Sent: Thursday, June 14, 2018 10:56 AM
>> To: How to use LiveCode
>> Cc: Bob Sneidar
>> Subject: Re: Anything LiveCode Can Learn From GO
>> 
>> Multithreading sounds like a good idea until you realize most things that 
>> have to happen in Livecode due to the message heirarchy need to be single 
>> threaded. It's only when you need to make a server of some sort that 
>> multithreading really needs to be implemented. 
>> 
>> Bob S
>> 
>> 
>>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>>>  wrote:
>>> 
>>> I wasn't thinking about high language per se.   but more from an engine 
>>> point of view, specifically use of "Goroutines"
>>> 
>>> "But, most of the modern programming languages(like Java, Python etc.) are 
>>> from the ’90s single threaded environment. Most of those programming 
>>> languages supports multi-threading. But the real problem comes with 
>>> concurrent execution, threading-locking, race conditions and deadlocks. 
>>> Those things make it hard to create a multi-threading application on those 
>>> languages.
>> 
>> ___
>> 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

Re: Anything LiveCode Can Learn From GO

2018-06-14 Thread Mark Talluto via use-livecode
I missed the local db part. It is clearly written in your original email. But, 
since I am here typing these chars…pondering…how about running a local server 
that accesses your local db and use tsnet to do async calls?

Best regards,

Mark Talluto
livecloud.io <http://livecloud.io/>
nursenotes.net <http://nursenotes.net/>
canelasoftware.com <http://www.canelasoftware.com/>


> On Jun 14, 2018, at 12:45 PM, Ralph DiMola via use-livecode 
>  wrote:
> 
> I was referring to a local mobile SQLite DB query. But I do use async tsNet 
> for web service requests. It works like a charm even with many requests 
> outstanding. I fire up 10 or more at a time and they all compete as expected. 
> Async tsNet +1
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
> 
> 
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf 
> Of Mark Talluto via use-livecode
> Sent: Thursday, June 14, 2018 2:21 PM
> To: How to use LiveCode
> Cc: Mark Talluto
> Subject: Re: Anything LiveCode Can Learn From GO
> 
> tsNet with async calls can help you get this.
> 
> Best regards,
> 
> Mark Talluto
> livecloud.io <http://livecloud.io/>
> nursenotes.net <http://nursenotes.net/>
> canelasoftware.com <http://www.canelasoftware.com/>
> 
> 
>> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode 
>>  wrote:
>> 
>> I would love to be able to start a thread that formatted a field that might 
>> be selected and made visible at a later date or have a scrolling field that 
>> could have the non-visible lines being formatted in another thread before 
>> you scroll down. Say you were going to a new card that required a DB query. 
>> You could have the card layout code and the query to a local DB running at 
>> the same time. Even with LCs message hierarchy multithreading could work. 
>> You could fire off a DB query thread and have a message sent to the main 
>> thread when complete. Inter thread communication would be key. That is where 
>> locking would be tricky to prevent dead locks.
>> 
>> Ralph DiMola
>> IT Director
>> Evergreen Information Services
>> rdim...@evergreeninfo.net
>> 
>> -Original Message-
>> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf 
>> Of Bob Sneidar via use-livecode
>> Sent: Thursday, June 14, 2018 10:56 AM
>> To: How to use LiveCode
>> Cc: Bob Sneidar
>> Subject: Re: Anything LiveCode Can Learn From GO
>> 
>> Multithreading sounds like a good idea until you realize most things that 
>> have to happen in Livecode due to the message heirarchy need to be single 
>> threaded. It's only when you need to make a server of some sort that 
>> multithreading really needs to be implemented. 
>> 
>> Bob S
>> 
>> 
>>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>>>  wrote:
>>> 
>>> I wasn't thinking about high language per se.   but more from an engine 
>>> point of view, specifically use of "Goroutines"
>>> 
>>> "But, most of the modern programming languages(like Java, Python etc.) are 
>>> from the ’90s single threaded environment. Most of those programming 
>>> languages supports multi-threading. But the real problem comes with 
>>> concurrent execution, threading-locking, race conditions and deadlocks. 
>>> Those things make it hard to create a multi-threading application on those 
>>> languages.
>> 
>> ___
>> 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
> 
> 
> ___
> 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: Anything LiveCode Can Learn From GO

2018-06-14 Thread Ralph DiMola via use-livecode
I was referring to a local mobile SQLite DB query. But I do use async tsNet for 
web service requests. It works like a charm even with many requests 
outstanding. I fire up 10 or more at a time and they all compete as expected. 
Async tsNet +1

Ralph DiMola
IT Director
Evergreen Information Services
rdim...@evergreeninfo.net


-Original Message-
From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf Of 
Mark Talluto via use-livecode
Sent: Thursday, June 14, 2018 2:21 PM
To: How to use LiveCode
Cc: Mark Talluto
Subject: Re: Anything LiveCode Can Learn From GO

tsNet with async calls can help you get this.

Best regards,

Mark Talluto
livecloud.io <http://livecloud.io/>
nursenotes.net <http://nursenotes.net/>
canelasoftware.com <http://www.canelasoftware.com/>


> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode 
>  wrote:
> 
> I would love to be able to start a thread that formatted a field that might 
> be selected and made visible at a later date or have a scrolling field that 
> could have the non-visible lines being formatted in another thread before you 
> scroll down. Say you were going to a new card that required a DB query. You 
> could have the card layout code and the query to a local DB running at the 
> same time. Even with LCs message hierarchy multithreading could work. You 
> could fire off a DB query thread and have a message sent to the main thread 
> when complete. Inter thread communication would be key. That is where locking 
> would be tricky to prevent dead locks.
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
> 
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf 
> Of Bob Sneidar via use-livecode
> Sent: Thursday, June 14, 2018 10:56 AM
> To: How to use LiveCode
> Cc: Bob Sneidar
> Subject: Re: Anything LiveCode Can Learn From GO
> 
> Multithreading sounds like a good idea until you realize most things that 
> have to happen in Livecode due to the message heirarchy need to be single 
> threaded. It's only when you need to make a server of some sort that 
> multithreading really needs to be implemented. 
> 
> Bob S
> 
> 
>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>>  wrote:
>> 
>> I wasn't thinking about high language per se.   but more from an engine 
>> point of view, specifically use of "Goroutines"
>> 
>> "But, most of the modern programming languages(like Java, Python etc.) are 
>> from the ’90s single threaded environment. Most of those programming 
>> languages supports multi-threading. But the real problem comes with 
>> concurrent execution, threading-locking, race conditions and deadlocks. 
>> Those things make it hard to create a multi-threading application on those 
>> languages.
> 
> ___
> 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


___
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: Anything LiveCode Can Learn From GO

2018-06-14 Thread Mark Talluto via use-livecode
tsNet with async calls can help you get this.

Best regards,

Mark Talluto
livecloud.io <http://livecloud.io/>
nursenotes.net <http://nursenotes.net/>
canelasoftware.com <http://www.canelasoftware.com/>


> On Jun 14, 2018, at 8:24 AM, Ralph DiMola via use-livecode 
>  wrote:
> 
> I would love to be able to start a thread that formatted a field that might 
> be selected and made visible at a later date or have a scrolling field that 
> could have the non-visible lines being formatted in another thread before you 
> scroll down. Say you were going to a new card that required a DB query. You 
> could have the card layout code and the query to a local DB running at the 
> same time. Even with LCs message hierarchy multithreading could work. You 
> could fire off a DB query thread and have a message sent to the main thread 
> when complete. Inter thread communication would be key. That is where locking 
> would be tricky to prevent dead locks.
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdim...@evergreeninfo.net
> 
> -Original Message-
> From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf 
> Of Bob Sneidar via use-livecode
> Sent: Thursday, June 14, 2018 10:56 AM
> To: How to use LiveCode
> Cc: Bob Sneidar
> Subject: Re: Anything LiveCode Can Learn From GO
> 
> Multithreading sounds like a good idea until you realize most things that 
> have to happen in Livecode due to the message heirarchy need to be single 
> threaded. It's only when you need to make a server of some sort that 
> multithreading really needs to be implemented. 
> 
> Bob S
> 
> 
>> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>>  wrote:
>> 
>> I wasn't thinking about high language per se.   but more from an engine 
>> point of view, specifically use of "Goroutines"
>> 
>> "But, most of the modern programming languages(like Java, Python etc.) are 
>> from the ’90s single threaded environment. Most of those programming 
>> languages supports multi-threading. But the real problem comes with 
>> concurrent execution, threading-locking, race conditions and deadlocks. 
>> Those things make it hard to create a multi-threading application on those 
>> languages.
> 
> ___
> 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

RE: Anything LiveCode Can Learn From GO

2018-06-14 Thread Ralph DiMola via use-livecode
I would love to be able to start a thread that formatted a field that might be 
selected and made visible at a later date or have a scrolling field that could 
have the non-visible lines being formatted in another thread before you scroll 
down. Say you were going to a new card that required a DB query. You could have 
the card layout code and the query to a local DB running at the same time. Even 
with LCs message hierarchy multithreading could work. You could fire off a DB 
query thread and have a message sent to the main thread when complete. Inter 
thread communication would be key. That is where locking would be tricky to 
prevent dead locks.

Ralph DiMola
IT Director
Evergreen Information Services
rdim...@evergreeninfo.net

-Original Message-
From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf Of 
Bob Sneidar via use-livecode
Sent: Thursday, June 14, 2018 10:56 AM
To: How to use LiveCode
Cc: Bob Sneidar
Subject: Re: Anything LiveCode Can Learn From GO

Multithreading sounds like a good idea until you realize most things that have 
to happen in Livecode due to the message heirarchy need to be single threaded. 
It's only when you need to make a server of some sort that multithreading 
really needs to be implemented. 

Bob S


> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>  wrote:
> 
> I wasn't thinking about high language per se.   but more from an engine point 
> of view, specifically use of "Goroutines"
> 
> "But, most of the modern programming languages(like Java, Python etc.) are 
> from the ’90s single threaded environment. Most of those programming 
> languages supports multi-threading. But the real problem comes with 
> concurrent execution, threading-locking, race conditions and deadlocks. Those 
> things make it hard to create a multi-threading application on those 
> languages.

___
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: Anything LiveCode Can Learn From GO

2018-06-14 Thread Bob Sneidar via use-livecode
Multithreading sounds like a good idea until you realize most things that have 
to happen in Livecode due to the message heirarchy need to be single threaded. 
It's only when you need to make a server of some sort that multithreading 
really needs to be implemented. 

Bob S


> On Jun 11, 2018, at 17:08 , Sannyasin Brahmanathaswami via use-livecode 
>  wrote:
> 
> I wasn't thinking about high language per se.   but more from an engine point 
> of view, specifically use of "Goroutines"
> 
> "But, most of the modern programming languages(like Java, Python etc.) are 
> from the ’90s single threaded environment. Most of those programming 
> languages supports multi-threading. But the real problem comes with 
> concurrent execution, threading-locking, race conditions and deadlocks. Those 
> things make it hard to create a multi-threading application on those 
> languages.

___
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: Anything LiveCode Can Learn From GO

2018-06-11 Thread Tom Glod via use-livecode
but as i understand it ...changing a single threaded app to multi-threaded
at its core is a huge undertaking aand i'm not sure its even on the drawing
board for v 12 ...but i could be wrongmaybe its coming in v10 :D :D :D

On Mon, Jun 11, 2018 at 9:02 PM, Tom Glod  wrote:

> i see what you mean.  the single threaded aspect of LC is a
> drag... i'm actually trying my hand at some kind of workaround for this
> limitation for the global conference in september i aim to do some
> multi-core processing using LC and measure performance gain over specific
> workloads ...like searchdb query. and i/o.
>
> On Mon, Jun 11, 2018 at 8:08 PM, Sannyasin Brahmanathaswami via
> use-livecode  wrote:
>
>> I wasn't thinking about high language per se.   but more from an engine
>> point of view, specifically use of "Goroutines"
>>
>> "But, most of the modern programming languages(like Java, Python etc.)
>> are from the ’90s single threaded environment. Most of those programming
>> languages supports multi-threading. But the real problem comes with
>> concurrent execution, threading-locking, race conditions and deadlocks.
>> Those things make it hard to create a multi-threading application on those
>> languages.
>> {snip]
>> On the other hand, Go was released in 2009 when multi-core processors
>> were already available. That’s why Go is built with keeping concurrency in
>> mind. Go has goroutines instead of threads. They consume almost 2KB memory
>> from the heap. So, you can spin millions of goroutines at any time.
>>
>> How Goroutines work? Reffrance: http://golangtutorials.blogspo
>> t.in/2011/06/goroutines.html
>>
>> Other benefits are :
>>
>> Goroutines have growable segmented stacks. That means they will use
>> more memory only when needed.
>> Goroutines have a faster startup time than threads.
>> Goroutines come with built-in primitives to communicate safely
>> between themselves (channels).
>> Goroutines allow you to avoid having to resort to mutex locking when
>> sharing data structures.
>> Also, goroutines and OS threads do not have 1:1 mapping. A single
>> goroutine can run on multiple threads. Goroutines are multiplexed into
>> small number of OS threads.
>> =
>>
>> And from the reference a "Goroutine" may be not language specific and
>> maybe (I don't know much about the engine) I am dreaming about the rabbit
>> in the moon, but, for Mark's "idea machine" there is this:
>>
>> " Effectively for us goroutines hides many of the internal machine
>> complexities in achieving parallelism. This also means that the language
>> designers could implement changes to how goroutines scale on the machine
>> taking advantage of hardware and CPU improvements."
>>
>> Brahmanathaswami
>>
>>
>> On 6/10/18, 5:01 AM, "use-livecode on behalf of Tom Glod via
>> use-livecode" > use-livecode@lists.runrev.com> wrote:
>>
>> LC and Go have entirely different target marketsbut since you can
>> easily make 1 application talk to another application using sockets
>> .
>> or open process.. the LC and Go make a wonderful partnership if
>> you
>> need to build UI ...but also do High Performance Computing.
>>
>> The 2 can make a great couple indeed.  But neither can replace the
>> other.
>>
>> ___
>> 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: Anything LiveCode Can Learn From GO

2018-06-11 Thread Tom Glod via use-livecode
i see what you mean.  the single threaded aspect of LC is a drag...
i'm actually trying my hand at some kind of workaround for this limitation
for the global conference in september i aim to do some multi-core
processing using LC and measure performance gain over specific workloads
...like searchdb query. and i/o.

On Mon, Jun 11, 2018 at 8:08 PM, Sannyasin Brahmanathaswami via
use-livecode  wrote:

> I wasn't thinking about high language per se.   but more from an engine
> point of view, specifically use of "Goroutines"
>
> "But, most of the modern programming languages(like Java, Python etc.) are
> from the ’90s single threaded environment. Most of those programming
> languages supports multi-threading. But the real problem comes with
> concurrent execution, threading-locking, race conditions and deadlocks.
> Those things make it hard to create a multi-threading application on those
> languages.
> {snip]
> On the other hand, Go was released in 2009 when multi-core processors were
> already available. That’s why Go is built with keeping concurrency in mind.
> Go has goroutines instead of threads. They consume almost 2KB memory from
> the heap. So, you can spin millions of goroutines at any time.
>
> How Goroutines work? Reffrance: http://golangtutorials.
> blogspot.in/2011/06/goroutines.html
>
> Other benefits are :
>
> Goroutines have growable segmented stacks. That means they will use
> more memory only when needed.
> Goroutines have a faster startup time than threads.
> Goroutines come with built-in primitives to communicate safely between
> themselves (channels).
> Goroutines allow you to avoid having to resort to mutex locking when
> sharing data structures.
> Also, goroutines and OS threads do not have 1:1 mapping. A single
> goroutine can run on multiple threads. Goroutines are multiplexed into
> small number of OS threads.
> =
>
> And from the reference a "Goroutine" may be not language specific and
> maybe (I don't know much about the engine) I am dreaming about the rabbit
> in the moon, but, for Mark's "idea machine" there is this:
>
> " Effectively for us goroutines hides many of the internal machine
> complexities in achieving parallelism. This also means that the language
> designers could implement changes to how goroutines scale on the machine
> taking advantage of hardware and CPU improvements."
>
> Brahmanathaswami
>
>
> On 6/10/18, 5:01 AM, "use-livecode on behalf of Tom Glod via
> use-livecode"  use-livecode@lists.runrev.com> wrote:
>
> LC and Go have entirely different target marketsbut since you can
> easily make 1 application talk to another application using sockets
> .
> or open process.. the LC and Go make a wonderful partnership if you
> need to build UI ...but also do High Performance Computing.
>
> The 2 can make a great couple indeed.  But neither can replace the
> other.
>
> ___
> 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: Anything LiveCode Can Learn From GO

2018-06-11 Thread Sannyasin Brahmanathaswami via use-livecode
I wasn't thinking about high language per se.   but more from an engine point 
of view, specifically use of "Goroutines"

"But, most of the modern programming languages(like Java, Python etc.) are from 
the ’90s single threaded environment. Most of those programming languages 
supports multi-threading. But the real problem comes with concurrent execution, 
threading-locking, race conditions and deadlocks. Those things make it hard to 
create a multi-threading application on those languages.
{snip]
On the other hand, Go was released in 2009 when multi-core processors were 
already available. That’s why Go is built with keeping concurrency in mind. Go 
has goroutines instead of threads. They consume almost 2KB memory from the 
heap. So, you can spin millions of goroutines at any time.

How Goroutines work? Reffrance: 
http://golangtutorials.blogspot.in/2011/06/goroutines.html

Other benefits are :

Goroutines have growable segmented stacks. That means they will use more 
memory only when needed.
Goroutines have a faster startup time than threads.
Goroutines come with built-in primitives to communicate safely between 
themselves (channels).
Goroutines allow you to avoid having to resort to mutex locking when 
sharing data structures.
Also, goroutines and OS threads do not have 1:1 mapping. A single goroutine 
can run on multiple threads. Goroutines are multiplexed into small number of OS 
threads.
=

And from the reference a "Goroutine" may be not language specific and maybe (I 
don't know much about the engine) I am dreaming about the rabbit in the moon, 
but, for Mark's "idea machine" there is this:

" Effectively for us goroutines hides many of the internal machine complexities 
in achieving parallelism. This also means that the language designers could 
implement changes to how goroutines scale on the machine taking advantage of 
hardware and CPU improvements."

Brahmanathaswami
 

On 6/10/18, 5:01 AM, "use-livecode on behalf of Tom Glod via use-livecode" 
 wrote:

LC and Go have entirely different target marketsbut since you can
easily make 1 application talk to another application using sockets .
or open process.. the LC and Go make a wonderful partnership if you
need to build UI ...but also do High Performance Computing.

The 2 can make a great couple indeed.  But neither can replace the other.

___
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: Anything LiveCode Can Learn From GO

2018-06-10 Thread Tom Glod via use-livecode
LC and Go have entirely different target marketsbut since you can
easily make 1 application talk to another application using sockets .
or open process.. the LC and Go make a wonderful partnership if you
need to build UI ...but also do High Performance Computing.

The 2 can make a great couple indeed.  But neither can replace the other.

On Sun, Jun 10, 2018 at 10:27 AM, Rick Harrison via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Hi Sannyasin,
>
> I found a quick small snippet of some “Hello World” GO code and have
> listed it below.
>
> I much prefer LiveCode syntax over this stuff any day.
> Stick with LiveCode, it’s just better!
>
> Just my 2 cents for the day.
>
> Cheers,
>
> Rick
>
> Add a test to the stringutil package by creating the file$GOPATH/src/
> github.com/user/stringutil/reverse_test.go containing the following Go
> code.
>
> package stringutil
>
> import "testing"
>
> func TestReverse(t *testing.T) {
> cases := []struct {
> in, want string
> }{
> {"Hello, world", "dlrow ,olleH"},
> {"Hello, 世界", "界世 ,olleH"},
> {"", ""},
> }
> for _, c := range cases {
> got := Reverse(c.in)
> if got != c.want {
> t.Errorf("Reverse(%q) == %q, want %q", c.in, got,
> c.want)
> }
> }
> }
> Then run the test with go test:
>
> $ go test github.com/user/stringutil
> ok  github.com/user/stringutil 0.165s
>
>
> > On Jun 9, 2018, at 10:55 PM, Sannyasin Brahmanathaswami via use-livecode
>  wrote:
> >
> > https://medium.com/exploring-code/why-should-you-learn-go-f607681fad65
> >
> > BR
>
> ___
> 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: Anything LiveCode Can Learn From GO

2018-06-10 Thread Rick Harrison via use-livecode
Hi Sannyasin,

I found a quick small snippet of some “Hello World” GO code and have listed it 
below.

I much prefer LiveCode syntax over this stuff any day.
Stick with LiveCode, it’s just better!

Just my 2 cents for the day.

Cheers,

Rick 

Add a test to the stringutil package by creating the 
file$GOPATH/src/github.com/user/stringutil/reverse_test.go containing the 
following Go code.

package stringutil

import "testing"

func TestReverse(t *testing.T) {
cases := []struct {
in, want string
}{
{"Hello, world", "dlrow ,olleH"},
{"Hello, 世界", "界世 ,olleH"},
{"", ""},
}
for _, c := range cases {
got := Reverse(c.in)
if got != c.want {
t.Errorf("Reverse(%q) == %q, want %q", c.in, got, 
c.want)
}
}
}
Then run the test with go test:

$ go test github.com/user/stringutil
ok  github.com/user/stringutil 0.165s


> On Jun 9, 2018, at 10:55 PM, Sannyasin Brahmanathaswami via use-livecode 
>  wrote:
> 
> https://medium.com/exploring-code/why-should-you-learn-go-f607681fad65
> 
> BR

___
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

Anything LiveCode Can Learn From GO

2018-06-09 Thread Sannyasin Brahmanathaswami via use-livecode
https://medium.com/exploring-code/why-should-you-learn-go-f607681fad65

BR
___
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