PROGRAMMING LANGUAGES
cod. 04138

Academic year 2009/10
3° year of course - First semester
Professor
Academic discipline
Informatica (INF/01)
Field
Formazione informatica
Type of training activity
Characterising
32 hours
of face-to-face activities
4 credits
hub:
course unit
in - - -

Learning objectives

Interaction with the computer takes place in a variety of ways: when the <br />
behaviour to be obtained is simple or already coded, it is possible to use simple and intuitive formalisms. For more sophisticated types of communication, formalisms with a strong expressive power must be applied. Programming languages offer an extensive range of notations for the specification of the behaviours required of a computer. The study of programming languages is fascinating and also important. In the first place because the study of the <br />
fundamental principles (values, links, control, abstraction, <br />
encapsulation, objects, modules, non-determinism, types, ...) and their realisation in the various languages (C, C++, Fortran, Pascal, OCaml, Java, Python, ...) help students understand what really counts in the choice of a programming language, above and beyond the "fashion" of the moment.. In the second place, because the comparative study of languages leads to a refining of ability and programming style no matter what languages are given major weight in a given moment of our professional life. Last but not least, more often than we realise, the solution to a computer science problem is arrived at through the definition of a language and the realisation of a "machine" that interprets it.

Prerequisites

<span class="datiriga">Fundamentals of computer science, Fundamentals of programming.<br />
</span>

Course unit content

<p>Description of programming languages. <br />
Names and environment. <br />
Memory management. <br />
Control structures and abstractions. <br />
Data structures and abstractions. <br />
 </p>

Full programme

- - -

Bibliography

<table width="100%" border="0" class="DETAIL">
<tbody>
<tr valign="top">
<td width="80%">M. Gabbrielli e S. Martini.<br />
Linguaggi di programmazione: principi e paradigmi, Prima edizione. McGraw-Hill Italia, 2006.<br />
ISBN: 88-386-6261-4.<br />
</td>
</tr>
<tr>
<th> </th>
<th align="left"><hr width="100%" size="2" noshade="noshade" />
</th>
</tr>
</tbody>
</table>

Teaching methods

Individual or group projects followed by an interview. Alternatively, an oral examination

Assessment methods and criteria

- - -

Other information

- - -