TEXTBOOK: There is no
textbook for this course. The reason is that none of the textbooks that
I've been able to find provide adequate coverage for a survey course of this
kind. This particular course was originally structured around the book
Advanced Programming Language Design by Raphael A. Finkel. (1996)
Addison-Wesley and was taught at the graduate level at James Madison University.
The course as taught in Interterm is less about the internal details of the
languages as it is about the paradigms they represent and an introductory
experience programming in the many different paradigms.
Grading is based on
satisfactory completion of all assigned work. 10% attendance 20%
Progress Reports 30% Labs 40% Tutorial/Lab/Demo/Presentation of
GURU Language.
Attendance: Students are
expected to attend all lectures and all laboratories and turn in all
assignments executed neatly and promptly.
See
Generic Policies for further information.
Unix : Unix is of course an Operating System and not
a language. However, since Unix is an important environment for learning
many programming languages, students might be interested in the following links.
Unix Tutorial
(nice reference page)
Unix Tutorial Based on Cal Tech’s
Programming On
Unix Systems
http://www.engin.umd.umich.edu/CIS/course.des/cis400/
// the Language Guide – interesting entry point for lots [40] of languages
http://en.wikipedia.org/wiki/Programming_language
// Wikipedia on Programming Languages
http://en.wikipedia.org/wiki/Timeline_of_programming_languages
// Timeline of programming languages with links
http://www.cs.waikato.ac.nz/~marku/languages.html
// some opinions about programming languages
http://dmoz.org/Computers/Programming/Languages/
// Links about Programming Languages
http://www.cmcrossroads.com/bradapp/links/prog-langs.html
// Brad Appleton’s Programming Languages Link Page
http://home.nvg.org/~sk/lang/lang.html
// List of Programming Languages with resources
http://www.brics.dk/JWIG/
// JWIG Project page High Level Web Services ??
Burks Language Resources this link points to an on-line version of the Burks (Breighton University Resource Kit for Students) which was maintained for many years and made available as a set of CDs. It used to be assigned material for this course and is still very useful.
Assembly --
C- - : C-
- Homepage
D The D Programming Language
FORTH-- Forth
Tutorial Another
Forth Tutorial Forth
Home Page pForth
Site SwiftForth
Home
The Evolution of
Forth LeoBrodie's
Starting Forth
Other Threaded Interpreted Languages include
PostScript
and Onyx
And don't forget
Ghostscript Until
-- Forth in C
A Short Note
About Forth from UVA
Postscript
Tutorial
MistyBeachForthApplet
Saon's Forth Tutorial
BASICs -- 150
Versions of Basic Listed Chipmonk
Basic Home Page
ICON -- tutorial
from New Mexico Tech Son
of Snobol -- text processing to the max
Programming Language -- here
All about Icon
LISP -- tutorial
from Walla Walla College Mother
of all Functional Languages
Scheme
Tutorial The definition of Scheme R5RS
Another
Scheme Tutorial
MIT Scheme MIT
Scheme Lab How
to Use Edwin MIT
Scheme Users Manual
ML --
A Gentle
Introduction to ML Programming
In Standard ML
A
Fun ML Self-Test Standard ML of
New Jersey
Introduction
to the ML Programming Language
Programming
In Standard ML
ML Tutorial On-Line
ML Tutorial
MATHEMATICA -- Mother of all Mathematical Tutorial Lists
Kevin Perry
at Princeton
Mark
Johnson's Tutorial Calculus
Self-Tutoring Sean
at CalTech
MATLAB -- Companion MatLab Tutorial to Mark
Johnson's Mathematica Tutorial
PHP -- PHP
Tutorial PHP
Downloads Another
PHP Tutorial
PROLOG -- John
Fisher's Prolog Tutorial
Programming with Logic -- a truly
different paradigm
On-Line
Guide to Prolog Programming
PYTHON -- Python
Home Page Download version 2.4
One-Day-Of-IDLE-Toying
IDLE-Doc
Guido'sTutorial
IntroductionToTkinter
Over300PythonTutorials
REXX -- Tutorial Rexx Tutorial
Object Rexx Is Here
RUBY -- Tutorial with Interpreter See it Run As
You Learn About It! Another Ruby
Interpreter
Downloadable Tutorial
rubylearning.com
Online Book from the
Pragmatic Programmers
RubyGarden
PoignantGuideToRuby
LearnToProgramRubyTutorial
ExcellentBeginnersTutorial
RubyApplicationArchive
SQL -- Tutorial
On the Web
A Gentle
Introduction to SQL Introduction
to SQL
SQL
Course On-Line More Advanced
SQL-On-Line First
SQL-Tutorial
Interesting
Downloadable Tutorial Access
Data Base Tutorial
Tkl/Tk
-- Tcl Tutorial
Another
Tcl/Tk Tutorial
Still
Another Tcl/Tk Tutorial Tcl-Wiki
Tcl-Sources
Tcl-Overview
Tcl Developer Exchange
Relational Data Bases -- The
Relational Algebra
PERL -- Tutorials from the Interesting Page
Perl Downloads
An
excellent
Perl tutorial another fine Perl
tutorial
Picking Up Perl, a Freely Redistributable Perl Tutorial Book
A Perl Resource
Site
CPAN-ComprehensivePerlArchiveNetwork
Declarative Languages -- A Declarative Language is not operational, i.e. its semantics are about what it means and not what it does. Declarative languages have a wide use in knowledge representation and document representation.
SGML-- Expressing
Yourself In SGML On
SGML and HTML
HTML -- HTML Tutorial
XHTML -- XHTML Tutorial
NewYorkPublicLibraryXHTMLGuide
CSS (Cascading Style Sheets):
NYPL-CSS Guide
W3SchoolsCSS
RealWorldStyle
IntegratedWebDesign
XML --
A Gentle Introduction to XML
Another Link
CycL -- Writing Ontologies
Can computers represent common sense
knowledge? Knowledge Representation, challenge for the future.
ETD -- The Electronic
Thesis and Dissertation Markup Language
Constraint Programming
On-line Guide to Constraint Programming
Wikipedia on
Constraint Programming
Challenge: If you don't like the programming languages and paradigms in
the list above, your challenge is to provide me with extensions to this page
which can be used to extend it and make it more useful for those that come later
-- that idea is called PAY FORWARD!