[Cuis-dev] FW: FW: Freezing UI - can't interrupt via Alt+.

Jaromir Matas mail at jaromir.net
Tue Jul 5 03:41:52 PDT 2022


Hi Juan,

Thank you very much; I learn a lot from your feedback.

Question: Did you leave your previous update #5347 off from #newProcessIfUI: intentionally or by mistake? The example in the comment now blocks the UI... I'm attaching a simplified version of the previous proposal just in case... but frankly, I barely know what I'm doing... it's so interrelated and I can't foresee possible impact of even a small change, sorry if I missed something.

One more question: in your previous update #5346 you changed the return value from UIProcess to oldUIProcess: I can't figure out why... in case you have a spare minute :)

> [...] it is no longer possible to have 2 different worlds running in different processes.
> Well the UIProcess class variable already precludes this. When we work on enabling multiple worlds, each with its own running process, we'll see.

yes, that's what I thought... no harm done at the moment; later, each world might need to have it's own "UIProcess" variable.

Thanks again,
best,
Jaromir


From: Juan Vuletich<mailto:JuanVuletich at zoho.com>
Sent: Monday, July 4, 2022 22:43
To: Discussion of Cuis Smalltalk<mailto:cuis-dev at lists.cuis.st>
Cc: Juan Vuletich<mailto:JuanVuletich at zoho.com>; Jaromir Matas<mailto:mail at jaromir.net>
Subject: Re: [Cuis-dev] FW: Freezing UI - can't interrupt via Alt+.

On 7/4/2022 5:38 PM, Juan Vuletich via Cuis-dev wrote:
On 7/4/2022 5:01 PM, Juan Vuletich via Cuis-dev wrote:
On 7/4/2022 4:47 PM, Jaromir Matas via Cuis-dev wrote:
Hi Juan,
I’m attaching a changeset that would evaluate the following examples identically, i.e. regardless of whether the code runs in the UI or a non-UI process (simulated by wrapping into fork); please let me know what you think if you find some time.

s := Semaphore new.
[[1/0] ensure: [s signal]] fork.
s wait.
self error: 'error'

[s := Semaphore new.
[[1/0] ensure: [s signal]] fork.
s wait.
self error: 'error'] fork

I’m still just trying to analyze what is a reasonable requirement as for the semantics and the suggested code I just a rough idea for your review; I don’t have enough experience to see the bigger picture.

Thanks a lot,
jaromir


--

Jaromír Matas

mail at jaromir.net<mailto:mail at jaromir.net>

Hi Jaromir,

This code doesn't account for what I said when you were writing this message (   :) !!! ), but it doesn't add complexity, it is perhaps more robust, and could be of use for some use case I can't foresee. I'll integrate it, with a little change to improve readability, but keeping your authorship.

Thanks a lot,

--

Juan Vuletich

Done. Now, when scheduling a new Morphic process there's no need to remember to terminate the old one. Gosh, as I write this I now realiza that it is no longer possible to have 2 different worlds running in different processes. Mhhhh. Back to the drawing board.

Thanks,


--

Juan Vuletich

Well the UIProcess class variable already precludes this. When we work on enabling multiple worlds, each with its own running process, we'll see. I'll leave it there for now.

Thanks,

--

Juan Vuletich

www.cuis-smalltalk.org<http://www.cuis-smalltalk.org>

https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev

https://github.com/jvuletich

https://www.linkedin.com/in/juan-vuletich-75611b3

https://independent.academia.edu/JuanVuletich

https://www.researchgate.net/profile/Juan-Vuletich

https://patents.justia.com/inventor/juan-manuel-vuletich

https://twitter.com/JuanVuletich


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20220705/675a05dd/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: UISupervisor class-newProcessIfUI.st
Type: application/octet-stream
Size: 601 bytes
Desc: UISupervisor class-newProcessIfUI.st
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20220705/675a05dd/attachment-0001.obj>


More information about the Cuis-dev mailing list