I also recommend you look at the recent tutorial If you are not 100% sure about `do` blocks, `<-` notation and `return`, you should read this, which explains the relationship between do
notation and Action
.
I think that return
was added originally just as syntactic sugar, so you could have a do ... return
statement. I recall that in Haskell there also exists an applicative do
extension, but I don’t think we have this in DAML.