Fondamenti dei linguaggi di programmazione
|
|
|
- Agnello Miele
- 9 anni fa
- Просмотров:
Транскрипт
1 Fondamenti dei linguaggi di programmazione Aniello Murano Università degli Studi di Napoli Federico II 1 Informazioni Generali sul Corso Esame: Fondamenti dei linguaggi di programmazione (nel vecchio ordinamento: Semantica dei linguaggi) Libri di testo: Glynn Winskel La semantica Formale dei Linguaggi di Programmazione the MIT Press, Traduzione italiana a cura di Franco Turini Approfondimenti: John C. Mitchell, "Foundations for Programming Languages", MIT Press, Benjamin Pierce. Types and Programming Languages, MIT Press, Robin Milner, Communication and Concurrency, Prentice Hall, 1989 Modalità d esame: Una prova scritta seguita da una prova orale. Orario lezioni: Lunedì 11:00 13:00 e Giovedì 16:30 18:30, aula B7 2 1
2 Informazioni sul Docente Prof. Dr. Aniello Murano, ricercatore universitario presso la Sezione di Informatica del Dipartimento di Fisica Università degli Studi di Napoli, Federico II Sito web: Ricevimento: Fino al 28 Ottobre, Venerdì 14:00-16:00, 2Ma10 (da usarsi solo in casi di effettiva necessità) Altre informazioni sul docente: Laurea in Scienze dell informazione e Dottorato di ricerca in Informatica presso l Università degli Studi di Salerno. Visiting Student per un anno presso la Rice Univeristy di Houston(Texas - USA). Post-doc per un anno presso la Hebrew University di Gerusalemme (Israele) Altri insegnamenti: Lab. di ASD - Corso di Laurea in Informatica, Facolta di Scienze MM.FF.NN. - Università di Napoli Federico II. Interessi di ricerca: Teoria degli Automi e dei Linguaggi Formali. Logiche Temporali discrete e real-time, Metodi Formali per la Specifica, la Verifica e la Sintesi di sistemi hardware e software, Model Checking, Teoria dei Giochi. 3 Obiettivi del Corso L obiettivo del corso è quello di fornire i modelli formali necessari per capire il comportamento di un programma e ragionare su di esso. Vengono dunque presentate le nozioni matematiche, le tecniche ed i concetti sui quali si fonda la semantica formale dei linguaggi di programmazione. 4 2
3 Che cosa questo corso non è Un corso su un particolare linguaggio di programmazione Un corso sulla costruzione di un particolare compilatore o sulla costruzione di un parser Si presuppone la conoscenza da parte degli studenti del concetto di grammatiche Un corso per confrontare i vari linguaggi di programmazione Un corso sui vari paradigmi di programmazione (funzionali, orientati agli oggetti, logici, concorrenti, ecc.) 5 Programma del corso (unofficial) Semantica operazionale del linguaggio imperativo IMP (Cap. II, pag 15-32) ; Induzione ben fondata (Cap. III-IV, pag 33-60); Ordinamenti parziali completi, funzioni continue e teorema di punto fisso (Cap. V, pag 79-83); Semantica denotazionale del linguaggio imperativo IMP e corrispondenza con la semantica operazionale (Cap. V, pag 65-78); Linguaggi con tipi di ordine superiore: tipizzazione, semantica operazionale eager e lazy, semantica denotazionale lazy (Cap.XI, pag e pag ); Nondeterminismo e parallelismo: i linguaggio CSP e CCS (Cap. XIV, pag ); Nozioni di equivalenza per CCS: definizione di LTS (Labelled Transition System), equivalenza a tracce, simulazione, bisimulazione (forte e debole). 6 3
4 Prerequisiti al corso Background in linguaggi di programmazione Esperienza di programmazione in differenti linguaggi di programmazione (per esempio C, Java, Lisp, Prolog, ect.) Background in logica matematica Abilità nello scrivere e leggere prove formali (per esempio, dimostrazioni per induzione) Una certa predisposizione ai ragionamenti formali. 7 Lo stato dell arte Quello dei linguaggi di programmazione è senza dubbio uno dei campi più vecchi, fondamentali e ferventi dell informatica Ancora oggi, i linguaggi di programmazione sono in continua evoluzione I linguaggi di programmazione sono solitamente adottati per riempire dei vuoti: Per implementare un applicazione che prima era difficile o impossibile da implementare Per eseguire programmi su una nuova piattaforma Istruire nuovi programmatori comporta costi notevoli I linguaggi più largamente utilizzati sono raramente sostituiti I linguaggi più popolari con il passare del tempo si arrugginiscono Al contrario, nuove applicazioni e nuove piattaforme rappresentano interessanti opportunità per innovazioni. 8 4
5 Perché ci sono così tanti linguaggi Molti linguaggi furono costruiti per specifiche applicazioni I domini di applicazione hanno solitamente bisogni differenti (e conflittuali) Per esempio: Intelligenza Artificiale: computazione simbolica (Lisp, Prolog) Computazione Scientifica: grande performance (Fortran) Computazione Commerciale: generazione di report (Cobol) Programmazione di Sistemi: accesso a basso livello (C) Castomizzazione: scripting (Perl, Javascript) Sistemi distribuiti: computazione mobile (Java, C++) e altri (Latex, AWK, Q, Hancock, ) 9 Paradigmi di Programmazione Imperativo, procedurale Fortran, Algol, Cobol, C, Pascal Funzionali (principalmente liberi da assegnamento) Lisp, Skeme, ML, Haskell Orientato agli oggetti C++, Java, Visual Basic, Simula, Smalltalk, Eiffel, Self Logici Prolog, lambda-prolog Concorrenti Fortran
6 Cosa rende efficiente un linguaggio? Una definizione sulla misura della scienza di Lord Kelvin ( ): quando puoi misurare ciò di cui stai parlando e lo puoi esprimere in numeri, tu conosci qualcosa di ciò, ma quando non puoi esprimerlo in numeri, la tua conoscenza è povera e insoddisfacente; quello potrebbe essere l inizio della conoscenza, ma si è lontani dall aver elevato quel concetto allo stadio della scienza. Semplicità (nella sintassi e nella semantica) Facilità di lettura e scrittura Familiarità Sicurezza Indipendenza dalla macchina Efficienza (di compilazione ed esecuzione) 11 Efficienza di un linguaggio Spesso, gli obiettivi precedenti sono in conflitto tra di loro: I controlli di sicurezza costano in termini di tempo di compilazione o esecuzione Sicurezza e indipendenza dalla macchina potrebbero vietare operazioni efficienti di basso livello. Alcuni tipi di sistema possono restringere lo stile di programmazione negli scambi di informazione per rafforzare le garanzie di sicurezza Solitamente i compromessi sono difficili da trovare Dunque, progettare un buon linguaggio di programmazione è davvero difficile! 12 6
7 Valutare le caratteristiche di un linguaggio Un concetto o un costrutto di un linguaggio può essere studiato nel contesto di un reale e quindi di un grande linguaggio. Spesso però è più semplice studiare una caratteristiche di un linguaggio studiando un linguaggio minimo che ingloba quella caratteristica. Questo permette Una Sperimentazione semplificata dell intero linguaggio Una più profonda e precisa comprensione delle caratteristiche del linguaggio 13 Un approccio formale di Specifica Un approccio formale nella progettazione di un linguaggio consiste nella sua definizione rigorosa tramite una sintassi e una semantica Esistono tre approcci alla semantica dei linguaggi: Semantica operazionale Definisce la machina astratta che interpreta i programmi Utile per implementare un compilatore o un interprete Di basso livello, ma flessibile Semantica Denotazionale Assegna denotazioni, o significati, ai programmi Usa oggetti matematici per descriver i comportamento dell input e dell output Semantica assiomatica Usa regole logiche per ragionare sul comportamento dei programmi Dato un programma, degli stati iniziali e dei dati di input, fornisce l insieme degli stati finali raggiungibili dopo l esecuzione Utile per provare la correttezza di un programma 14 7
8 Break Time 15 Un semplice linguaggio di Espressioni Aritmetiche Sintassi e Semantica operazionale 16 8
9 Sintassi di ARITHM Sintassi concreta: Le regole che permettono di esprimere i programmi come stringhe di caratteri Utile per gli obiettivi di progettazione Familiarità, leggibilità, velocità di compilazione Gli stessi concetti possono essere espressi in molte sintassi concrete, non tutte ugualmente efficienti Esistono comunque solidi principi per le sintassi concrete Automi finiti e grammatiche context-free Generatori di parser automatici 17 Sintassi astratta Noi definiamo la sintassi del linguaggio ARITH rispetto ad un albero di sintassi astratto (parse tree). L albero di sintassi astratto è indipendente dalla sintassi concreta del linguaggio e meglio si adatta a manipolazioni formali e algoritmiche Una sintassi astrata per ARITH è e::=n dove n è un letterale intero (n {0,1,2,..}) e 1 + e 2 somma e 1 * e 2 moltiplicazione Dove ::= significa può essere e significa oppure 18 9
10 Analisi di ARITHM Questioni da risolvere: Qual è il significato di una data espressione di ARITH? Come valutare una data espressione di ARITH? Come sono collegati valutatore e significato di una espressione? 19 Una semantica Operazionale Specifica come le espressioni dovrebbero essere valutate È definita in base alla particolare forma dell espressione valutata: n si valuta n n è una forma normale e non necessita di essere valutata ulteriormente e 1 + e 2 si valuta n se e 1 si valuta n 1 e 2 si valuta n 2 ed n è la somma di n 1 e n 2 e 1 * e 2 si valuta n se e 1 si valuta n 1 e 2 si valuta n 2 ed n è il prodotto di n 1 e n
11 Formulazione Alternativa Notazione: e n significa che e si valuta in n Questa è una valutazione, un affermazione sulla relazione tra e ed n. Questa notazione permette di riscrivere le regole precedenti in modo più conciso n n e 1 + e 2 n se e 1 n 1 e 2 n 2 ed n è la somma di n 1 ed n 2 e 1 * e 2 n se e 1 n 1 e 2 n 2 ed n è il prodotto di n 1 ed n 2 21 Semantica operazionale come regole di inferenza n n e 1 n 1 e 2 n 2 n è la somma di n 1 e n 2 e 1 + e 2 n e 1 n 1 e 2 n 2 n è il prodotto di n 1 e n 2 e 1 * e 2 n Interpretazione: sopra la linea implica sotto la linea 22 11
12 (3+5)*(4+2) in cosa si valuta? Esercizio 23 12
LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 LINGUAGGI DI ALTO LIVELLO Barriera di astrazione Fortran Cobol Basic Pascal Python C
LINGUAGGI DI ALTO LIVELLO
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
Linguaggi di programmazione e astrazione
Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo
Il linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani ([email protected])
Lez. 5 La Programmazione. Prof. Salvatore CUOMO
Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente
Introduzione alla programmazione. Walter Didimo
Introduzione alla programmazione Walter Didimo Programmi Un programma è una frase (anche molto lunga) che descrive delle azioni che devono essere svolte da un calcolatore La frase deve essere dettagliata
Logica per la Programmazione Corso di Laurea in INFORMATICA a.a. 2016/2017
Logica per la Programmazione Corso di Laurea in INFORMATICA a.a. 2016/2017 Andrea Corradini e Francesca Levi Dipartimento di Informatica E-mail: [email protected], [email protected] A. Corradini
FONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia [email protected] A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
Corso di Applicazioni di Intelligenza Artificiale LS. Prof. Paola Mello Anno accademico 2008/2009
Università degli Studi di Bologna Facoltà di Ingegneria Corso di Applicazioni di Intelligenza Artificiale LS Corso di Laurea in Ingegneria Informatica Prof. Paola Mello Anno accademico 2008/2009 CONTENUTI
Linguaggi di alto livello, compilatori e interpreti
Linguaggi di alto livello, compilatori e interpreti Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Il punto della situazione STATO DATI
Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
Programmazione C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato [email protected] www.cs.unicam.it/massimo.callisto LEZIONE
Linguaggi di Programmazione
Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
Introduzione alla Programmazione. Giselda De Vita
Introduzione alla Programmazione Giselda De Vita - 2015 1 Sulla base dell ambito in cui si colloca il problema da risolvere, è opportuno adottare un linguaggio piuttosto che un altro: ² Calcolo scientifico:
Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco
Università di Bologna Facoltà di Ingegneria C.d.L. in Ing. Gestionale Fondamenti di Informatica T-1 (A-K) A.A. 2015/16 Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco 1 Obiettivi del corso Il corso
DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione
DAGLI ALGORITMI AI LINGUAGGI Linguaggi di Programmazione E` una notazione con cui e` possibile descrivere gli algoritmi. Programma: e` la rappresentazione di un algoritmo in un particolare linguaggio di
Le aree dell informatica
Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione
Che cos e l Informatica Scienza dell elaborazione dell informazione Informatica generale non si riduce all utilizzo di strumenti (e.g. linguaggi di programmazione e basi di dati); si occupa del trattamento
REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU
REGISTRI D'ESAME Con "" si intende la Triennale del Nuovo Ordinamento (Legge 270) Con "" si intende la Specialistica di due anni del Nuovo Ordinamento (Legge 270) CODICE ESAME CORSO DI LAUREA NOME DEL
1: Linguaggi di Programmazione
1: Linguaggi di Programmazione paradigmi linguistici, costrutti semantica operazionale implementazione, strutture a tempo di esecuzione testi di consultazione T.W. Pratt & M.V. Zelkowitz, Programming languages.
Algoritmi e Linguaggi
Algoritmi e Linguaggi Programmi e linguaggi Un calcolatore è solo un esecutore rapidissimo di istruzioni Un programma è un insieme di istruzioni codificate in un opportuno linguaggio 2 / 21 Linguaggi e
Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
Linguaggi di programmazione
Parte 2 Linguaggi di programmazione Livello di Astrazione per la Codifica di un Algoritmo Si può risolvere un problema senza prima fissare un insieme di azioni, di mosse elementari possibili per l elaboratore?
Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni
Introduzione a Java IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Linguaggi di programmazione Ogni programma viene scritto utilizzando un linguaggio specializzato, formale e comprensibile da
Il calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
INTELLIGENZA ARTIFICIALE (elementi) 6 cfu
INTELLIGENZA ARTIFICIALE (elementi) 6 cfu Prof.ssa Stefania Bandini Dott. Alessandro Mosca Dipartimento di Informatica, Sistemistica e Comunicazione Università di Milano-Bicocca www.lintar.disco.unimib.it
Algoritmi e Strutture Dati
Introduzione al Corso Emanuela Merelli Università di Camerino 4 ottobre 2016 Struttura del corso Il corso consiste di 42 ore di lezione 2 ore di ricevimento settimanali Il corso viene valutato in 6 CFU
Corso di Laurea in Informatica Basi di Dati a.a
Corso di Laurea in Informatica Basi di Dati a.a. 2010-2011 Laboratorio 31B Esercitatori : Ing. G. Laboccetta Dott.ssa V. Policicchio Presentazione delle lezioni di laboratorio: finalità del corso modalità
Introduzione al Calcolo Scientifico
Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli
Fondamenti di Programmazione
Fondamenti di Programmazione (con linguaggio di riferimento C++) Gianfranco Rossi Università di Parma Dip. di Matematica e Informatica 43100 Parma (Italy) [email protected] Indice 1 Introduzione
UNIVERSITA DEGLI STUDI DI MILANO-BICOCCA FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI
UNIVERSITA DEGLI STUDI DI MILANO-BICOCCA FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI Manifesto degli Studi A.A. 2001-2002 CORSO DI LAUREA IN INFORMATICA DIPLOMA UNIVERSITARIO IN INFORMATICA (Vecchio
32 Laurea magistrale in Informatica Scienze
32 Laurea magistrale in Informatica Scienze Il corso prepara alle professioni di (codifiche ISTAT): Analisti e progettisti di software Analisti di sistema Analisti e progettisti di applicazioni web P I
AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
Cosa è l Informatica?
Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore
Concetti Introduttivi. Il Computer
Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta
Simulazione. D.E.I.S. Università di Bologna DEISNet
Simulazione D.E.I.S. Università di Bologna DEISNet http://deisnet.deis.unibo.it/ Introduzione Per valutare le prestazioni di un sistema esistono due approcci sostanzialmente differenti Analisi si basa
Corso Programmazione
Corso Programmazione 2008-2009 (docente) Fabio Aiolli E-mail: [email protected] Web: www.math.unipd.it/~aiolli (docenti laboratorio) A. Ceccato, F. Di Palma, M. Gelain Dipartimento di Matematica Pura
Corso di. Fondamenti di Informatica T
Università degli Studi di Bologna Facoltà di Ingegneria Corso di http://lia.deis.unibo.it/courses/fondt-1011-elt Corso di Laurea in Ingegneria Elettrica Prof. Rebecca Montanari Anno accademico 2010/2011
algoritmi e strutture di dati
algoritmi e strutture di dati introduzione al corso maurizio patrignani roberto de virgilio algoritmi e strutture di dati nuovo ordinamento (d.m. 509/99) laurea in ingegneria informatica 2 anno 5 crediti
Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1
Alfonso Miola Dispensa 1 Gennaio 2001 1 Contenuti K Corso di K Programma del corso K Materiale didattico K Organizzazione didattica K Attività di laboratorio K Prove di valutazione ed esami 2 Corso di
Fondamenti di Programmazione
Fondamenti di Programmazione Prof. Mauro Gaspari: [email protected] Tutor: Dott. Davide Guidi: [email protected] Corso Coordinato con: Laboratorio di Linguaggi di Programmazione Prof. Angela Spighetti:
Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...
Sommario PREFAZIONE...XI Aggiornamenti e novità... xi Lo scopo di questo libro... xii Diagramma delle dipendenze... xii La metodologia di insegnamento... xiii Panoramica sul libro... xvi Ringraziamenti...
FONDAMENTI DI INTELLIGENZA ARTIFICIALE-M
FONDAMENTI DI INTELLIGENZA ARTIFICIALE-M A.A. 2010/2011 Docente: Prof. Paola Mello e-mail: [email protected] Tel: 051 2093818 Server web del modulo: http://www.lia.deis.unibo.it/courses/ai/fundamentalsai2010-11/
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente
orario ricevimento via e-mail: orario ufficio risposta entro 3 giorni
FACOLTA : INGEGNERIA CORSO DI LAUREA: INFORMATICA INSEGNAMENTO: CONTROLLI DIGITALI Modulo 1 NOME DOCENTE: Prof. Giovanni Fedecostante indirizzo e-mail: [email protected] orario ricevimento
Corso di Fondamenti di Informatica e Laboratorio T-AB
Università degli Studi di Bologna Facoltà di Ingegneria Corso di Fondamenti di Informatica e Laboratorio T-AB Corso di Laurea in Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione
Le parole dell informatica: algoritmo e decidibilità
Le parole dell informatica: algoritmo e decidibilità Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico dell Informatica
Programmazione di INFORMATICA e Laboratorio
ISIUO ECNICO SAALE settore ECNOLOGICO ad indirizzo: Elettronica ed Elettrotecnica - Informatica e elecomunicazioni Meccanica, Meccatronica ed Energia "VIORIO EMANUELE III" Via Duca della Verdura, 48-90143
CORSO DI LAUREA MAGISTRALE IN INFORMATICA
B1.a escrizione del percorso di formazione ORSO I LAUREA MAGISTRALE IN INFORMATIA Questo orso di è organizzato dal ipartimento di Matematica e afferisce alla Scuola di Scienze. Il percorso di studio è
PROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
Elementi di Informatica e Programmazione
INTRODUZIONE AL MODULO DI Elementi di Informatica e Programmazione 6 CREDITI Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Prof. Massimiliano Giacomin Calendario del
FONDAMENTI DI INFORMATICA II
Università degli Studi di Ferrara Facoltà di Ingegneria APPUNTI DEL CORSO DI FONDAMENTI DI INFORMATICA II Obiettivi del corso: Approfondire l uso del linguaggio C rispetto a quanto noto dal corso di Fondamenti
Prof. Massimo Esposito INGEGNERIA MECCANICA (DI-M) UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II FACOLTÀ DI INGEGNERIA
Prof. Massimo Esposito INGEGNERIA MECCANICA (DI-M) UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II FACOLTÀ DI INGEGNERIA Fornire un impostazione metodologica alla materia Introdurre ai fondamenti teorici
Elementi di Informatica e Programmazione
Elementi di Informatica e Programmazione Introduzione Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela Fogli Informazioni
Algoritmi e Strutture Dati
Introduzione al Corso Maria Rita Di Berardini (Camerino), Emanuela Merelli (Ascoli) 1 1 Scuola di Scienze e Tecnologie - Sezione di Informatica Università di Camerino Parte I Il concetto di Algoritmo Il
I Nuovi Corsi di Laurea in Informatica. La laurea triennale (classe L-31) L
I Nuovi Corsi di Laurea in Informatica La laurea triennale (classe L-31) L Obiettivi La progettazione del nuovo Corso di Laurea è avvenuto seguendo una serie di linee-guida, che ne costituiscono altrettanti
Programmazione Dichiarativa. Programmazione Logica. SICStus PROLOG PROLOG. http://www.sics.se/sicstus/ Bob Kowalski: "Algoritmo = Logica + Controllo"
Programmazione Logica Bob Kowalski: "Algoritmo = Logica + Controllo" nella programmazione tradizionale: il programmatore deve occuparsi di entrambi gli aspetti nella programmazione dichiarativa: il programmatore
MANIFESTO DEGLI STUDI DEL CORSO DI LAUREA IN INFORMATICA (CREMA)
MANIFESTO DEGLI STUDI DEL CORSO DI LAUREA IN INFORMATICA (CREMA) Nell anno accademico 2004/05, sono attivati il 1, il 2 e il 3 anno del Corso di Laurea triennale in Informatica presso il Polo Didattico
Materiale didattico. Sommario
Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II
LABORATORI DI CULTURA DIGITALE: INFORMATICA, INTERNET E ROBOTICA
Dipartimento di Ingegneria Informatica Automatica e Gestionale Università di Roma La Sapienza Via Ariosto 25, Roma Corso di formazione INPS Valore P.A. 2016/17 LABORATORI DI CULTURA DIGITALE: DIRETTORE
Una Breve Introduzione alla Logica
Una Breve Introduzione alla Logica LOGICA La LOGICA è la disciplina che studia le condizioni di correttezza del ragionamento Occorre dire, anzitutto, quale oggetto riguardi ed a quale disciplina spetti
Linguaggi di programmazione
Linguaggi di programmazione Problema Algoritmo Programma Progettista Programmatore Progetto Programma Esecutore Computer Comittente Utente Dal problema all algoritmo Problema Risolutore ed esecutore Algoritmo
INFORMATICA PER LE SCIENZE UMANE a.a. 2015/2016
INFORMATICA PER LE SCIENZE UMANE a.a. 2015/2016 Francesca Levi Dipartimento di Informatica E-mail: [email protected] [email protected] Francesca Levi Dipartimento di Informatica Informatica per
Algoritmi e Strutture dati a.a. 2013/2014
a.a. 2013/2014 Dr Informazioni docente E-mail docente: [email protected] Ricevimento: Mercoledì 15:00-16:00 presso ufficio docenti a contratto (3 piano), Dipartimento di Matematica e Informatica, Campus
