| Store | Cart

Extending Python Syntax with @

From: Ixokai <use...@ixokai.net>
Sat, 13 Mar 2004 21:17:38 -0800
> >This is all semantics, probably, but I don't believe you can make a> >strong case that yield is an ill-chosen name.>> It's not ill chosen, just arbitrary.  I would be just as happy with> 'rtn' or 'tsr' or any fanciful word that doesn't convey a _wrong_> meaning.

To me, it conveys the perfect meaning. All it takes is having the
right mindset. You yield in traffic; you let someone go along before
you and then continue on.. that's what generators are, perfectly.

Yes, only one definition of 'yield' fits Python's usage-- but that's
infinately better then "Like return, but different".

What happens if you have a second type of 'return-like' statement?

@@return? @return@?

If someone is learning a language, they'll always run into keywords
and such that they do not understand. So they have to look them
up. No big deal. Afterwards, when they get the mindset of how to
think in them, it sticks-- they can then glance down and remember,
and /know/, what's going on.

It becomes again pseudocode-that-works: 'yield X' means, 'give
off X and let the control continue on its way, i'll be continued later'.

However, something like '...@return X' wouldn't accomplish the same
result, in my opinion. For some people it'll be too easy to just ignore
the punctuation and think 'return', when its very important that they
not think 'return' in this case. For others, it'll always catch their eyes
and make them pause and think-- which variant of return is this?

A new keyword in this instance is perfect: its totally different, and
totally
seperate from the behavior of 'return', so someone can't just pass it
by with assumptions of 'return', and once they learn what it is, it sticks.

--Stephen

Recent Messages in this Thread
David MacQuigg Mar 10, 2004 09:01 pm
Wayne Folta Mar 10, 2004 09:24 pm
Jarek Zgoda Mar 10, 2004 09:26 pm
Jeff Epler Mar 10, 2004 09:31 pm
Ivan Voras Mar 10, 2004 09:49 pm
Erik Max Francis Mar 11, 2004 01:08 am
John Roth Mar 10, 2004 09:50 pm
Ben Finney Mar 10, 2004 10:19 pm
John Roth Mar 10, 2004 11:15 pm
Josiah Carlson Mar 12, 2004 05:08 pm
Derek Ledbetter Mar 19, 2004 07:07 am
Josiah Carlson Mar 19, 2004 08:34 am
Russell Wallace Mar 18, 2004 05:40 pm
John Roth Mar 18, 2004 05:58 pm
Russell Wallace Mar 19, 2004 02:18 pm
Josiah Carlson Mar 19, 2004 05:24 pm
Y2KYZFR1 Mar 12, 2004 05:49 am
Max M Mar 12, 2004 09:59 am
John Roth Mar 12, 2004 12:05 pm
Heather Coppersmith Mar 11, 2004 02:05 am
Edward K. Ream Mar 10, 2004 11:02 pm
David MacQuigg Mar 11, 2004 12:40 am
Cameron Laird Mar 11, 2004 01:28 am
David MacQuigg Mar 11, 2004 02:44 am
Pierre Rouleau Mar 11, 2004 03:13 am
Christopher Koppler Mar 11, 2004 09:00 am
Isaac To Mar 11, 2004 01:54 am
Pierre Rouleau Mar 11, 2004 02:59 am
Christopher Koppler Mar 11, 2004 08:50 am
Nick Vargish Mar 11, 2004 02:28 pm
Peter Hickman Mar 11, 2004 02:50 pm
Cameron Laird Mar 11, 2004 03:24 pm
Peter Hickman Mar 12, 2004 09:50 am
John Roth Mar 12, 2004 12:07 pm
Peter Hickman Mar 12, 2004 12:19 pm
David MacQuigg Mar 11, 2004 08:05 pm
Roger Binns Mar 11, 2004 01:08 am
DH Mar 11, 2004 01:37 am
Roger Binns Mar 11, 2004 04:06 am
Steve Lamb Mar 11, 2004 01:43 am
Gustavo Niemeyer Mar 11, 2004 03:12 am
Paul McGuire Mar 11, 2004 03:17 am
Peter Maas Mar 11, 2004 12:15 pm
David MacQuigg Mar 11, 2004 04:35 pm
Peter Hansen Mar 11, 2004 05:01 pm
David MacQuigg Mar 11, 2004 05:57 pm
Ixokai Mar 14, 2004 05:17 am
Peter Maas Mar 11, 2004 08:42 pm
David MacQuigg Mar 11, 2004 11:44 pm
Raymond Hettinger Mar 11, 2004 10:15 pm
Paul Rubin Mar 11, 2004 11:24 pm
wmwd...@sneakemail.com ) (Greg Ewing (using news.cis.dfn.de) Mar 12, 2004 03:12 am
Bas Mar 12, 2004 08:07 pm
Peter Hansen Mar 12, 2004 10:17 pm
Donn Cave Mar 12, 2004 10:57 pm
Cameron Laird Mar 11, 2004 12:55 pm
Kyler Laird Mar 11, 2004 02:09 pm
Richie Hindle Mar 11, 2004 02:41 pm
David MacQuigg Mar 11, 2004 02:49 pm
Kyler Laird Mar 11, 2004 06:09 pm
David M. Cooke Mar 11, 2004 09:26 pm
Kyler Laird Mar 12, 2004 12:01 am
Myles Mar 12, 2004 12:05 am
John Roth Mar 11, 2004 02:37 pm
David MacQuigg Mar 11, 2004 03:57 pm
John Roth Mar 11, 2004 04:17 pm
David MacQuigg Mar 11, 2004 05:41 pm
John Roth Mar 11, 2004 06:03 pm
David MacQuigg Mar 11, 2004 09:24 am
Cameron Laird Mar 11, 2004 05:13 am
David MacQuigg Mar 11, 2004 08:42 am
Cameron Laird Mar 11, 2004 03:35 pm
Cameron Laird Mar 12, 2004 01:19 am
wmwd...@sneakemail.com ) (Greg Ewing (using news.cis.dfn.de) Mar 12, 2004 03:11 am
Messages in this thread