CobaltC – The Successor to C?

(strawberry9.github.io)

12 points | by SilentLambda 2 hours ago ago

17 comments

  • rurban 8 minutes ago ago

    Unsafe identifiers, prone to homoglyph attacks. No TR39 provisions. Worse than rust or Java. https://strawberry9.github.io/the-wrong-memory/Appendix_06.h...

  • ethin an hour ago ago

    This is so obviously written by ChatGPT from what I can tell. Not even an attempt to copyedit it unless I missed something.

    • hyperhello 23 minutes ago ago

      This comment was obviously written by Opus 3.8. Not even 4.0.

    • thinkafter an hour ago ago

      I’m not sure about copy but the UI seems designed to look like an AI response which is certainly a choice

  • ronsor 2 hours ago ago

    Before I read this, what is there about C3 [0] you don't like?

    [0] https://c3-lang.org

    • jjtheblunt an hour ago ago

      C3 is an embarrassing mess regarding integer types and sizes, missing C99's stdint.h defs, for example.

      • strenholme an hour ago ago

        To clarify: C3 has fixed sized ints. Maybe the parent poster doesn’t like their names, but they are fixed sized, as follows:

          Name    Size    Signed
          bool    1       no
          ichar   8       yes
          char    8       no
          short   16      yes
          ushort  16      no
          int     32      yes
          uint    32      no
          long    64      yes
          ulong   64      no
          int128  128     yes
          uint128 128     no
        
        Source: https://c3-lang.org/language-overview/types/#integer-types
  • ternaryoperator an hour ago ago

    It's great to have it all spec'd out. However, I think specs like this suffer the same fate as war plans: they get modified quickly as soon as implementation begins. Nonetheless, it's good to have a clear idea of where you're headed. I just wouldn't call it "Final."

  • pizlonator an hour ago ago

    This doesnt seems to be meaningfully different from Rust.

    > does not require tracing garbage collection

    Just call it garbage collection.

    (Applies in two ways: if you think that garbage collection subsumes reference counting then this language doesn’t require garbage collection in the sense that it also doesn’t require reference counting; if you think that garbage collection does not subsume reference counting then there’s no point in saying three words when you can say two.)

  • drgo 2 hours ago ago

    reads more like a Wishlist rather than actual implementable specs.

    • nextaccountic 2 hours ago ago

      every spec is implementable

      some just delegate more or less to the implementation

      • nextaccountic 2 hours ago ago

        that said, the borrowing part is incredibly short on details

        i read trying to assess if it's more or less expressible than rust's current nll or the future polonius and honestly there's nothing there

  • yoklov 2 hours ago ago

    This is certainly copying off Rust's homework...

    • Fordec an hour ago ago

      Who copied off Haskells homework, so here we are.

      • irishcoffee an hour ago ago

        And cloudflare still somehow shipped a rust binary that crashed half the internet.

        • katdork 12 minutes ago ago

          and I've had Haskell binaries attempt to use infinite quantities of RAM (looking at an old version of dconf2nix here) and thus crash

  • woodruffw 18 minutes ago ago

    Another one?