6 ms·
I don't necessarily disagree with this assessment but you can easily create functionality in C that requires looking at multiple source files to understand what
by jon6 14y ago
I don't necessarily disagree with this assessment but you can easily create functionality in C that requires looking at multiple source files to understand whats going on.
x = foo(bar(), baz());
Now you have to look at the definitions for bar and baz to understand the cost of this line.
I guess this is the trade-off with using a high level language. Expressivity vs transparency.
- mpyne 14y agoThis page gives another "nice" demonstration of C (in actual usage, not an obfuscated code contest): http://oldhome.schmorp.de/marc/bournegol.html http://oldhome.schmorp.de/marc/bournegol.html What's especially nice is that TRUE is defined as -1 in that source, not 1, which could easily confuse someone who isn't intimately familiar with C's boolean operators and conditional expressions (since something like if((a < b) == TRUE) { ... } would actually be incorrect). Even with that in mind, it would still be nice to have a "safer to use" systems language than C++ generally available. Perhaps Go or D can fill that role (though good luck making that happen for game development on Windows...)
- pjmlp 14y agoFor many years that language for me was Turbo Pascal, but then it faded away. :(
- heretohelp 14y ago>Perhaps Go or D can fill that role Aha! A question I can answer. This one will be easy: No and No. In fact, I can go one stronger than that. Never and never (although they really hoped). Go is a general-purpose language, it competes more close with Java and Python, but mostly Python and Ruby. D is just in an awkward place that has been occupied by Java and C#. Neither are even remotely viable for serious systems work, although they'd work fine for network services.