h1 {font-color:gray-50;} h1 {font-color:gray-50;}
h1
{font-color:gray-50;}
Spring
2005 Test #1 Review Page
CSE3302 !
Dr. Tiernan
Topics to be covered on Test #1 with accompanying notes from Ch. 1 – 5. Test will probably be open book but that is not confirmed at this time.
Language design principles
&nb! sp; 1 - 17 in the front of the textbook
If given the name of the principle,
be able to say what it means in your own words and
give an example
Definition of a programming language as used in the book (in your own words is fine)
Early programming
Diff! iculties and constraints encountered
Be able to describe what a pseudo code was and why they were used
Be able to discuss decisions made in developing a pseudo code
Understand issues with automatic execution of codes
Drawbacks of pseudo codes that were developed and impact of hardware advances on codes
First generation languages
Motivation for development
Goals for development of FORTRAN
Control structures in FORTRAN
Understand activation records for subprograms
Data types in FORTRAN scalar and array
Variable bindings and assumptions in FORTRAN
Rationale for FORTRAN syntax and lexics and resulting issues
Limitations of FORTRAN
Second generation languages
Motivation for development
Goals for development of ALGOL
Benefits of blocks
Dynamic vs. static binding
Strong vs. weak typing
Pass-by-name, pass-by-value, pass-by-reference
Feature interaction
Control structures in ALGOL
Forma! t and style of ALGOL
Limitations of ALGOL - leading to poor adoption
Be able to discuss elegance in language design (and in general design)
BNF
Be able to define English as BNF for small examples (see 148-152)
Third generation languages
Motivation for development
Goals for development of Pascal
D ata types/structures in Pascal
Discuss motivation and implementation of pointers in Pascal
Control structures in Pascal
Passing functions as parameters in Pascal
Limitations of Pascal
General issues in languages
Be able to compare and contrast language design decisions
Be able to write short programs in the three primary languages we discussed (given the tex! tbook as a guide)
Be able to give examples of language features that correspond or contradict various language design principles
Programming language study
Benefits
Philosophical characteristics of
tools
Phenomonolgy
Test will
have some or all of the following characteristics:
multiple choice questions (not more than 10) – typically 1 to 2 points each
short answer question
discussion questions
coding questions which require either
interpreting code or
writing code
matching questions
fill-in-the-blank questions
Questions generally have their point value listed in braces at the end/side of the question
Every test will have at least 10 points worth of extra credit available
Test grades are assigned on a curve based on the range of actual scores on the test, i.e. the highest score on the test (for example, an 89) will be the top of the curve so all scores will be assigned based on where they fall (100 – 90 A, 89 – 80 B, etc.) AFTER the actual score has been divided by the curve. For example, a high score of 89 would give that student an A because 89/89 100 = 100. On the same t! est then, a score of 68 would be curved as 68/89*100 = 76 so that stud ent would get a C (rather than a D for the original 68).
The test will be hard. I write very challenging questions that require you to think all the way through them. A few of the questions will be memory type questions. Most however will require lots of mental effort. Do not get too upset about it – remember EVERYONE is suffering through the same test you are and that everyoneŐs grade will be curved. Check out my website for a few example test questions from last semesterŐs tests. They will give you a sense of how my tests are written.