ASPETTI AVANZATI DEI LINGUAGGI DI PROGRAMMAZIONE A.A.2017-2018


Avvisi

Risultati della prova scritta del 8 febbraio 2018


Sono previste le seguenti lezioni sul tema dell'impatto sociale delle nuove tecnologie:

  • La tecnologia e' neutrale? martedi' 19 dicembre 2017
  • Our minds can be hijacked: the tech insiders who fear a smartphone dystopia. The Guardian, October 2017.
    Time to release the internet from the free market and make it a basic right. The Guardian, November 2017.
    The great cryptocurrency heist. Aeon, February 2017.

  • Data is the new Oil, l'ascesa dell'intelligenza artificiale. martedi' 9 gennaio 2018
  • The most valuable resource is no longer oil, but data. The Economist, May 2017.
    The Big Data rich and the Big Data poor: the new digital divide raises questions about future academic research. LSE Impact Blog, November 2016.
    Will Democracy Survive Big Data and Artificial Intelligence? Scientific American, February 2017.
    Social Cooling
    Self-driving cars prove to be labour-intensive for humans. Financial Times, July 2017.
    Intelligenze artificiali e digital labour. Con A. Casilli, Settembre 2017.

  • La societa' di fronte alla rivoluzione digitale.
  • The Three Laws of Robotics in the Age of Big Data. Jack M. Balkin Yale University - Law School.
    2018 ACM Code of Ethics and Professional Conduct, Draft 3
    Dichiarazione dei diritti in Internet, prodotta e approvata dalla Camera dei Deputati del Parlamento Italiano nel 2015 e approvata in seguito anche dal Parlamento Francese.
    Task force IA. Agenzia per l'Italia Digitale
    Rapporto sulla consultazione pubblica francese sugli aspetti etici degli algoritmi di IA

    Appunti delle lezioni

    Introduzione e programma del corso (3/10/2017)
    The top programming languages 2017 according to IEEE Spectrum
    A leading Silicon Valley engineer explains why every tech worker needs a humanities education

    Appunti lezione del 05/10
    Composing Software in an Age of Dissonance. G. Bracha. ECOOP 2017 Keynote.
    Appunti lezione del 10/10
    Appunti lezione del 12/10
    Appunti lezione del 17/10
    Appunti lezioni del 19/10
    Appunti lezione del 24/10
    Appunti lezione del 26/10
    Appunti lezione del 31/10
    Appunti lezione del 2/11
    Appunti lezione del 7/11
    Appunti lezione del 9/11
    Esercizi di ripasso
    Appunti e Slides della lezione del 14/11
    Appunti e Slides della lezione del 16/11
    Slides lezione del 28/11
    Slides lezione del 30/11
    Slides lezione del 5/12
    Slides lezione del 7/12
    Slides lezione del 12/12
    Slides lezione del 14/12
    Slides lezione del 11/1
    Slides lezione del 16/1


    Testi e materiale di approfondimento
  • Types and Programming Languages. B.C. Pierce, edito da MIT Press. Disponibile in biblioteca.

  • Practical Foundations for Programming Languages. Robert Harper, edito da Cambridge Press. Online available preview

  • Programming in Scala. M.Odersky, L.Spoon, B.Venners. Artima ed. Disponibile in biblioteca

  • Why Study Principles of Programmin Languages? R. Harper
  • Why Functional Programming Matters. J. Hughes
  • The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software. H. Sutter
  • Computer Languages Timeline
  • The role of concurrency in an evolutionary view of programming abstractions.S. Crafa. Journal of Logical and Algebraic Methods in Programming 84:732-741 (2015)
  • Null References: The Billion Dollar Mistake T. Hoare. QCon conference, London 2009