logoalt Hacker News

Show HN: A small, simple music theory library in C99

26 pointsby lowsunyesterday at 10:54 PM6 commentsview on HN

Comments

OptionOfTtoday at 2:09 AM

As someone who only has used C in conjunction with Rust...

Given that it is 2026, what are some of the thoughts that go into choosing C99 vs C23, which I presume has more quality-of-life features?

show 3 replies
ceteiatoday at 5:19 AM

Nitpicking:

https://github.com/thelowsunoverthemoon/mahler.c/blob/4ebfe8...

Should that type have been mah_acci instead of int? mah_acci doesn't seem to be used anywhere.

Also, have you considered using (edit) designated initializer syntax for some of the function calls that take in structs as arguments?

https://cppreference.com/w/c/language/struct_initialization....

    struct mah_scale scale = mah_get_scale(
        (struct mah_note) {
            .tone=MAH_C,
            .acci=MAH_NATURAL,
            .pitch=4
        },
        &MAH_BLUES_SCALE, notes,
        MAH_ASCEND,
        NULL
    );
show 1 reply