upvote
CobaltC – The Successor to C?

(strawberry9.github.io)

This is so obviously written by ChatGPT from what I can tell. Not even an attempt to copyedit it unless I missed something.
reply
I’m not sure about copy but the UI seems designed to look like an AI response which is certainly a choice
reply
[flagged]
reply
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.)

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

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

reply
C3 is an embarrassing mess regarding integer types and sizes, missing C99's stdint.h defs, for example.
reply
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
reply
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."
reply
Unsafe identifiers, prone to homoglyph attacks. No TR39 provisions. Worse than rust or Java. https://strawberry9.github.io/the-wrong-memory/Appendix_06.h...
reply
reads more like a Wishlist rather than actual implementable specs.
reply
every spec is implementable

some just delegate more or less to the implementation

reply
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

reply
This is certainly copying off Rust's homework...
reply
Who copied off Haskells homework, so here we are.
reply
And cloudflare still somehow shipped a rust binary that crashed half the internet.
reply
and I've had Haskell binaries attempt to use infinite quantities of RAM (looking at an old version of dconf2nix here) and thus crash
reply
Another one?
reply
Yes, but remember is the last appendix to a book, and book provides the context for this appendix. So yes, in that sense, it's just another one attempting to address the memory-safety issues of C. At least this one uses C like syntax and doesn't require C programmers to learn some alien syntax. Of course, this is just a spec, Rust is well and truly live in the environment. The book is more interesting than the spec.
reply
Odin's turn to be "the sucessor of C" is due this month
reply