8 ms·
> Using C/C++ for this application domain is a non-starter What language would you use? The requirements are that it be low-level enough that you can zero key
by glass- 11y ago
> Using C/C++ for this application domain is a non-starter
What language would you use?
The requirements are that it be low-level enough that you can zero keys from memory and needs to be able to be ported to every major OS, including iOS and Android.
- sitkack 11y agoWhat I would use and languages that applicable aren't the same. I'd probably use OCaml. But almost anything is better than C/C++ for this domain. If the goal was to get as many programmers, with the widest distribution, Java 7 would be an excellent choice. RoboVM can compile to native for the platforms that don't have the required runtime. Others might use Rust, ATS or Idris. Hell, even Lua with a small C core (NACL, os calls, etc) would be better. The red herring that gets trotted out is timing and side channel attacks, crypto itself can still be done in nacl. But everything else, GUI interaction, network interaction and parsing of external data should be done in a safe language.
- xorcist 11y agoObscure != secure. The same argument has been said for Java (but turned out to have worse problems in practice), Ruby (where if you every wrote something in Rails you've been vulnerable halv a dozen times by now) and PHP (and any commentary here should be unnecessary). Sure, all the obscure languages you mention which never had even one project with a fraction of the usage base of Apache or Postfix may have no known security problems, but that's not a something to boast about. If you really want these languages to succeed, build a project with the potential user base of Nginx or Linux. Just don't complain about other's language choices, especially not when those are well known and well understood ones.
- synchronise 11y agoMozilla and Samsung are building the Servo rendering engine, based on Rust.
- xorcist 11y agoEverybody and their cat knows that. It's also not a functional web browser yet, and doesn't have a measureable market share compared to Firefox and Chrome, which are C++. Let's compare CVEs when it's at least in the top three. But if it survives one day at cansecwest I would be thoroughly impressed.
- synchronise 11y agoWell it's an effort, and several popular libraries are releasing bindings for their products using Rust. And for two large companies to be working on something as large as Servo, even before the language went 1.0, there must be something good about it.
- deleted 11y ago[deleted]