3 ms·
I find the argument rather faulty. If you found your own company where does this "strong bias" to write software in the same language as the OS come from(just
by stonemetal 18y ago
I find the argument rather faulty. If you found your own company where does this "strong bias" to write software in the same language as the OS come from(just about every language out there has FFI to C so system libraries should be accessible)? If I am now writing Web software, I am now writing an application that runs on an OS that is primarily written in C so why does this "strong bias" magically disappear?
- jerf 18y ago"(just about every language out there has FFI to C so system libraries should be accessible)" Just about every language NOW has a good FFI to C. Subtract several years for when that essay was written, then subtract ten years for when the statement is set in, and you'll encounter a different world. Today there's no great reason not to write your desktop app in PyQT or Clojure or on top of XULRunner. (Although I'd point out that surprisingly few people have noticed this!) ViaWeb was born into a different world. I didn't do much desktop programming in the 1996 timeframe, but you did not have many choices, especially if you were a student that couldn't drop ~$1000 2009-dollars into a programming language environment. (Now my new supercomputer-laptop costs less than that and superior environments are free. Vive la progress!) A couple that weren't C and, as it turns out, all doomed to be unsupported within a few years anyhow, like Delphi. I talk about 1996 because it's when I got into the game; the essay is a talk given in 2001 which means "ten years ago" is 1991.
- bad_user 18y agoSystem libraries are accessible, but bindings are still hard to write and maintain. Even when it comes to open-source communities that offer help for writing such bindings, the effort is still big ... try writing a GTK+ application in Haskell or CLisp ... yes, bindings for those two exist, but you're in for some pain. Another reason is documentation. You'll have an easier time finding documentation/examples for the main language of the OS. Another reason: having dependencies that aren't available on the target OS does impose additional development costs (if you don't want to give the user the burden of installing those dependencies). And if the distribution is over the Internet, it also means a bigger download size and extra harddisk space. These things may or may not matter, but imagine a simple feedreader that requires a 30MB download and 200MB of free disk space. The main language of the OS doesn't necessarily have to be C/C++. It's the language that's best supported and encouraged by the company/community that maintains the OS (although it's currently not possible to write system drivers in C# on Windows, work is being done to lift some device drivers in user mode, which would make a good fit for .NET)
- jpf 18y agoWhen writing web applications the bias isn't as strong because the browser is the interface, so you don't look for the OS native look and feel.