• Re: enums (was Re: if else is not readable)

    From Lawrence D?Oliveiro@3:633/10 to All on Sat Sep 19 01:33:14 2026
    On Sun, 6 Sep 2026 16:42:55 +0100, bart wrote:

    Such enums already exist, but with some restrictions: they must be a
    valid C identifier, so no embedded spaces for example:

    enum {
    sjhbshj,
    ala,
    bala,
    something
    };

    There is no limit on length, and variables containing such enums
    don't need to be 64 or even 32 bits; 8 bits will usually do.

    But you also need to list them in advance.

    A bit limiting in capabilities, compared to, say, enums in C++, Java
    or Python.

    Python?s enums are particularly powerful. They?re not some separate
    category of type built into the language, instead, they?re just
    classes that inherit from a base class provided in a standard library
    module. So you can use multiple inheritance and subclassing with them,
    which you can?t in those other languages.

    And that standard library module doesn?t actually do anything you
    can?t do in your own Python code.

    --- PyGate Linux v1.5.19
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Johann "Myrkraverk" Oskarsson@3:633/10 to All on Sat Sep 19 16:18:36 2026
    On 9/19/2026 9:33 AM, Lawrence D?Oliveiro wrote:
    On Sun, 6 Sep 2026 16:42:55 +0100, bart wrote:

    Such enums already exist, but with some restrictions: they must be a
    valid C identifier, so no embedded spaces for example:

    enum {
    sjhbshj,
    ala,
    bala,
    something
    };

    There is no limit on length, and variables containing such enums
    don't need to be 64 or even 32 bits; 8 bits will usually do.

    But you also need to list them in advance.

    A bit limiting in capabilities, compared to, say, enums in C++, Java
    or Python.

    Python?s enums are particularly powerful. They?re not some separate
    category of type built into the language, instead, they?re just
    classes that inherit from a base class provided in a standard library
    module. So you can use multiple inheritance and subclassing with them,
    which you can?t in those other languages.

    And that standard library module doesn?t actually do anything you
    can?t do in your own Python code.

    And the advantages are what, exactly? Why do you leave this off like
    a cliffhanger?
    --
    Johann | email: invalid -> com | http://www.myrkraverk.com/blog/
    I'm not from the Internet, I just work there. | via Easynews.com https://bsky.app/profile/myrkraverk.bsky.social | for ( ;; ) _:;

    --- PyGate Linux v1.5.19
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)