Week 3
Comments on Code by Petzold
Chapter 20
This chapter talks about a coded character set, or character codes. Petzold described the issues and frustrations with creating the character set. He also mentions how the Carriage Return and Line Feed are “by far the most important control codes” (pg 295) as you can jump to the left of the page with carriage return and jump a line down with line feed.
I thought it was awesome to see the punch card like the one shown in class
After ASCII came Unicode which could represent more characters, enough for all of the world’s languages.
Chapter 21
“A bus is simply a collection of digital signals that are provided to every board in a computer.” (pg 301)
Signal categories
- Address signals
- Data output signals
- Data input signals
- Control signals
This book has a copyright year of 2000, who knew that a dozen years later, Macintosh would be doing so well. Oh how things have changed! “… Macintosh currently accounts for less than 10 percent of the desktop market.”
For those who are not as technically savvy, I thought the section where Petzold talks about pixels and resolution has a good explanation of it. It is here where we start to see how a series of 1s and 0s can give you letters on a screen.
This was a great analogy. “Memory is like the top of your desk. Anything that’s on your desk you can work with directly. Storage is like a file cabinet. If you need to use something from the file cabinet, you have to get up, walk over to the file cabinet, pullout the file you need and bring it back to your desk.
Chapter 22
This chapter talks about the operating system. It’s hard for me to imagine using command line to navigate through files just use the computer overall. But that’s how it started. I’m glad I was born in a generation where computers have already been created and a GUI is available.
Chapter 23 - 25
High level languages – advantages – easier to learn than assembly languages, they are clearer and more concise, they are portable. The disadvantage is that it will be larger and slower than a program written in an assembly language.
“If you have 100 different people to write a program that prints out prime numbers, you’ll get 100 different solutions” I find that true even today. I experience that with Java and C++. My professor would assign us a program to write to solve a specific issue, and we would all have slightly different code.
Comments on 7 Languages in 7 weeks
Prolog is not like Io and Ruby in that it is not an imperative language. Imperative languages require you to tell the computer how to do a specific job. Prolog is a declarative language in which the computer does the reasoning.
Prolog is definitely different from what I’m used to. I’ve mainly worked with object oriented programming. Programming where I would provide the step by step instructions. Prolog seems to have a mind of its own, its own intelligence. You set requirements and it tries to figure it out for you.
I found this quote hilarious!! “You know what I mean; just do it! C and C++ compiler errors such as ‘semicolon expected’ are symbolic of this. If you expected a semicolon, how about inserting one and seeing whether that fixes it?” This is too funny! I thought the same thing going through my C++ class. If the compiler knew that I was missing something, why not put it in for me?!?
Self-Study
Tutorials: http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/pt_framer.html
Support: http://www.tek-tips.com/threadminder.cfm?pid=345
Reference: http://progopedia.com/version/gprolog-1.3.1/
I thought it was pretty cool that Brian was able to use prolog to create a schedule for the team. I remember when my boss was talking to me about the woes of creating the work schedule and that he wished there was a program out there that could do it for him.