We are pleased to announce that DreamBerd has been renamed to C
github.com
github.com
Incredible
> You might be wondering what C uses for the 'not' operator, which is an exclamation mark in most other languages. That's simple - the 'not' operator is a semi-colon instead.
if (;false) {
print("Hello world")!
}
The alternative name could (or should) be Brainfuck++-. Emphasis on "-".You know what's funny, though? There's zero, I repeat, ZERO, source code in the repository. Thank god. Otherwise you know a bunch of folks would inevitably dip their feet into Brainfuck++-, and said troll feet would immediately disintegrate into ash, for obvious reasons.
> delete delete!
I guess having no code is perfectly in line with this concept of perfection: the best line of code is the unwritten one.
Here they are: https://github.com/TodePond/C/blob/main/Examples.md
The best part was the comments. Most folks were hip, but every fifth comment or so was something like "I agree with #1, #3 and #4, but #2 is wrong..."
LOL
But the original (archived) has comments, which is what scott-smith_us may be referring to https://web.archive.org/web/20140529003713/https://typicalpr...
and
3 = 3.14! //true
... i think we got a systems language here. It really needs facilities for self modifying code and multiprocessing/ clustering, tho; to be considered a "modern" language. Perhaps make all heap allocations out of some DHT pool?Reminds me of EWD1300:
> Surround the operators with the lower binding power with more space than those with a higher binding power.
> horizontal layout: 1+2 * 3 is (1+2) * 3 (merd innovation!)
Edit: Here's a bootleg: https://gist.github.com/mrnugget/49ad3ee4043c746e42187e2820d...
Went back and re-skimmed, it does still seem like a joke, but it falls a bit flat for me...
But it could be legit someone's crazy project, there are pretty zany things that end up on here.
https://github.com/TheFeministSoftwareFoundation/C-plus-Equa...
I am disappointed in the incomplete specification here. Dividing by zero returning undefined makes sense but what about dividing zero? It should also be undefined.
0/3 ==== undefined
Now I don't know whether I am programming in c++ or C++ anymore.
- Actual immutability (const const)
- Type inference in declarations (var)
- No reserved names (I'd also take escaped keywords like Kotlin or Rust, but...)
- No manual memory management (garbage collector AND lifetimes)
- Built-in true and false without having to import stdbool
- String interpolation
- Embedded HTML
- Asynchronous functions (sort of)
- "Create C app" for beginners to get started without obscure Makefile knowledge or gcc'ing every file manually
All it takes is copy, paste, modify, separately run the comptime code for every variant, and directly paste the output into the main source code.
The end result is very clear and explicit. Nice!
Also I didn't notice until I saw the logo that the "renamed to C" was a Twitter/X reference...
Sigh. So close to the secret python standard... arrays start at -1 and end at -n
Surely index[0.5] should reference the second block, not the third?
list=reverse(list)
list[-1]
list=reverse(list)
Just like python!
const var score = 5!
score++!
My sides…