Swift provides holes in an Actor region of mutual exclusion

9 views
Skip to first unread message

Carl Hewitt

unread,
Jun 9, 2021, 11:13:12 AM6/9/21
to fr...@googlegroups.com

Swift provides holes in an Actor region of mutual exclusion.

 

See https://developer.apple.com/videos/play/wwdc2021/10133

 

Cheers,

Carl

https://professorhewitt.blogspot.com/

 

John Kemp

unread,
Jun 9, 2021, 5:04:41 PM6/9/21
to fr...@googlegroups.com
Do you mean the use of “nonisolated” for access to immutable Swift actor state? 

In general, your Actor may not be the same thing as a Swift Actor. One problem with “actors” is: overloaded, generic, and unclear terminology.

- johnk

-- 
You received this message because you are subscribed to the Google Groups "friam" group.
To unsubscribe from this group and stop receiving emails from it, send an email to friam+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/friam/BY5PR10MB427469AEDEDC8862A6172E8BD9369%40BY5PR10MB4274.namprd10.prod.outlook.com.

Carl Hewitt

unread,
Jun 9, 2021, 9:24:38 PM6/9/21
to fr...@googlegroups.com

Swift has extensive constructs for maintaining an Actor region of mutual exclusion.

 

Being characterized up to a unique isomorphism, Actor abstraction is extremely well-defined.

See https://papers.ssrn.com/abstract=3459566

 

How do you think that Actor abstraction is ambiguous?

 

John Kemp

unread,
Jun 10, 2021, 5:47:36 AM6/10/21
to fr...@googlegroups.com
On Jun 9, 2021, at 9:24 PM, Carl Hewitt <hew...@irobust.org> wrote:

How do you think that Actor abstraction is ambiguous?

*Your* notion of an actor may be well-defined for you. Do you think your notion of an actor is the same as that of Swift’s? 

Swift actors appear to be “nothing more than” a clear way to program concurrency - to make it obvious in the writing of a piece of code that something is meant to be concurrent, and to get the compiler to help in eliminating the subtle bugs of concurrency by introducing appropriate keywords to mark safe code. That doesn’t seem ambiguous either.

Swift actors are not the same as your actors. Or Erlang’s actors (although these clearly are an inspiration for Swift). None of these notions are the same as:

noun
  1. 1.
    a person whose profession is acting on the stage, in movies, or on television.
Now, what did you mean about the “holes” in Swift’s actor model?

- johnk


Douglas Crockford

unread,
Jun 10, 2021, 8:39:22 AM6/10/21
to friam
That is why I think that we should call Carl's actors hewitts.

Carl Hewitt

unread,
Jun 10, 2021, 10:22:38 AM6/10/21
to fr...@googlegroups.com

John:  Do you understand what it means that the Actor abstraction is characterized up to a unique isomorphism?

Consequently, the Actor abstraction is completely well-defined mathematically.

 

Apple is incorporating the Actor abstraction into a legacy system.

 

The Apple developers called out Actors as inspiration for their work specifically citing the article that I wrote in Wikipedia.

 

Issues for holes in a region of mutual exclusion are explicit in the following Apple video:

                       https://developer.apple.com/videos/play/wwdc2021/10133

                         

Regards,

Carl

https://professorhewitt.blogspot.com/

 

PS.  Looks like the dictionary that you quoted needs an update for its entry under “Actor” ;-)

 

From: fr...@googlegroups.com <fr...@googlegroups.com> On Behalf Of John Kemp
Sent: Thursday, June 10, 2021 02:48
To: fr...@googlegroups.com
Subject: Re: [friam] Swift provides holes in an Actor region of mutual exclusion

 

On Jun 9, 2021, at 9:24 PM, Carl Hewitt <hew...@irobust.org> wrote:

--

You received this message because you are subscribed to the Google Groups "friam" group.
To unsubscribe from this group and stop receiving emails from it, send an email to friam+un...@googlegroups.com.

Carl Hewitt

unread,
Jun 10, 2021, 10:23:50 AM6/10/21
to fr...@googlegroups.com

Crock:  Why are you not proposing the name "crocks" ;-)

 


From: fr...@googlegroups.com <fr...@googlegroups.com> on behalf of Douglas Crockford <dou...@crockford.com>
Sent: Thursday, June 10, 2021, 05:39
To: friam
Subject: Re: [friam] Swift provides holes in an Actor region of mutual exclusion

--

You received this message because you are subscribed to the Google Groups "friam" group.
To unsubscribe from this group and stop receiving emails from it, send an email to friam+un...@googlegroups.com.

John Kemp

unread,
Jun 10, 2021, 10:58:33 AM6/10/21
to fr...@googlegroups.com
On Jun 10, 2021, at 10:22 AM, Carl Hewitt <hew...@irobust.org> wrote:

John:  Do you understand what it means that the Actor abstraction is characterized up to a unique isomorphism?

Possibly.

Consequently, the Actor abstraction is completely well-defined mathematically.

I can completely believe this, and still also believe that it misses the point. Mathematics itself being merely a (useful) model of “the real world”, and not the real world unto itself.

 
Apple is incorporating the Actor abstraction into a legacy system.

In the sense that Swift actors are isomorphic with “Hewitt Actors”?

 
The Apple developers called out Actors as inspiration for their work specifically citing the article that I wrote in Wikipedia.
 
Issues for holes in a region of mutual exclusion are explicit in the following Apple video:
                       https://developer.apple.com/videos/play/wwdc2021/10133

I have watched the video.

Which is why I ask whether you mean, specifically, the use of ’nonisolated’ to indicate that a piece of code is explicitly not “within” the actor, when referring to *immutable* actor state?

- johnk

Carl Hewitt

unread,
Jun 10, 2021, 11:08:23 AM6/10/21
to fr...@googlegroups.com

Responses inline below.

 

Regards,

 

From: fr...@googlegroups.com <fr...@googlegroups.com> On Behalf Of John Kemp
Sent: Thursday, June 10, 2021 07:59
To: fr...@googlegroups.com
Subject: Re: [friam] Swift provides holes in an Actor region of mutual exclusion

 

On Jun 10, 2021, at 10:22 AM, Carl Hewitt <hew...@irobust.org> wrote:

 

John:  Do you understand what it means that the Actor abstraction is characterized up to a unique isomorphism?

 

Possibly.


Thanks!

Consequently, the Actor abstraction is completely well-defined mathematically.

 

I can completely believe this, and still also believe that it misses the point. Mathematics itself being merely a (useful) model of “the real world”, and not the real world unto itself.


Can’t get any better defined than this!

 

Apple is incorporating the Actor abstraction into a legacy system.

 

In the sense that Swift actors are isomorphic with “Hewitt Actors”?


Apple is incorporating the Actor abstraction into a legacy system :-)

 

The Apple developers called out Actors as inspiration for their work specifically citing the article that I wrote in Wikipedia.

 

Issues for holes in a region of mutual exclusion are explicit in the following Apple video:

                       https://developer.apple.com/videos/play/wwdc2021/10133

 

I have watched the video.

Excellent!

 

Which is why I ask whether you mean, specifically, the use of ’nonisolated’ to indicate that a piece of code is explicitly not “within” the actor, when referring to *immutable* actor state?

 

The term “isolated” is not the best terminology.  Issue is holes in the region of mutual exclusion of an Actor.

Carl Hewitt

unread,
Jun 10, 2021, 11:39:10 AM6/10/21
to fr...@googlegroups.com

PS. Maybe you would like to use “Crock Actors” for less-well-defined conceptions of the Actor abstraction?

Reply all
Reply to author
Forward
0 new messages