Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #94069

Re: Proposed keyword to transfer control to another function

From Gregory Ewing <greg.ewing@canterbury.ac.nz>
Newsgroups comp.lang.python
Subject Re: Proposed keyword to transfer control to another function
Date 2015-07-19 11:32 +1200
Message-ID <d1060jF9h2gU1@mid.individual.net> (permalink)
References <mailman.617.1437090408.3674.python-list@python.org>

Show all headers | View raw


Chris Angelico wrote:
> Possible alternate syntax:
> 
> transfer func[, (arg1, arg2, arg3)[, {'kw1': val1, 'kw2': val2}]]
> 
> This makes it very clear that this is NOT accepting an arbitrary
> expression, but MUST be used with a single function and its arguments.
> Downside: It doesn't look like a function call any more. Upside: It's
> easy to parse.

Personally I'd be fine with your initial syntax, but
something else might be needed to get it past Guido.
He didn't like my 'cocall f()' construct in PEP 3152,
which is syntactically isomorphic to 'transfer f()'.

> Is there anything that I've missed out in speccing this up? I've a
> suspicion that this might turn out to be as complicated as 'yield
> from' in all its handling of edge cases.

Presumably it would only work on functions implemented
in Python? It's no use discarding the Python stack frame
unless the C recursion in the ceval loop can be avoided
as well.

> Current candidates:
> "transfer", "goto", "recurse", and anything else you suggest.

Another possibility is "chain", which I've seen in some
contexts for an sh exec-like operation.

-- 
Greg

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-17 09:46 +1000
  Re: Proposed keyword to transfer control to another function Paul Rubin <no.email@nospam.invalid> - 2015-07-17 20:16 -0700
  Re: Proposed keyword to transfer control to another function Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2015-07-19 11:32 +1200
    Re: Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-19 10:21 +1000
    Re: Proposed keyword to transfer control to another function Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2015-07-19 12:05 -0400
    Re: Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-20 02:13 +1000
    Re: Proposed keyword to transfer control to another function MRAB <python@mrabarnett.plus.com> - 2015-07-19 17:24 +0100
    Re: Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-20 02:32 +1000
    Re: Proposed keyword to transfer control to another function Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-07-19 17:41 +0100
    Re: Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-20 02:50 +1000
    Re: Proposed keyword to transfer control to another function Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2015-07-21 19:33 +0200
    Re: Proposed keyword to transfer control to another function Chris Angelico <rosuav@gmail.com> - 2015-07-22 03:38 +1000

csiph-web