On 17.09.2014 07:19, Tennessee Leeuwenburg 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.
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()
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.
Change "block" to "class" and you're done :-)
You can make your code even better (i.e. more OO-style and future proof), by implementing those functions as true methods and instantiating your Signin class as signin singleton.