Jonathan, did you notice:

python3 -m imphook -i mod_stmt_deco -m example_stmt_deco

I suspect mod_stmt_deco is some code that Paul wrote.

Guessing now, you can implement with with an import_hook, and I'm also guessing that that import hook translates:

@TimeIt
a_statement

into something like:

with TimeIt():
    a_statement

-CHB



On Mon, Dec 21, 2020 at 12:24 PM Jonathan Fine <jfine2358@gmail.com> wrote:
Hi Paul

I get a syntax error. The code won't even compile. I don't see how your code can avoid it. Are you sure your example works?

$ python3.8
Python 3.8.0 (default, Oct 28 2019, 16:14:01)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> @TimeIt
... time.sleep(1)
  File "<stdin>", line 2
    time.sleep(1)
    ^
SyntaxError: invalid syntax

By the way, I noticed that python 3.9 implements pep 614, but I don't see how that could allow your example to work.

If I've made a stupid mistake, please be kind to me.

-- 
Jonathan
-- 
Jonathan


_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-leave@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/KFO2HBFZPYEQOSJLDJF2OMIBB6TLOTCW/
Code of Conduct: http://python.org/psf/codeofconduct/


--
Christopher Barker, PhD

Python Language Consulting
  - Teaching
  - Scientific Software Development
  - Desktop GUI and Web Development
  - wxPython, numpy, scipy, Cython