What's the difference between Actors and Required Authorizers?

The DAML Ledger Model docs distinguish “actors”, a concept that exists on Exercise and Fetch nodes, from “required authorizers”, which also exist on Create and NoSuchKey nodes.

Why do we need these two concepts? Wouldn’t it be clearer to just say that the signatories are the actors of a Create node and the maintainers the actors of a NoSuchKey node, and then just use “actor” instead of “required authorizer”?

1 Like

Naming preferences aside, having different terms allow us to define actors for Exercise and Fetch nodes already in the syntax of actions (i.e., the “structure” section). And we can delay defining signatories and maintainers until when they are needed (authorization, and later privacy). That way, we (a) don’t confront the reader with all the concepts at once right at the start and (b) have no gap between defining and using signatories, making for an easier read.

2 Likes