Introduzione

Nella prima lezione (1/X/07), abbiamo seguito l'evoluzione dei linguaggi di programmazione, dalle origini (Fortran, COBOL e ALGOL) ai linguaggi moderni (C, C++, Java e Python), accennando anche ai linguaggi non legati al modello di Von Neumann (LISP, Prolog).

Abbiamo inoltre introdotto i concetti di sintassi e semantica di un linguaggio di programmazione, formalizzando la semantica attraverso espressioni regolari e grammatiche libere dal contesto, secondo lo schema sviluppato da Backus per l'ALGOL, e poi adottato per la specifica di tutti i linguaggi di programmazione, ovvero la forma normale di Backus-Naur (BNF).

Introduction

A short history of programming languages, from the origins (Fortran, COBOL and ALGOL) to modern languages (C, C++, Java and Python). While these languages cover mostly the Von Neumann paradigm, other languages do not (LISP, Prolog).

In the first lecture, we have introduced the elements of a programming language. More formally, we can group them into regular expressions (modelling the “words” of the language) and context free grammars (modelling the syntax of the language), following the scheme developed by Backus for ALGOL, and later adopted by most language developers as the Backus-Naur Form (BNF).