Hacker News new | past | comments | ask | show | jobs | submit login

Just gonna throw this out there: what if instead of working on creating the myriad of "better languages" we focus on actual mastery of simpler languages like C.

And with that mastery: what about writing some machine-learning software that detects vulnerabilities as part of the build/release cycle. For instance:

http://news.mit.edu/2016/faster-automatic-bug-repair-code-er...

To detect vulnerabilities people need to be careful and follow best practices. If they can't do that well.. replace the people with software that's better and more efficient than the people. :)




we focus on actual mastery of simpler languages like C

We've had 44 years for people to master the "simplicity" of C. Turns out, writing C is simple but writing safe, reliable C borders on the impossible even for the most masterful masters who ever mastered their mastery of the language. Better return on investment would be to work on killing C with something that doesn't have C's problems.


>Just gonna throw this out there: what if instead of working on creating the myriad of "better languages" we focus on actual mastery of simpler languages like C.

Relying on people being careful does not work for security, where one exploit is as good as many. OTOH, simpler languages can work well for performance, features and almost everywhere else; where even if you don't have specific language features to guard against common mistakes, the impact of an oversight is fairly localized or correctable.


Hence why I followed up with:

"what about writing some machine-learning software that detects vulnerabilities as part of the build/release cycle"


Why can't we do both? On the one hand, we obviously need better techniques to maintain and improve upon code bases in languages like C. They aren't going anywhere anytime soon. But why shouldn't we also pursue improvement to the programming language state of the art? And if we find improvements, why shouldn't we use them? I'd be very sad if 50 years from now C (or Rust, for that matter) is considered the final word in programming languages.


Mastering C over using Rust is like mastering abacus, over using computer.


Funny :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: