UMUC Europe
SearchSearch Contact UsMyUMUC Site MapWebTycho  
INNS 520

INSS 520 Software Structures 
Term 3, 2001/2002
26/27 January; 9/10 and 23/24 February; 9/10 March  
0900-1600


 

Course Information · Course Overview · Course Text · Instructor

Policies · Grading ·  Final Exam · Schedule

 

Course Overview

This course covers the principles involved in the design, evaluation and implementation of programming languages. On this course the student will discover the basic fundamental syntactic and semantic concepts underlying modern programming languages. The primary focus is on understanding concepts, however, as a practical consequence, the student will write several small programs in different languages. In essence we will study a small set of representative programming languages and use them to develop an understanding of how different programming language concepts are implemented by a language designer, and their impact on the programmer.

The principal paradigms we will cover include:

            Imperative Programming

           Object-Oriented Programming

            Functional/Applicative Programming

            Concurrent Programming

Top

 

Course Information

Title:

INSS 520 Software Structures 

Credits: 

3 credits

Prerequisites: 

All undergraduate prerequisites. Recommended:  INSS 510

 

Students will be expected to have Internet access at home or via the University computer labs as information will be exchanged between face to face sessions.

Top

Instructor

Name:

Andy Pickering MSc BA

Profile:

The first thing that struck me about computers way back in the ‘70s was that you could crank them up with a job, go off to the bar, and when you got back the job was complete. When I started out I had to communicate with my computer through punched cards, which must make me very old. Indeed I have seen a lot of changes in my 46 years. 

Before I finish my career I anticipate carrying out intelligent conversations with my computer “who” no doubt will be as amused with the concept of the punched card as the current intake of students. 

Your instructor holds an MSc in Computer Science, a BA in Economics and a Degree level certificate in Business Studies. He has held a variety of jobs outside education including Computer Manager and Software Development Manager providing legal software to many of the biggest companies in the UK, and a few in the US.

He has taught both full and part-time for the University of Maryland since 1984, and also been involved on 3 course development collaborations with Adelphi to provide online teaching materials.

His main interest outside keeping a well stocked table, is renewable energy and he welcomes any dialogue on either subject. 

e-mail:

apickeri@faculty.ed.umuc.edu or inss@prof2u.com

Students are welcome to contact the instructor prior to the start of the course.

Top

 

Course Text            

PLC Text Concepts of Programming Languages, 4th edition.
Robert W. Sebesta. Addison-Wesley, 1999.
ISBN: 0-201-38596-1

Students will be expected to obtain the required text and if possible to have read the first 3 chapters prior to the first meeting.

 

For more helpful resources, see:
http://dir.yahoo.com/Computers_and_Internet/Programming_Languages/
http://directory.google.com/Top/Computers/Programming/Languages/

 

Top

Policies

Late submissions will only be accepted at the discretion of the lecturer, and will be returned with fewer or no detailed comments and possibly a reduced grade. 

Any work that you do for this class is to be your own. Any violation means that the work will not be accepted and further action will be taken.

Attendance and participation is expected. Students should be prepared to spend a substantial amount of time outside of class. This is normally calculated along the lines of  3 hours outside class for every 1 hour in class.

Top

Final Exam

The final exam is comprehensive and is worth 25% of your overall grade. 

Top

 

Grading

Your grade for the course will be determined on the following basis.

 

 Item

 Score  A 90-100 
Midterm  15% B 80-89 
Assignments 60% C 70-79 
D 60-69 
F < 60
Final Exam 25%


There will be 2 examinations for this course. The midterm is worth 15%, is proctored and covers material up to that point in the course. The final exam will be administered in the same manner, is worth 25% of the course credit and will cover the whole of the course material.

 

Top

Tentative Schedule:  

Date Topic Pre-reading Assignment
26 / 27 Jan Sat Introduction   TBA
     History
Visual Basic
Chapter 2   
    Language Design Criteria
Perl
Chapter 1  
   Sun Language Processors    
    Describing Syntax & Semantics
C++
Chapter 3
[Skim ...]
  
    Lexical & Syntax Analysis    
09 / 10 Feb Sat Names, Bindings & Type Checking Chapter 4
    Scope    
    Data Types Chapter 5   
    Expressions & Assignment Statements Chapter 6  
  Sun Statement-Level Control Structures Chapter 7  
    Subprograms Chapter 8  
    Implementing Subprograms
UM Server, Telnet / Unix / FTP.
Chapter 9   
23 / 24 Feb Sat Midterm (Chapters 1-7)    
    Abstract Data TypesVisual Basic Stack Chapter 10
    Object Oriented Programming Chapter 11  
  Sun OOP & C++, OOP & Java     
    C++ Stack
OOP & Smalltalk
    
    Functional Programming Languages Chapter 14  
    Scheme     
09 / 10 March Sat Logic Programming Languages Chapter 15
    Prolog  
  Sun Java Script Presentations      
     Final Exam -- 01:00-16:50 p.m.

 

Top