History of program systems and languages

General information

Semester: 2010Vt-

Research school: CIS

Division/group: SaS/PELAB

Owner: Kristian Sandahl

Homepage: http://www.ida.liu.se/~pelab/historycourse/

Course plan: The course is a reading and presentation course about fundamental contributions to the field of program systems and languages over the years. Well-cited papers are normally of high quality, but are often mis-interpreted over the years. The goal of this course is to give PELAB PhD students, and other interested students, a good, source-critical, common understanding of foundations and development of the field.

The course is organized as a seminar series.  The students will bid for, and later be assigned to an article, which they will interpret and present to the rest of the students. The presentation must be well-adapted to the audience and the examiner will give feed-back both on the presentation and the student’s interpretation of the article.

A seminar that gives credit assumes and audience of 5 persons, whereof at least one shall be a PELAB professor. Each student can get 1 hp per semester provided that they are present at at least 5 seminars.

Credits per approved presentation:  1 hp.

To pass the student must have made at least one presentation.

Articles proposed

1.       Aho, A. V., Johnson, S. C., and Ullman, J. D. 1977. Code Generation for Expressions with Common Subexpressions. J. ACM 24, 1 (Jan. 1977), 146-160. DOI= http://doi.acm.org/10.1145/321992.322001

2.       Lam, M. 1988. Software pipelining: an effective scheduling technique for VLIW machines. SIGPLAN Not. 23, 7 (Jul. 1988), 318-328. DOI=http://doi.acm.org/10.1145/960116.54022

3.       Cytron, R., Ferrante, J., Rosen, B. K., Wegman, M. N., and Zadeck, F. K. 1991. Efficiently computing static single assignment form and the control dependence graph. ACM Trans. Program. Lang. Syst. 13, 4 (Oct.1991), 451-490. DOI= http://doi.acm.org/10.1145/115372.115320

4.       McCabe, T.J.; , "A Complexity Measure," Software Engineering, IEEE Transactions on , vol.SE-2, no.4, pp. 308- 320, Dec. 1976
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1702388&isnumber=35895; DOI=
http://doi.ieeecomputersociety.org/10.1109/TSE.1976.233837

5.       Royce, W. W "Managing the Development of Large Software Systems: Concepts and Techniques". In: Technical Papers of Western Electronic Show and Convention (WesCon) August 25-28, 1970, Los Angeles, USA. URL: http://www.cs.umd.edu/class/spring2005/cmsc838p/Process/waterfall.pdf

6.       Weinberg, G.M.; Schulman, E.L. Goals and performance in computer programming, Human Factors, v 16, n 1,  70-7, Feb. 1974. (Kristian will make paper copies.)

Articles presented