Also, do y’all call main() in the if block or do you just put the code you want to run in the if block?

  • namingthingsiseasy@programming.dev
    link
    fedilink
    arrow-up
    8
    ·
    2 days ago

    Reserving main is definitely more hacky. Try compiling multiple objects with main defined into a single binary - it won’t go well. This can make a lot of testing libraries rather convoluted, since some want to write their own main while others want you to write it because require all kinds of macros or whatever.

    On the other hand, if __name__ == "__main__" very gracefully supports having multiple entrypoints in a single module as well as derivative libraries.