Python Written in C?
Manuel Vazquez Acosta
mva.led at gmail.com
Mon Jul 21 07:15:45 CEST 2008
I think your mixing things up. Even modern C compiler are mostly written
in some other high level language. See GCC, for instance: it's mostly
written in C.
Many languages are made for build other major systems:
* C was made in order to ease the build of Unix
* Ada was made in order to ease the build of Air Traffic Control Systems.
* and so on...
On the other hand, Python's language features are, in a way, orthogonal
to those of the underlying language in which Python *may* be implemented
(take a look at PyPy: http://en.wikipedia.org/wiki/PyPy).
I mean, I really don't care how Python mappings are implemented in C.
What I care about is that I think in terms of (key, value) mappings,
regardless of how lookups, insertions, deletions, and so are made
internally. In C, I would have to resort to implement a hash table or so.
Let's summarize: Python is a *new* language. C was the option to make it
happen, there are others.
giveitawhril2008 at gmail.com wrote:
> I'm just learning about Python now and it sounds interesting. But I
> just read (on the Wiki page) that mainstream Python was written in C.
> That's what I was searching for: Python was written in what other
> See, my concern was something like: OK, if Python is so hot, then,
> hopefully someone is writing it in assembly language for each MPU chip
> out there. Otherwise, if, say, they've written it in C#, then it looks
> like the REAL, generally useful language to learn is C# and Python is
> akin to Visual Basic or something: a specialty language....whereas
> REAL WORLD programmers who want to be generally useful go and learn
> So I was suspecting the Python compiler or interpreter is written in a
> REAL language like C#. So, Wiki says it's written in C! It's almost as
> if it were an intentional trick...write your own, new language in an
> OLD, real world language that is passe. Compile it into executable
> modules of course, so it is a real, working compiler, alright. But the
> SOURCE is some old, high level language which no one wants to use
> anymore! So now you've got a hot new language package and no one can
> say "well, it is written in, the SOURCE code is written in, a REAL
> language." No, it's not! The source is some outdated language and
> compiler and no one is going to prefer learning THAT to learning your
> hot new language!
> I'm not dissing Python, here. Just noting that, if it is written in C,
> that throws a curve at me in trying to balance the value of learning
> Python vs. some other major language.
More information about the Python-list