views:

1618

answers:

7

I was always curious what languages these pieces of software were written in?

  • Visual Studio
  • Microsoft Office
  • Adobe Acrobat
  • Google Chrome
  • Firefox
A: 

I believe they're all basically written in C.

Charlie Martin
Firefox and Chrome are obviously written in C++, not C. Just check their source code which is freely available.
Nemanja Trifunovic
Which is basically C.
Charlie Martin
You could also say that they're all basically written in assembly language too, which wouldn't be strictly wrong.
Greg Hewgill
C and C++ are two very different languages which share a common syntax.
Ferruccio
I tend to use the term "C/C++" as a majority of C++ code is C with STL containers, wrapped in classes to make the codebase tidier.
gbjbaanb
Ah, you young kids. C++ is a C preprocessor with pretentions.
Charlie Martin
+2  A: 

Visual Studio and Office are predominately written in C++, Office definitely is because MS released the office ribbon as a control... for MFC programmers only, kinda gives a big clue that the original ribbon comes from a MFC app.

Acrobat.. I'm not sure of, but I'd guess C/C++.

Chrome is a C++ app, as is Firefox - you can download the source for the latter and see for yourself!

gbjbaanb
As an addendum, the next version of Visual Studio (2010) will be written in C#/WPF.
cletus
AFAIK, the Office apps don't (and never did) use MFC. Also, the MFC ribbon was not taken from the Office code, it was developed by BCGSoft. See http://blogs.msdn.com/vcblog/archive/2008/04/07/mfc-update-powered-by-bcgsoft.aspx
ChrisN
Chromium is the OSS project which comprises the vast majority of the Chrome codebase and is equally available for download - http://dev.chromium.org/developers/how-tos/get-the-code
kronoz
MFC Ribbon: ok, it is BCGSoft code. But Office is still written in C/C++.
gbjbaanb
Parts of Office (Excel in particular) are written in ASM to provide better performance.
Technical Bard
A: 

The last four are C++. I'd guess Visual Studio is too. Pretty much any major app of the age most of those are will be written in C++.

Chuck
+5  A: 

Here's a cool graph showing a breakdown of Firefox's source lines of code (SLOC). Surprisingly, it contains several times as many JavaScript SLOC as C++.

There's a graph for Chromium too.

jleedev
Only 100k lines? I think that doesn't include the rendering engine, right?
Rauhotz
Apparently not. *pokes around*. Good lord that's huge. https://www.ohloh.net/p/mozilla/analyses/latest
jleedev
For comparison with Chromium, here's WebKit: https://www.ohloh.net/p/WebKit/analyses/latest
jleedev
What's "Chromium"?
Argalatyr
never thought web browsers are *that* big
Johannes Schaub - litb
+7  A: 

According to The Programming Languages Beacon they are all written in C++.

Actually, it is easy to verify that Firefox and Chrome are indeed written in C++. They are open source projects.

Nemanja Trifunovic
It's curious that the only C# project is a linux desktop project, and btw, the dot should be bright red, imo :)
baol
+2  A: 

Firefox is written in a whole bunch of languages.

I think the following is right (but I wiki'd it, so it can be fixed if it's not)

  • The Gecko layout engine is written in C++.
  • The Javascript interpreter (SpiderMonkey/TraceMonkey) is written in C - possibly with some ASM to speed things up on some platforms.
  • The user interface is written in a combination of XUL and CSS (to be interpreted by Gecko), and Javascript.

XUL is Mozilla's user interface description language - an XML schema.

Then there's all the plugins. They often include shared libraries (DLLs on Windows). Firefox doesn't care what language was used to create the DLL - lots of languages can do it.

slim
A: 

I can't say for sure of course, but I think that a significant portion of Visual Studio might be written in .NET as well. Anyway, it has all these nice managed interfaces for integrating 3rd party products, so I'm guessing that there should be a fair portion of managed code on the other end too.

Vilx-