CS 331 Spring 2013
Requirements for Presentations
Each student in the class
is required to make an in-class presentation
on a computer language.
The presentation is worth 40 points.
- Presentations should be around 15 minutes long.
10 minutes is too short.
If you take more than about 17 minutes,
then I will probably have to cut you off.
- Give your presentation in class on your assigned day,
and cover your assigned language.
- Your presentation should, at some point,
involve a demonstration of the edit-build-execute process
for your language.
- Your presentation should be done, at least in part,
using the projector in the classroom.
- If there are two in your group,
then both need to be involved in the presentation, somehow.
You can split up the time (one person talks first, and then the other)
or split up the jobs (e.g., one person talks while the other types).
You should cover three areas (not necessarily in this order):
- Building and executing a program
- Special features of the language
The specific topics chosen should be tailored to the language.
Here are examples of things you might discuss.
(You do not need to cover them all.)
Where did the language come from?
Who invented it?
Is it popular? Was it ever?
Does it have many versions, or just one?
Is it currently maintained? Very well?
Does it have a recognized standard?
- Overall Characteristics.
What language category does it fit in?
(Functional? Concatenative? Dynamic?)
Does it support any particular programming styles (Object-oriented?)
Is it typically compiled? To machine code? To some interpreted byte code?
JIT or AOT compiled? Or is it usually interpreted?
Is it typically used interactively?
Is it aimed at some particular application
(graphics, sound, web scripting, scientific modeling,
control of automated systems, text processing, etc.)?
2. Building and Executing a Program
Go through the entire process of writing source code
and turning it into something executable.
Then execute it.
The program you execute does not need to be long or complicated.
It may be partially written before your presentation.
Ideally, it should be well suited to the language.
For example, if the language is aimed at graphics,
then your program should make a picture.
3. Special Features of the Language
What is special about this language?
Here are some possible features to demonstrate.
You might choose one (or maybe two)
that are particularly interesting in your language.
- I/O (including graphics, sound, etc.).
- Support for concurrency or paralellism
(threads? SIMD/vector computation?).
- Advanced computational capabilities.
- Support for OOP.
- String handling.
- Support for abstract mathematical operations.
- Error handling.
- Advanced containers.
- Support for reflection.
- Other interesting constructs
(monads, comprehensions, guard objects,
pattern matching, generators, macros,
The presentation will be worth 40 points
(the same as two normal assignments).
For groups of two, both students will receive the same score,
assuming that both are significantly involved in doing the
Criteria for grading are as follows.
- Do you follow the General Requirements above?
- Do you demonstrate knowledge of the language?
- You are not expected to be an expert on the language,
but you should have studied the language sufficiently
to be able to make the presentation.
- Are you prepared to make the presentation?
- It is one thing to know something;
it can be quite another thing to be prepared to tell others
Be organized and ready, knowing what you are going to cover,
with equipment that works,
and all necessary software installed.
- Do you cover the topics I asked you to?
- Are the specific topics covered well suited to your language?
- Do you communicate effectively?
- The goal is to communicate information.
- Your presentation should be done in such a way
that the audience
learns something about the language.
- Be sure your computer can connect to the projector
before your presentation.
The classroom is open all day and unused part of the day.
Go in and try things out.
- It can be difficult to fit the required time slot well.
I suggest preparing more material than you expect
to have to use,
and be ready to skip some of it.
- It is not a bad idea to practice,
particularly if you have not made many presentations before.
- You are not required to use slides (PowerPoint, etc.);
I am not recommending that you do.
But if you do use slides,
then be sure you do not have too many.
I would suggest having at most 4 slides.