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

It speaks poorly of this community that you get second-guessed more for building an application in C than for building one in JavaScript + Node.js.



If you want to use C today you need a really good excuse. The tradeoff between security and performance is simply not there anymore.

Unless you write on an embedded system, a game, or a high performance number crunching application, C is premature optimisation.

And even in the above we see drastic changes today, embedded systems have become so powerful that they can run scripting languages (http://www.eluaproject.net), game engines are written in C and scripted with other things (http://docs.unity3d.com/ScriptReference/), and inmemory-bigdata systems like spark offer significant advantages over classical HPC frameworks like MPI (http://www.dursi.ca/hpc-is-dying-and-mpi-is-killing-it/).

While JS is horrid, it at least doesn't have manual memory management.


C is alot about portability, not necessarly performance.


If you only care for portability you can always use one of the billion safe languages whose interpreters are written in C. Lua for example.


You may not only care about portability. And "safety" sometimes also means being able to meet realtime requirements, and also often means having the ability to carefully account for resource use in ways that many interpreters does poorly (and no, kernel enforced system limits are not always an option).

Many interpreters also make assumptions (e.g. expecting a POSIX'y system) about the host system that many embedded platforms doesn't necessarily meet.

I've more than once looked at interpreters for embedding and found most of the alternatives sorely lacking. Very few interpreters are well suited for embedding on constrained platforms at all (Lua, admittedly is probably one of the more solid exceptions). And once you start having to write lots of support code in C to port or sandbox your interpreter of choice, the reason for considering an interpreter quickly becomes less compelling.


Cause it would add an extra layer to my solution, which might be more complicated to get right than just bare C.


You're right, unixprogrammer; real hackers write everything in the venerable C.

On the other hand, there is a fair bit of negativity in this thread, just because it is C. That might not be in the hacker spirit, so to speak.




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

Search: