University of Toronto - Spring 1999
Department of Computer Science

CSC 324 - PROGRAMMING LANGUAGES

Old Announcements


5 February: Topics on the midterm

The questions on the midterm will be selected from the various lecture topics, including:
Parameter passing mechanisms
    pass by value
    pass by reference
    pass by value-result
    (pass by name will NOT be on the test)

Scoping: static vs. dynamic

Object oriented programming and design, with a Java focus

    OO topics include, but are not necessarily limited to: inheritance,
    polymorphism, encapsulation, classes and interfaces, the Java memory
    model, packages, visibility modifiers, static vs. non-static, shadowing
    and overriding, etc.

Grammars
Please check back by Sunday at noon to see if I've forgotten anything.

4 February: Silly Us

As several of you have pointed out, the handout misstates the case about importing csc324.clothes. Rather than completely deleting the line, you can replace it with "import csc324.clothes.ClothingInventory;".

Note also that you aren't required to do this; we just wanted to point out that you've removed any need for the Driver to know anything about the Clothes class and its subclasses.


4 February: Drop Box for 1B handin

To hand in your assignment, drop it off in the drop box labeled "CSC148 Morning". The drop box is on the south side of the second floor of Sanford Fleming, at the base of the passageway across to the Pratt Building.

31 January: ArrayEnumeration

Several of you have asked about using a Vector v in ArrayEnumeration, and returning v.elements(). This is not allowed: you cannot use a Vector (or anything else that has an elements() method) inside ArrayEnumeration. You will get zero on this part if you do.

29 January: 'submit' for 1b

To submit your classes for 1b, use the following command in CDF:
    submit -N b1 csc324h csc324/*/*.java

29 January: Memory model, small bug in E1.ps and E2.ps

In the examples for the Java memory model (see below under "Quiz 3"), the "this" and "super" pointers from Y's part were not drawn. That has been fixed.

29 January: ArrayEnumeration.java

The handout doesn't explicitly state that you should hand in ArrayEnumeration.java, but of course you should, both electronically and on paper.

29 January: Shar files on Windows

To unshar the files from DOS, follow these instructions(provided by a student):
   A copy of unshar.zip is located @
   
   	ftp://garbo.uwasa.fi/pc/unix/
   
   To unshar the assignment do the following:
   
   1.  unzip unshar.zip with your favourite zip utility..
   
   2.  rename 1b.shar  1b.sh  
       (my system at home doesn't handle long file names)
   
   3.  unshar 1b.sh

28 January: Quiz 3

Quiz 3 will be on the Java memory model presented in class on 26 January. Due to popular demand, I have written up an explanation of it to help you study.

25 January: Another Ray Ortigas OH

Ray Ortigas will be having another office hour on Friday, 29 January, from 2:30pm-3:30pm, this time in SF 3207. (The third floor of Sanford Fleming, sort of across from the grad office.)

23 January: JDK instructions

The instructions for using the JDK have been revised and the link should now work.

23 January: 6:10 sharp!

To remind everyone, the assignment is due Tuesday at 6:10pm sharp in tutorial. All the TAs will have red pens, and will prominently mark any assignment that is turned in after 6:10pm, thus causing a loss of a grace day. Be sure to electronically submit before then, too, because that would also trigger the loss of a grace day -- we will be checking the timestamps on the files.

22 January: TA web pages

Just to point it out to everyone, all three Java TAs have web pages for this course. These pages contain examples from tutorial, and more useful stuff. If you want to see an example using Vectors, for example, click here. Links to the TA pages are on the main 324 page.

22 January: Quiz 3

Some of you still seem rather intimidated by the workload for 1A. Rather than burden you with too much, we will postpone quiz 3 to a later date: there will be no quiz in the coming tutorial.

Note that you must still go to tutorial to hand your assignment in, by 6:10pm next Tuesday.


22 January: Sunday office hour

Paul Gries will be having another office hour on Sunday, noon-2p.m., in the CDF lab.

20 January: Assignment 1A: Style

Here are some clarifications on style rules that you should follow in this assignment:

20 January: Assignment 1A: Update to the JWS Packages instructions

The instructions have been updated; take a look to see the fixes, and please let us know if it either does or doesn't help.

20 January: Assignment 1A: 4. find out how many of a particular item there are

Questions: How specific do we have to be? What uniquely identifies an item?
Answers: 4. refers to the bottom classes in the hierarchy; the actual types of clothes that can be created. Thus, we want to be able to find out how many tshirts, shorts, and so on are are currently in the inventory. Nothing more specific! We DON'T want to find out how many large black cotton $12 tshirts there are.


20 January: Assignment 1A: 5. find out how many of the intermediate classes there are

Question:What are the intermediate classes wanted?
Answer: This isn't set in stone -- I've seen several good suggestions, including a few I hadn't thought of. The various types of clothes can be grouped in several different ways; for example, what do tshirts, casual shirts, sweaters, and dress shirts have in common that shorts, dress pants and jeans do not? That's one way to classify them. There are several others. One clarification: 5. is asking for how many items of a particular intermediate class there are, NOT how many intermediate classes there are.

20 January: Assignment 1A

Some of you have trouble reading input -- you get Exception problems when you try to compile. Try doing this every time you want to read a line of input:
        String line;
        try {
            // Read a line of input all the way to the RETURN.
            line = in.readLine();
        } catch( Exception e ) {
            e.printStackTrace();
        }
It's a bit ugly, but you won't have to deal with headaches so much.

20 January: Assignment 1A

If you're overwhelmed and want some hints on how to get going, click here.

18 January: Quiz 2

The second quiz, held tomorrow in tutorial, is on the parameter passing mechanisms.
16 January: First half of 1A

Some of you are a bit overwhelmed by the assignment. Here's a strong suggestion: create a class TShirt with absolutely nothing in it, not even a constructor, and write a very small main program that just creates one TShirt, without any user interaction. Then build up from there -- try adding a cost field to to TShirt, add a constructor, and see what happens. Then see what happens when you do System.out.println() on your TShirt and the cost of the TShirt. Once you've got the small bugs out of the way, the rest of the program won't seem so daunting!

Another suggestion: don't worry about the details. If you can't get something to work, like making sure a price is valid, skip that bit and go on to the next.

That's the best way to get partial credit. Even if you only get your hierarchy working, without ever dealing with input and output, you'll get some marks. So get the clothes hierarchy started, and write a simple main program that creates one of each type of clothing, and *then* work on the Driver and any inventory classes you need.


13 January: First half of 1A

For those of you who haven't noticed, the first half of assignment 1A is available from the previous page.

8 January: Tutorials

The tutorial name breakdown is now available. Check the main course page to find out where to go.

7 January: Quiz 1

Quiz 1, held next Tuesday at 6:10pm (the beginning of tutorial) will cover the use of references (pointers). Here's an example to help you. (If you thoroughly understand that example, you will pass the quiz.)

If you have trouble with it, trace it through in a debugger. I can't emphasize that enough. Debuggers are your friend; take time to learn one.

To help even more, do the first two Online homeworks.


3 January: Tutorials

There are no tutorials in the first week.

Back to the csc324 home page.