Tip:
Highlight text to annotate it
X
We know from computer science theory from people like Alan Turing
that languages like Python and JavaScript are equally powerful.
You've seen half of that here when we wrote an interpreter for JavaScript in Python.
We might wonder are natural languages equal?
Spanish, Portuguese, Japanese, Mandarin, Hindi--are these languages all equal in every way?
This idea is actually not universally accepted.
Does every French utterance have an equivalent Japanese utterance?
The Sapir Whorf hypothesis--or linguistic relativity hypothesis--in linguistics
holds that the structure of a language influences the ways in which speakers reason
about the way world.
This is still hotly debated. Language is generally held to influence thought.
For a chilling fictionalization, I encourage you back again to George Orwell's 1984.
However, in computing in unnatural languages like Python and JavaScript,
we can have definitive answers based on mathematical proofs.
There is a very strong sense in which Python, JavaScript, C, C++, C-Sharp, and Java
can all do exactly the same range of computations--
those that can be done on what's known as a "Turing machine,"
a mathematical model of computation.
However we won't talk about Turing machines in detail in this class.
[Complete and utter darkness]