Name (1) feature you would add to C and (1) thing you would remove or change.

Name (1) feature you would add to C and (1) thing you would remove or change.

Unattended Children Pitbull Club Shirt $21.68

The Kind of Tired That Sleep Won’t Fix Shirt $21.68

Unattended Children Pitbull Club Shirt $21.68

  1. 2 weeks ago
    Anonymous

    this guy hasn't written anything besides opencv bots in python

    • 2 weeks ago
      Anonymous

      And yet he has accomplished more than every last Cnile on this board combined. Really makes you thimk.

      • 2 weeks ago
        Anonymous

        This guy (Rain "rainboy" Jiang) is a top competitive programmer and only uses C.
        Not C++, but C
        He won gold medal 2 times and silver medal 1 time at IOI

        • 2 weeks ago
          Anonymous

          >i got some shiny metal coins
          vs
          >i pioneered a new sub-industry, put my name on the map, and raked in fricktons of cash

          • 2 weeks ago
            Anonymous

            >i got some shiny metal coins
            Lol you have absolutely no idea how big of an accomplishment it is. Only around 4 people get to IOI from each country, so only qualifiying there means you're the best in your country. And getting a gold medal there... Well it means there are very few programmers who are better than him.
            And it's not about the physical medal you get.

            That's cool that he can do leetcode problems really fast, but does he have his own personal AI daughterwaifu?
            I thought not.

            IOI, ICPC, Codeforces and AtCoder problems make even Leetcode hards look like a joke

          • 2 weeks ago
            Anonymous

            okay bro

          • 2 weeks ago
            Anonymous

            >I see rainboy with his weird strategy (starting from the hardest problem) in almost every contest
            >this somehow means he's bad

          • 2 weeks ago
            Anonymous

            the joke is that the first result is asking "literally who" but i get if your tism boner over this random asian dude made that hard to get

          • 2 weeks ago
            Anonymous

            >Nooo, cniles don't accomplish anything
            >prove this statement wrong
            >nooo you're autistic
            sure

          • 2 weeks ago
            Anonymous

            i don't see how placing high in big boy leetcode is a worthwhile accomplishment versus actually doing something with less "advanced" programming knowledge, which wraps this conversation back around to the beginning

          • 2 weeks ago
            Anonymous

            I mean, he's not wrong though. It's impressive, but that kind of programming is more of an extreme case of toy problem.
            let's see some real software.

            The point is that if you can do competitive programming with C, you can do anything else too
            Because the "problem" with C is the lack of data structures in the standard library

          • 2 weeks ago
            Anonymous

            >The point is that if you can do competitive programming with C, you can do anything else too
            LMAO has this really been the basis of your argument this whole time? tell me you know nothing about software dev in a more creative way next time

          • 2 weeks ago
            Anonymous

            >but the libraries and ecosystem is also important!!
            if you can't use lower level libraries, nor writing algorithms, what can you do?
            glue together libraries with python?
            and you think that's some high skill unique stuff?
            think again

          • 2 weeks ago
            Anonymous

            That homosexual doesn't care about that, he's sucking his eceleb wiener way too hard to think logically. The funny thing is that AI chatbot is not even advanced, any guy on /lmg/ is btfoing it. Normalgays are really hopeless

          • 2 weeks ago
            Anonymous

            I mean, he's not wrong though. It's impressive, but that kind of programming is more of an extreme case of toy problem.
            let's see some real software.

          • 2 weeks ago
            Anonymous

            Of course people who make the next hot app are not gonna use C
            They are gonna use python because it's fast and easy and has libraries for everything
            But these people are making money because of their idea and marketing skills, not because of advanced coding
            Advanced coding like OS, embedded, drivers etc. are all written in C
            Even AI which is superficially using python, below the hood is using C
            Stop coping

            Not saying Python is bad, I use Python and I love it but a pro C-programmer on average is gonna be a better programmer than a pro Python programmer, even just because of the stuff they are programming but also because of the language itself

          • 2 weeks ago
            Anonymous

            yeah and?
            the guy whose research cures cancer makes shit and the guy who sells the cancer cure makes billions
            money is irrelevant and not a metric of skill

        • 2 weeks ago
          Anonymous

          That's cool that he can do leetcode problems really fast, but does he have his own personal AI daughterwaifu?
          I thought not.

          • 2 weeks ago
            Anonymous

            Do you?
            That's what I thought.

          • 2 weeks ago
            Anonymous

            I made my own but by that time i realized how soulless they are.

          • 2 weeks ago
            Anonymous

            if you made it in C the inherent soul of the language would have seeped into the bot

          • 2 weeks ago
            Anonymous

            Do you?
            That's what I thought.

        • 2 weeks ago
          Anonymous

          Yes but does that enable him to get more pussy?

          I’m not sold on the trade off of being autistically moronic vs being able to get laid b y anything that’s not a yeti.

          • 2 weeks ago
            Anonymous

            Your animalistic monkey brain cannot think of a motivation anything else except reproduction
            Guess what, there are actual humans who have overcome this level

          • 2 weeks ago
            Anonymous

            Most humans haven’t heard of void*

          • 2 weeks ago
            Anonymous

            Anyone who hasn't heard of void* is sub human

  2. 2 weeks ago
    Anonymous

    Add compile time generics and basic metaprogramming features. Maybe something akin to d or zig, and definitely not something like c++ templates. Also, add namespaces. Remove #define.

  3. 2 weeks ago
    Anonymous

    ADD:
    >inline function pointers (basically lambdas)
    CHANGE:
    >array types decaying into pointers so quickly that you can't retain size information through a function pass.

    • 2 weeks ago
      Anonymous

      add: anonymous inline functions (like )
      remove: locale support (the stuff that causes printf/scanf to format decimals using , if LANG is german.)

  4. 2 weeks ago
    Anonymous

    add: namespaces
    change: null-terminated strings to length-counted strings

    • 2 weeks ago
      Anonymous

      >add: namespaces
      +
      >change: null-terminated strings to length-counted strings
      need both

      add: allow definition of anonymous functions inside of expressions
      remove: the standard library

      >remove: the standard library
      just dont link it

      I want ability to append macros
      I want to remove type aliasing

      >I want ability to append macros
      >I want to remove type aliasing
      use PHP as preprocessor
      --------------
      it need:
      +namespaces
      -predefinition rule
      +automatic headers generation for each OBJ and LIB file

  5. 2 weeks ago
    Anonymous

    ADD: Nothing
    REMOVE: C

  6. 2 weeks ago
    Anonymous

    add: module system
    remove: preprocessor

    • 2 weeks ago
      Anonymous

      The preprocessor is one of the best parts of C, without it, the language would have even less expressive power. Also, modules suck, I have never come accross any module system that works as well as include files.

      • 2 weeks ago
        Anonymous

        its basically perfect. what i would love to see is more, more or totally domain specific languages sitting on top of it similar to C++ or Flex.

        [...]
        im actually with the first guy. the preprocessor is great, but it should not be strictly part of the standard. its in the name, you "preprocess" it before passing to the compiler. theres nothing inherently C specific about it. (yes. yes, the headered project structure screams for it, but still)

        Noob here. When people say "abusing the preprocessor", what kind of thing do they mean? I haven't seen it be used for advanced stuff yet, just defining constants and simple functions

    • 2 weeks ago
      Anonymous

      its basically perfect. what i would love to see is more, more or totally domain specific languages sitting on top of it similar to C++ or Flex.

      The preprocessor is one of the best parts of C, without it, the language would have even less expressive power. Also, modules suck, I have never come accross any module system that works as well as include files.

      im actually with the first guy. the preprocessor is great, but it should not be strictly part of the standard. its in the name, you "preprocess" it before passing to the compiler. theres nothing inherently C specific about it. (yes. yes, the headered project structure screams for it, but still)

  7. 2 weeks ago
    Anonymous

    Add: a function returning the remaining bytes given any pointer into a block of memory, assuming of course that it's memory the process has access rights to.

    Remove: null terminated strings.

    • 2 weeks ago
      Anonymous

      >Add: a function returning the remaining bytes given any pointer into a block of memory, assuming of course that it's memory the process has access rights to.
      I should have said "count of remaining bytes". The idea is that if you have a pointer you always know how much space is left in the block of memory or if you're at the end. The runtime heap manager knows this as does the OS for any shared pointers, so I don't understand why this isn't part of the standard. It would make most, maybe all, buffer overrun examples trivial to correct.

      • 2 weeks ago
        Anonymous

        I'd change the type system. Basically take a lot of inspiration from ATS, but cleave off a shitload of the bloat and bad design decisions in ATS, and revert to using the C-syntax.

        >The runtime heap manager knows this as does the OS for any shared pointers, so I don't understand why this isn't part of the standard
        1. it encourages bad practices
        2. it's trivial to do this yourself

  8. 2 weeks ago
    Anonymous

    Garbage collection

  9. 2 weeks ago
    Anonymous

    >add to C
    >goto
    >remove from C
    >all conditionals and loops
    Just make then with goto if you have to have them.

    • 2 weeks ago
      Anonymous

      goto is already in c

      • 2 weeks ago
        Anonymous

        Maid computing guy is a nocoder? Who could have ever seen this coming.

    • 2 weeks ago
      Anonymous

      C is archaic. It's one of the few languages that still has goto.

    • 2 weeks ago
      Anonymous

      you dont have access to the flags register otherwise in c you moronic homosexual
      >but the guy on dpt told me that branches are bad
      well then make a compiler that understands you want movCC al when you do Black person = apple - banana

  10. 2 weeks ago
    Anonymous

    Add: dependency manager and packager
    Remove: UB

    • 2 weeks ago
      Anonymous

      >Add: dependency manager and packager
      frick no. package managers just encourage bloat

  11. 2 weeks ago
    Anonymous

    You have a million other languages with package managers and special snowflake build tools and module systems, go use one of those instead.

    • 2 weeks ago
      Anonymous

      C is fine as is. Changing or removing any of the shit would make it not C. The only thing I'd like to change about C is the programmers. Mostly, I wish more people knew about uintptr_t and used it appropriately.
      has it right.

      • 2 weeks ago
        Anonymous

        >Mostly, I wish more people knew about uintptr_t and used it appropriately.
        >intptr_t, uintptr_t - integer types wide enough to hold pointers
        Tell me more. I read the description in the manpage and clicked a couple of stack overflow links, not sure I understand what the difference is between using this and void*, or why you'd even want a integer type holding a pointer that can be a negative number.

        • 2 weeks ago
          Anonymous

          it's for pointer arithmetic

          • 2 weeks ago
            Anonymous

            ++(unsigned long)pointer

          • 2 weeks ago
            Anonymous

            Will warn or error due to casting to wrong sizes on certain architectures. Just cast to uintptr_t, it's part of stdint.h so it's probably already defined anyway.

            Yes but what about void*

            Can't do arithmetic on it

        • 2 weeks ago
          Anonymous

          As

          it's for pointer arithmetic

          said it's for directly manipulating pointers, in case you're doing memory allocation, setting up page tables, parsing binary formats, etc. The problem is that tons of people have a bad habit of using "long", "unsigned long", "unsigned long long", "uint64_t", and so on for pointer arithmetic, and all of these can cause compiler errors or warnings depending on the platform. Casting your pointers to a uintptr_t before doing arithmetic on it solves that problem. And unlike arithmetic on a uint8_t* or char*, a uintptr_t supports all normal arithmetic or bitwise ops such as shifts or masks.

        • 2 weeks ago
          Anonymous

          Not every pointer is just an address. There are platforms where pointers store additional metadata.
          >why you'd even want a integer type holding a pointer that can be a negative number.
          To take the signed difference between addresses or pointers.

          • 2 weeks ago
            Anonymous

            how about ptrdiff_t?

          • 2 weeks ago
            Anonymous

            Yes but what about void*

          • 2 weeks ago
            Anonymous

            It's a pointer.

  12. 2 weeks ago
    Anonymous

    ADD: You can goto any label in any function
    REMOVE: Types

    • 2 weeks ago
      Anonymous

      >ADD: You can goto any label in any function
      There are setjmp and longjmp in standard C exactly for this purpose.

  13. 2 weeks ago
    Anonymous

    Add full Unicode string
    Remove header files

  14. 2 weeks ago
    Anonymous

    add: built-in ABI versioning

  15. 2 weeks ago
    Anonymous

    Remove the god-awful build and header "system"
    Not sure what to add to not make it more Black personlicious

  16. 2 weeks ago
    Anonymous

    >add
    nothing
    >remove
    i'd love to remove all the cruft accumulated since ANSI C, but since i can only pick 1 "thing", annex K because it's completely useless and pretty chonky

  17. 2 weeks ago
    Anonymous

    Remove header files and parse the entire file instead of prototyping along with all #included local files

    I would add native vector (math) and matrix types with operator math and swizzling

  18. 2 weeks ago
    Anonymous

    > add
    namespaces, modules instead of headers, lambda. I think that's it, then it would be a nice language.
    >remove
    let's stop at c99

  19. 2 weeks ago
    Anonymous

    Why tutel
    He writes neuro's shit in Python I would assume

    • 2 weeks ago
      Anonymous

      C#, I believe

  20. 2 weeks ago
    Anonymous

    As a beginner to C.
    >Dynamic strings
    >Canonical way of taking user Input
    >Vectors

    • 2 weeks ago
      Anonymous

      That's a very creative way to interpret the number 1

      • 2 weeks ago
        Anonymous

        Good to know I don't need to malloc/realloc every time a piece of data is unknown in size at compile time and I can just replace it all with the integer literal 1. Who would of known it was so easy. Thanks anon.

  21. 2 weeks ago
    Anonymous

    >(1) feature you would add to C
    full compile time programming support, such that you can write normal C code that runs at compile time and interacts directly with the compiler.

    • 2 weeks ago
      Anonymous

      this is what I want as well. There is so much shit that should be done at compile time but is done at run time instead because it's easier

  22. 2 weeks ago
    Anonymous

    I don't know I don't code in C

  23. 2 weeks ago
    Anonymous

    Add: C++
    Remove: C

    Perfect language left behind.

  24. 2 weeks ago
    Anonymous

    ++

  25. 2 weeks ago
    Anonymous

    Any changes I'd make are just planned for or already in zig

  26. 2 weeks ago
    Anonymous

    a rust flag for c which errors compilation when a variable is accessed out of mutex lock or a new allocation is never deleted that way rust and all of its dei jobs can never be talked about again and development can continue with bad programmers in safety equipment

  27. 2 weeks ago
    Anonymous

    A golang style package manager and out with the preprocessor.

  28. 2 weeks ago
    Anonymous

    add: allow definition of anonymous functions inside of expressions
    remove: the standard library

  29. 2 weeks ago
    Anonymous

    Add actual strong types that cause compilation errors even if the underlying types are identical or otherwise compatible for implicit conversion.

    Remove ability to declare multiple types on the same line, so I don't have to deal with morons arguing about
    >int * a, b;
    anymore.

  30. 2 weeks ago
    Anonymous

    Add: Rendezvous from Ada
    Remove: char literal

  31. 2 weeks ago
    Anonymous

    There are two major reasons I avoid C despite enjoying its rugged simplicity and universality:
    1. No dependency manager
    2. Unhelpful or non-existent error messages

    Where the first one can be debated, I think the second one is purely a deficiency.

    • 2 weeks ago
      Anonymous

      What do you mean? Are error codes not good enough for you?

  32. 2 weeks ago
    Anonymous

    I want ability to append macros
    I want to remove type aliasing

  33. 2 weeks ago
    Anonymous

    Vedal has a vtuber harem

  34. 2 weeks ago
    Anonymous

    Add
    >everything I like
    Remove/Change
    >everything I dislike
    Simple as

  35. 2 weeks ago
    Anonymous

    ADD: Dynamic Typing
    REMOVE: Functions and Jumps

  36. 2 weeks ago
    Anonymous

    Add: #run from Jai
    Change: Everything

    • 2 weeks ago
      Anonymous

      > from Jai
      kek, thats a rust thing. cant remember for sure but i think Holy C had something similar too

  37. 2 weeks ago
    Anonymous

    I wish modern programming paradigms in C weren't an absolute nightmare.

  38. 2 weeks ago
    Anonymous

    true register borrowing.
    #ifdef X86
    #define STRINGS_DESTINATION_REGISTER "%rdi"
    #endif

    //mark the architecture-dependant register as in use, compiler cant free it on its own
    reserve_register(STRINGS_DESTINATION_BUFFER);
    register char * destbuf asm(STRINGS_DESTINATION_REGISTER);
    //do some string operations
    //
    free_register("STRINGS_DESTINATION_REGISTER");

    this would make OS programming much easier.
    >but just use the register keyword
    not good enough, if you use -O0 shit like
    if (structpointer->father->somestruct.somemetric == 0)
    {//do something with that value}

    are the 2 memory accessed every single time you use that, you would need to do something like "unsigned long somethingsomething = pointer->deref->deref.something" manually which is just ugly.
    >just do that homosexual
    no, 20 lines that are each 70 characters long look really nice and i want to use them.

  39. 2 weeks ago
    Anonymous

    OH DUDE PROGRAMWIDE LABELS!!!!!!!!!!!!!
    how the hell did i not think of that? what we have right now is so moronic. Also callable labels would be nice
    >b-but readability
    go back and then rope.

  40. 2 weeks ago
    Anonymous

    >add
    garbage collector.
    >remove
    manual memory management.

  41. 2 weeks ago
    Anonymous

    >add
    defer
    >remove
    goto

    • 2 weeks ago
      Anonymous

      defer is just a special case of goto.

      • 2 weeks ago
        Anonymous

        goto is just a special case of mov

  42. 2 weeks ago
    Anonymous

    Package manager or proper string tooling, literally the only thing holding it back. The only major issue with C is that you have to do everything on your own, which may be good to be “le epic programmer”, but if Im building a house, I don’t want to work out the production lines to all my materials like a game of factorio, I wanna get shit done

  43. 2 weeks ago
    Anonymous

    >add
    dynamic goto
    >remove
    forward declaration requirement for functions in the same file

Your email address will not be published. Required fields are marked *