Goto (Posting On Python-List Prohibited)

Chris Angelico rosuav at gmail.com
Sun Dec 31 07:41:25 EST 2017


On Sun, Dec 31, 2017 at 11:33 PM, bartc <bc at freeuk.com> wrote:
> On 30/12/2017 23:54, Chris Angelico wrote:
>>
>> On Sun, Dec 31, 2017 at 10:45 AM, bartc <bc at freeuk.com> wrote:
>>>
>>> On 30/12/2017 23:26, Gregory Ewing wrote:
>>>>
>>>>
>>>> bartc wrote:
>>>>>
>>>>>
>>>>> B and C occur twice, so a goto is a quick way to reuse B and C without
>>>>> needing to duplicate code,
>>>>
>>>>
>>>>
>>>> This only works if the repeated part happens to be at the
>>>> tail of each case.
>>>
>>>
>>>
>>> IME that seems to be the most common situation.
>>>
>>
>> I've written code that uses dirty tricks like that to avoid
>> duplication. It's at least as much of a problem as actual duplication
>> is. Generally, the 'goto' solution results in subsequent programmers
>> (such as my future selves) staring at the code for 30-60 seconds to
>> figure out what it's doing. I don't like to do that to myself, much
>> less to people I actually admire and respect.
>
>
> The problem is having to stare at the code for even longer to figure out the
> even dirtier tricks you had to use to avoid gotos.
>

Dirtier tricks like... named functions?

ChrisA



More information about the Python-list mailing list