It's interesting how different people have different intuitions on
semantics here. I also see it as consistent with function arguments,
that's why I'd be fine it. That said, I was also thinking along the
same lines of adding explicit capture specifications: deprecate the
current, capture-spec-less syntax, and generally just require people
to list what they want to capture; seems like a useful practice to me.
And then we let them tell Zeek if they want deep or shallow copies
(but always copies, not references). "when" could then move into the
same direction as well; maybe it could even change to take a lambda
instead of its own body. That would simplify the implementation, too.

Robin

On Thu, Dec 10, 2020 at 09:40 -0800, Vern Paxson wrote:

> > for sure on my wishlist is consideration for some deprecation-path,
> > differentiating-syntax (maybe event just temporary), or other
> > warning/notice that can help users along instead of potentially
> > breaking their code outright.
> 
> Good point.  Seems a natural way to do this is to add C++-style [] capture
> syntax, and a deprecation warning (and the current semantics) if it’s
> missing.  (And maybe no warning if the body doesn’t use any of the outer
> variables, since that form will continue to work.)
> 
> — Vern
> _______________________________________________
> zeek-dev mailing list -- zeek-dev@lists.zeek.org
> To unsubscribe send an email to zeek-dev-le...@lists.zeek.org

-- 
Robin Sommer * Corelight, Inc. * ro...@corelight.com * www.corelight.com
_______________________________________________
zeek-dev mailing list -- zeek-dev@lists.zeek.org
To unsubscribe send an email to zeek-dev-le...@lists.zeek.org

Reply via email to