On 01/-10/-28163 01:59 PM, Yingjie Lan wrote:
Because of the d"..." format, it won't
affect old ways of doing things one bit.
Allowing dynamic string wouldn't hurt
a bit to anything that is already there.

Why don't you just write a function that does it? I think someone already suggested this...

  import dynamic_strings       # write this
  d = dynamic_strings.dynamic

  x = 5
  print(d("x=$x$"))

?

Sure, it's not *quite* as pretty as if you could just say d"x=$x$", and you might have to do some hacky uglyness in the implementation to get at the locals of the calling procedure, but it solves a bazillion problems, such as:

1. YOU can do it, instead of hoping it gets into the mainline
   interpreter

2. You can do it NOW, and it will work with "any" version of Python

3. You have the freedom to easily add "eval from *this dictionary* if
   you want, which solves Steven D'Aprano's objection that your
   suggestion is too weak.

4. Languages changes should be viewed suspiciously in general.

Evan
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to