Introduction to Programming

How to submit assignments


Guidelines for coding

  1. Do not change the name of any function that you are asked to define. If the question asks you to define a function called mostlyTrue, then make sure that the function you write has the same name. Remember that Haskell is case sensitive. Functions that are wrongly named will not fetch any marks.

  2. If you need any auxiliary functions that are not explicitly mentioned in the question, you are free to use any name that you want for these functions.

  3. Test your code, not only with correct inputs, but also with erroneous inputs. Take care to handle extreme cases like negative indices into a list, infinite recursion etc.

  4. If the syntax of your function is wrong (that is, hugs refuses to load the file containing the function), you will get no marks.

Guidelines for packaging and submitting your code

  1. The solution to Assignment N should be sent in a file called assign-N.hs. If an assignment has multiple questions, submit the answer to each question in a separate file. The solution to question M in Assignment N should be submitted in a file called assign-N-M.hs. For example, the solution to question 4 in assignment 2 should be submitted in a file called assign-2-4.hs.

    Each file should be self contained, so you should add in the same file any auxiliary functions that you need in order to define the function that the question asks for.

  2. When an assignment has multiple questions, combine all the solution files into a single shell archive using the command shar. The general syntax of shar is:

    	  shar file1 file2 file3 ... filen > archive-file
    	

    Here is an example showing how to combine assign-2-1.hs, assign-2-2.hs and assign-2-3.hs in a single archive.

    	  shar assign-2-1.hs assign-2-2.hs assign-2-3.hs > assign-2.shar
    	

    In general, you can use any new name for the archive file, but for submitting assignments, use the name assign-N.shar for the archive containing all files pertaining to Assignment N.

    The command

    	  unshar archive-file
    	

    extracts files from the archive (if you want to check the archive before you send it off). Extracting files with unshar will leave the archive intact, so you will not have to recreate it. Normally, unshar will refuse to overwrite a file, so you should try unshar in a different directory.

  3. Finally, send the archive file to me by email.

  4. Deviations from these guidelines will, in general, cost you marks.


Madhavan Mukund
Last modified: Tue Aug 17 09:40:28 IST 2004