CS403/CS503 is a undergraduate/graduate level course in computer programming languages.
include, but are not limited to, the design of programming languages,
and semantics, information binding, strings, arithmetic expressions,
recursion, and extensibility.
Class Language and Environment
This class requires the use of the Scam programming language
under Mac OS or Linux. Scam may work under Windows using Cygwin.
Please sign up for office hours; if I don't see
anybody signed up, I may go off and do something
orphaned baby sloths
rather than sit at my desk.
Here are some useful links...
Here are some sample questions that will be similar to
the ones on the scheduled exams:
The Programming Languages Forum
for this class can be found at
The Beastie Forums
You are required to sign up for this forum using your crimson email
Attempts to use some other email address will be rejected.
If you have a question about this class, you should ask it there.
If someone asks a
reasonable question and you know the answer, please
respond. Always remember to be polite and respectful when you post.
Please check this page daily, as we will use this forum for any
You may not post more than 1 line of Scam code on this webpage.
If you want help on figuring out an error, you may post the
error trace and the line of code that caused the error (if it
doesn't give the answer away).
Failure to follow this rule, whether intentional
or not, may result in immediate suspension from the
Other infractions that will result in suspension include,
but are not limited to:
You need to sign up for the forum
during the first week of class.
You must use your crimson email address or have some other information
in your profile that identifies you as an Alabama student. Otherwise,
your request to join the forum will be rejected.
you can't post a question or
comment (e.g. you've been banned), send an email to your instructor.
Asking for the submit password.
Asking a question that cannot be answered.
An example: posting messages of the sort “My code is not working.
What is wrong?”
WITHOUT giving the actual error in your post.
Posting non-programming-languages-related information.
Carrying on a personal conversation that has no benefit
to the majority of programming languages students.