[Python-ideas] Idea: Named code blocks / inline module declarations

Tennessee Leeuwenburg tleeuwenburg at gmail.com
Wed Sep 17 07:43:34 CEST 2014


Hi Ali,

Thanks for the suggestion. I would prefer to avoid that just because it's a
potential misuse of classes, and I suspect may lead to confusion for other
developers. Otherwise that's exactly what I want to do.

Cheers,
-T

On 17 September 2014 15:27, Ali Alkhatib <al2 at stanford.edu> wrote:

> This may be a misuse of classes, but why can't you make a class and then
> not instantiate it?
>
>     class signin:
>         def handle():
>             return "this works"
>
>     signin.handle() # returns "this works"
>
> On Tue, Sep 16, 2014 at 10:19 PM, Tennessee Leeuwenburg <
> tleeuwenburg at gmail.com> wrote:
>
>> I would like to be able to use named sections to organise my code, much
>> an inline submodules, bit without using classes or functions to organise
>> them. I would use this if I had a group of related functions which were not
>> written in an object-oriented-style, possibly due to not needing any shared
>> state. Rather than break these out into a new file, I would like to just be
>> able to use internal structure to declare the relationship. I've used the
>> keyword 'block' to indicate the start of a named block.
>>
>> For example,
>>
>> block signin:
>>      def handle_new_user():
>>            do_it()
>>
>>      def handle_existing_user():
>>            do_it()
>>
>>
>> while True:
>>     try:
>>         signin.handle_existing_user():
>>     except:
>>         signin.handle_new_user()
>>
>>     do_other_stuff()
>>
>> At the moment, I would have to either break out into more files, or
>> somewhat clumsily co-opt things like functions or staticmethods. I think
>> that supporting named blocks or inline module declarations would really
>> help me organise some of my code much better. It could also provide a more
>> seamless way to decide to break out into a new file. Once a named block got
>> big enough, I could easily create a new file and import those functions
>> into the same namespace.
>>
>> I hope this makes sense and that I'm not overlooking anything obvious.
>>
>> Cheers,
>> -Tennessee
>>
>> _______________________________________________
>> Python-ideas mailing list
>> Python-ideas at python.org
>> https://mail.python.org/mailman/listinfo/python-ideas
>> Code of Conduct: http://python.org/psf/codeofconduct/
>>
>
>
>
> --
> Ali Alkhatib
> Department of Computer Science
> PhD Student - Stanford University
>



-- 
--------------------------------------------------
Tennessee Leeuwenburg
http://myownhat.blogspot.com/
"Don't believe everything you think"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20140917/ad793daa/attachment-0001.html>


More information about the Python-ideas mailing list