GNU/Weeb Mailing List <[email protected]>
 help / color / mirror / Atom feed
From: Ammar Faizi <[email protected]>
To: Muhammad Rizki <[email protected]>
Cc: Alviro Iskandar Setiawan <[email protected]>,
	GNU/Weeb Mailing List <[email protected]>
Subject: Re: [PATCH v3 8/9] enum: Add Platform enumeration
Date: Fri, 21 Oct 2022 21:21:17 +0700	[thread overview]
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>

On 10/21/22 9:04 PM, Muhammad Rizki wrote:
> You want so? But, I really like to use enum library here like everybody does.

"Like everybody does" is not a real reason. Please convince me with
the advantages of doing your way.

For example, see how I argue below:

I prefer to use a constant enum because:

1) It reduces the function call and you don't have to import an
    extra library. It's simpler to use and to write, it doesn't
    have to call a function to define the value.

2) Better for debugging, you can see the value of each enum member
    by reading the source code. This is good for debugging because
    at some point you can have a @var_x where it was assigned with
    a value from that enum. When you try to print(var_x), it's just
    a number. How do you know what number it refers to if you don't
    know the value of each enum from reading the source code?

    Say, if you have:

        TELEGRAM = 1
        DISCORD  = 2

    And then somewhere else you have:

        var_x = TELEGRAM

    And somewhere else you use that var_x, you know that var_x value
    must be within the enum range, and you want to see the value, so
    you do:

        print(var_x)

    It shows 1, you know it's TELEGRAM because you write 1 in
    the source code. Auto enum throws away that information.


If using auto generated enum can give us something better at all,
what is that? Tell me.

-- 
Ammar Faizi


  reply	other threads:[~2022-10-21 14:21 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-21 13:45 [PATCH v3 0/9] Fix some bugs and add some features Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 1/9] discord: Add send_text_mail_interaction() Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 2/9] discord: Add send_patch_mail_interaction() Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 3/9] discord: Add get lore mail slash command Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 4/9] atom: Improve remove_patch() Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 5/9] atom: add manage_payload() Muhammad Rizki
2022-10-21 14:01   ` Ammar Faizi
2022-10-21 14:02     ` Muhammad Rizki
2022-10-21 14:06       ` Ammar Faizi
2022-10-21 14:07         ` Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 6/9] telegram: Fix get lore command Muhammad Rizki
2022-10-21 13:45 ` [PATCH v3 7/9] atom: Improve extract_body() Muhammad Rizki
2022-10-21 14:34   ` Alviro Iskandar Setiawan
2022-10-21 13:45 ` [PATCH v3 8/9] enum: Add Platform enumeration Muhammad Rizki
2022-10-21 14:02   ` Ammar Faizi
2022-10-21 14:04     ` Muhammad Rizki
2022-10-21 14:21       ` Ammar Faizi [this message]
2022-10-21 14:34         ` Muhammad Rizki
2022-10-21 14:45           ` Ammar Faizi
2022-10-21 14:54             ` Muhammad Rizki
2022-10-21 15:07               ` Ammar Faizi
2022-10-21 15:10                 ` Muhammad Rizki
2022-10-21 15:08               ` Ammar Faizi
2022-10-21 15:12                 ` Muhammad Rizki
2022-10-21 15:21                   ` Ammar Faizi
2022-10-21 15:35                     ` Muhammad Rizki
2022-10-21 15:37                       ` Ammar Faizi
2022-10-21 15:54                         ` Muhammad Rizki
2022-10-21 15:59                           ` Ammar Faizi
2022-10-21 15:39                       ` Ammar Faizi
2022-10-21 15:45                         ` Muhammad Rizki
2022-10-21 15:48                           ` Ammar Faizi
2022-10-21 18:29                             ` Muhammad Rizki
2022-10-21 18:53                               ` Ammar Faizi
2022-10-21 19:05                                 ` Alviro Iskandar Setiawan
2022-10-21 19:15                                   ` Ammar Faizi
2022-10-21 19:24                                     ` Alviro Iskandar Setiawan
2022-10-21 19:07                                 ` Muhammad Rizki
2022-10-21 17:03                     ` Alviro Iskandar Setiawan
2022-10-21 13:45 ` [PATCH v3 9/9] enum: Use the created Platform class enumeration Muhammad Rizki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox