[Chicago] Question about Machine Language.

Lewit, Douglas d-lewit at neiu.edu
Mon Dec 7 16:41:59 EST 2015

Hi there Thomas,

I watched that video on the Altair 8800.  Oh my god!!!  How confusing!!!
How many years ago were engineers and programmers actually working with
computers like that?  Wow!  It really makes me appreciate the abstraction
of higher-level languages such as Python!

Thanks for the YouTube link.  That was really interesting.... and also kind
of frightening!



On Mon, Dec 7, 2015 at 3:10 PM, Thomas Johnson <thomas.j.johnson at gmail.com>

> Because:
> * Different computers use different instruction sets (i.e., different
> version of machine language)
> * The compiler is almost certainly better than you are at generating
> optimized machine language from your high-level language. See some examples
> of the kind of optimization options gcc has here:
> https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
> * Unless you are an expert at assembly, you will be more productive in a
> higher level language
> * We used to, and it wasn't pleasant
> https://www.youtube.com/watch?v=EV1ki6LiEmg
> On Mon, Dec 7, 2015 at 3:05 PM Lewit, Douglas <d-lewit at neiu.edu> wrote:
>> Thanks for the correction Naomi, but that didn't really answer my
>> question.  Why don't we all just study machine language and that's it?
>> On Mon, Dec 7, 2015 at 2:10 PM, Naomi Ceder <naomi.ceder at gmail.com>
>> wrote:
>>> On 7 December 2015 at 13:57, Lewit, Douglas <d-lewit at neiu.edu> wrote:
>>>> Hi everyone,
>>>> I was reading an article on the web about how all programming languages
>>>> are "Turing complete".  I believe that basically means that all programming
>>>> languages are able to communicate with the computer's CPU using the binary
>>>> codes of machine language.
>>> Uh, that's not actually what "Turing Complete" means...  It doesn't
>>>  have anything to do with binary or machine language... from Wikipedia (
>>> https://en.wikipedia.org/wiki/Turing_completeness):
>>> "To show that something is Turing complete, it is enough to show that
>>> it can be used to simulate some Turing complete system. For example, an imperative
>>> language <https://en.wikipedia.org/wiki/Imperative_language> is Turing
>>> complete if it has conditional branching
>>> <https://en.wikipedia.org/wiki/Conditional_branching> (*e.g.*, "if" and
>>> "goto" statements, or a "branch if zero" instruction. See OISC
>>> <https://en.wikipedia.org/wiki/One_instruction_set_computer>) and the
>>> ability to change an arbitrary amount ofmemory
>>> <https://en.wikipedia.org/wiki/Computer_memory> locations (*e.g.*, the
>>> ability to maintain an arbitrary number of variables). Since this is almost
>>> always the case, most (if not all) imperative languages are Turing complete
>>> if the limitations of finite memory are ignored."
>>> Cheers,
>>> Naomi
>>> Okay then.... so why don't we get rid of C, C++, Java, Python, Ruby,
>>>> Perl, Ocaml, Haskell, C#, F#, etc, etc and why don't we call just code in
>>>> machine language?  Bear in mind that I'm asking this question from the
>>>> point of view of the Devil's Advocate because I know almost nothing about
>>>> machine language.  But it's an interesting question.  It's related to the
>>>> question, "Why don't we have one universal natural language?  Let's get rid
>>>> of English, French, Spanish, German, Russian, Chinese, Japanese, Arabic,
>>>> Hebrew, etc, etc, and replace them all with one universal language that
>>>> everyone understands".
>>>> I'm interested in reading your thoughts and ideas.  Thanks.
>>>> Best,
>>>> Douglas.
>>>> P.S.  Sorry to hear about the Django Study Group.  I thought Mark
>>>> Graves was very friendly and did a great job of demonstrating various web
>>>> applications using Python.
>>>> _______________________________________________
>>>> Chicago mailing list
>>>> Chicago at python.org
>>>> https://mail.python.org/mailman/listinfo/chicago
>>> --
>>> Naomi Ceder
>>> https://plus.google.com/u/0/111396744045017339164/about
>>> _______________________________________________
>>> Chicago mailing list
>>> Chicago at python.org
>>> https://mail.python.org/mailman/listinfo/chicago
>> _______________________________________________
>> Chicago mailing list
>> Chicago at python.org
>> https://mail.python.org/mailman/listinfo/chicago
> _______________________________________________
> Chicago mailing list
> Chicago at python.org
> https://mail.python.org/mailman/listinfo/chicago
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/chicago/attachments/20151207/a6466cec/attachment.html>

More information about the Chicago mailing list