Assignment Turn-In

Data Structures & Algorithms, Fall 2009


Table of Contents

Introduction

This page describes the turn-in software you will use to turn-in your CS 305 assignments.

It is important to understand that everything involved with turning in your assignment is handled by software, including determining when an assignment is turned in late. It’s important that you follow the directions given below to make sure your assignment is not rejected or delayed. If, after reading and understanding this page, you have any questions about turning in your software, be sure to send your questions to me or bring them up in class.

You can do one of two things with your assignment: turn it in or test it. If you turn in your assignment, the code you turn in will be the basis for your grade on the assignment. If you test your assignment, the code you test will be deleted after the test is completed. Testing your code is not turning it in; you must explicitly turn in your code at least once per assignment.

You may submit your assignment as many times as you want, up until the deadline for that assignment. After the deadline has passed, any further attempts to submit your assignment are rejected without penalty and your most recent assignment submitted is retained. If you have not submitted your assignment by the deadline, you may make a single submission with penalty after the deadline; any further attempts to submit after the deadline are rejected. You may test your assignment as many times as you want, whenever you want.

Your assignment must be turned-in from your Monmouth University account. The mailbox software uses various utilities to verify your identity (to the extent that your identity can be reliably verified with e-mail), and those utilities are usually inaccessible when e-mail is sent from outside the Monmouth domain. The mailbox software rejects any e-mail sent from an account it doesn’t recognize as belonging to a class member.

Assignment Turn-In

The easiest way to turn-in your assignment is to use send-files:
/export/home/class/cs-305/bin/send-files -an (-t | -s) [ files . . . ]
where n is the number of the assignment you're turning in (1 <= n <= @assignment count@). You can find the assignment number at the top of every assignment page, as well as in the syllabus link from which you found the assignment page. Because the cslin machines on the third floor of Howard Hall aren’t configured to send mail, you can’t run send-files on them.

Give the -t option to indicate you’re testing your assignment; otherwise, give the -s option to indicate you’re submitting your assignment. You must give one of -t or -s.

[ files . . . ] is an optional list of files. If a list of files is given on the command line, send-files will send all and only those files given. If no list of files is given on the command line, send-files will send all the C++ and include files it finds in the directory in which it was called. send-files assumes any file ending in the extension .cc, .C, .CC, or .cpp to be a C++ file and any file ending in .h to be an include file.

When you list files on the command line, you should list only those file found in the current directory; you should not list files found in subdirectories or the parent directory of the current directory.

If you list no files on the command line, send-files sends only the files it finds in the current directory, it will not look in other directories for files. Also, send-files will send all files it finds, so make sure the current directory contains only the files you want to send.

The five-minute response time only applies to your Monmouth University mailbox. If you forward your mail somewhere outside Monmouth, such as to Hotmail or Yahoo!, no response-time guarantees can be made, and it can take arbitrarily long to get your reply.

A Turn-In Shortcut

You can reduce the amount of typing you have to do when turning in an assignment by defining an alias to the send-files program. If you’re running ksh or bash as your shell, add the following line to your $HOME/.profile file:

alias send-files=/export/home/class/cs-305/bin/send-files

Typing alias send-files will tell you if send-files is defined as an alias and, if it is, to what it is defined:

$ alias send-file
send-file: alias not found

$ alias send-files
send-files=/export/home/class/cs-305/bin/send-files

$ 

Once you’ve defined the send-files alias, you can type it instead of the full path name:

$ send-files -a1 -s
Files sent:  check.cc check.h main.cc

$ 

If you’ve defined an alias, there’s no need to use ./ as a prefix to execute it; in fact, if you use ./ ksh or bash won’t recognize the alias:

$ ./send-files -a1 -s
/bin/ksh: ./send-files:  not found

$ 

If you want more information on aliases, or if you’re not running ksh or bash as your shell, see the alias section of the man page for your shell.

Turn-In Results

If you’re submitting an assignment, it is unpacked and compiled, and the results are sent back to you as a response. If you’re testing an assignment, it is unpacked and compiled, the results are sent back to you as a response, and then your assignment is deleted.

You should receive a response within five minutes after sending your e-mail. If everything goes well, your response should look something like this:

From: rclayton@monmouth.edu
Date: Wed, 5 Sep 2001 11:35:34 -0400 (EDT)
To: rclayton@monmouth.edu
Subject: Assignment 1 submit results.

$ date
Wed Sep  5 11:35:26 EDT 2001

$ ls
main.cc
tuple.cc
tuple.h

$ g++ -g -c -ansi -pedantic -Wall main.cc

$ g++ -g -c -ansi -pedantic -Wall tuple.cc

$ g++ -g -o count-tuples  main.o tuple.o

$

--

Your e-mail and this reply have been dealt with entirely by software
without human intervention.  You should not assume any person other
than yourself is aware of your e-mail or this reply; in particular, the
person who appears to have sent you this reply is completely unaware of
both your e-mail and this reply.

Points to Remember

Q & A


This page last modified on 22 September 2009.