From 53b4f3f43985a593679b8bf97fe8acf0464e3a3e Mon Sep 17 00:00:00 2001
From: dakkar <dakkar@luxion>
Date: Wed, 20 Aug 2008 16:53:53 +0000
Subject: ritocchi

git-svn-id: svn://luxion/repos/intro-perl@364 fcb26f47-9200-0410-b104-b98ab5b095f3
---
 corso.content.tex | 80 ++++++++++++++++++++++++++++++-------------------------
 1 file changed, 44 insertions(+), 36 deletions(-)

(limited to 'corso.content.tex')

diff --git a/corso.content.tex b/corso.content.tex
index c1870e4..5837cde 100644
--- a/corso.content.tex
+++ b/corso.content.tex
@@ -3,15 +3,18 @@
 \usepackage[T1]{fontenc}
 \usepackage{times}
 \usepackage{colortbl}
+\usepackage{textcomp}
 \usepackage{listings}
 \usepackage{tikz}
 
-\lstset{extendedchars,numbers=left,numberstyle=\tiny ,numbersep=5pt,language=Perl,showspaces=false,frame=single,framerule=0pt,backgroundcolor=\color{black!20},basicstyle=\small\ttfamily}
+\colorlet{p}{black!20}
+
+\lstset{extendedchars,numbers=left,numberstyle=\tiny ,numbersep=5pt,language=Perl,showspaces=false,frame=single,framerule=0pt,backgroundcolor=\color{p},basicstyle=\small\ttfamily ,upquote=true,keepspaces=true}
 
 \mode<presentation>
 {
 \usetheme[hideothersubsections]{Goettingen}
-\usecolortheme{beaver}
+%\usecolortheme{beaver}
 \usecolortheme{rose}
 \setbeamertemplate{sections/subsections in toc}[ball]
 }
@@ -77,7 +80,7 @@
 \subsection{Cos'� Perl?} % ma perch� non va con \textit???
 
 \begin{frame}\frametitle{Il nome}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item \Perl\ � il nome del linguaggio
 \item \perl\ � il nome del programma
 \item PERL � un errore
@@ -85,37 +88,37 @@
 \end{frame}
 
 \begin{frame}\frametitle{Il nome}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item \emph{non} � una sigla
 \item � un nome
 \item se proprio volete...
- \begin{itemize}[<+->]
- \item Practical Extraction and Report Language
- \item Pathologically Eclectic Rubbish Lister
- \item Polymorphic Existential Recursive Lambdas
+ \begin{itemize}
+ \item<2-> Practical Extraction and Report Language
+ \item<2-> Pathologically Eclectic Rubbish Lister
+ \item<2-> Polymorphic Existential Recursive Lambdas
  \end{itemize}
 \end{itemize}
 \end{frame}
 
 \begin{frame}\frametitle{Interprete o compilatore?}
-\addtocounter{beamerpauses}{1}
+%\addtocounter{beamerpauses}{1}
 \begin{description}
 \item[Interprete] legge un'istruzione alla volta e la esegue
- \begin{itemize}[<+->]
- \item scova gli errori solo quando ci sbatte
- \item non fa ottimizzazioni serie
+ \begin{itemize}
+ \item<2-> scova gli errori solo quando ci sbatte
+ \item<3-> non fa ottimizzazioni serie
  \end{itemize}
 \item[Compilatore] trasforma il programma da un linguaggio a un altro
- \begin{itemize}[<+->]
- \item pu� scovare molti errori staticamente
- \item pu� ottimizzare il codice
- \item \emph{non � mai sufficiente}
+ \begin{itemize}
+ \item<2-> pu� scovare molti errori staticamente
+ \item<3-> pu� ottimizzare il codice
+ \item<4-> \emph{non � mai sufficiente}
  \end{itemize}
 \end{description}
 \end{frame}
 
 \begin{frame}\frametitle{Interpreti --- esempi}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item la CPU � un interprete
 \item \texttt{bash} � un interprete
 \item la JVM � un interprete
@@ -124,7 +127,7 @@
 \end{frame}
 
 \begin{frame}\frametitle{Compilatori --- esempi}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item \texttt{GCC} � un compilatore
 \item \texttt{javac} � un compilatore
 \item \perl\ � un compilatore
@@ -138,7 +141,7 @@
 \end{frame}
 
 \begin{frame}\frametitle{La filosofia}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item simile a un linguaggio naturale
 \item TMTOWTDI
 \item making easy things easy, and hard things possible
@@ -161,7 +164,7 @@
 \onslide<2|handout:1>{\begin{itemize}
 \item \url{http://win32.perl.org/}
 \item \href{http://www.activestate.com/Products/activeperl/index.mhtml}{ActivePerl}, di ActiveState
-\item \href{http://win32.perl.org/wiki/index.php?title=Strawberry_Perl}{Starwberry Perl}, se volete qualcosa di pi� ``normale''
+\item \href{http://win32.perl.org/wiki/index.php?title=Strawberry_Perl}{Strawberry Perl}, se volete qualcosa di pi� ``normale''
 \end{itemize}}
 \end{overprint}
 \end{frame}
@@ -169,18 +172,16 @@
 \subsection{Scrivere ed eseguire programmi}
 
 \begin{frame}\frametitle{File di testo}
-\uncover<+->{Come la maggior parte dei linguaggi di programmazione,
-Perl legge i programmi da semplici file di testo.}
-
-\uncover<+->{Per il momento supponiamo di usare soltanto i caratteri
-  dell'insieme ASCII (niente accentate)}
-
-\uncover<+->{� pi� semplice se usate i fine-linea normali per la
-  vostra piattaforma}
+\begin{itemize}
+\item Come la maggior parte dei linguaggi di programmazione,
+Perl legge i programmi da semplici file di testo.
+\item � pi� semplice se usate i fine-linea normali per la
+vostra piattaforma
+\end{itemize}
 \end{frame}
 
 \begin{frame}\frametitle{Convenzioni}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item per i programmi potete usare i nomi che volete
 \item certe volte si usa \texttt{.pl} come estensione
 \item \texttt{\#!/usr/bin/perl} o \texttt{\#!/usr/bin/env perl}
@@ -199,7 +200,7 @@ use warnings;
 \end{frame}
 
 \begin{frame}\frametitle{Esecuzione}
-\begin{itemize}[<+->]
+\begin{itemize}
 \item \texttt{perl nomefile}
 \item *NIX: \texttt{chmod +x nomefile; ./nomefile}
 \item Windows: trucchi con i file \texttt{.BAT}
@@ -385,7 +386,7 @@ Usate le graffe intorno al nome per evitare che i caratteri che seguono vengano
 \begin{lstlisting}
 print "Buh!\n";
 my $a='qualcosa';print $a,"\n";
-print "a","b","c";
+print 'a','b','c';
 \end{lstlisting}
 
 \visible<2->{%
@@ -624,11 +625,10 @@ print $a[3],"\n";
 
 \visible<2->{
 \lstinline!4!
-}
 
-\visible<3->{S�, \lstinline!@a! � il nome dell'intero array, ma l'accesso a elemento comincia con \lstinline!$!. Potete usare una variable array in ogni posto dove usereste una lista.}
+S�, \lstinline!@a! � il nome dell'intero array, ma l'accesso a elemento comincia con \lstinline!$!. Potete usare una variable array in ogni posto dove usereste una lista.
 
-\visible<4->{Una variabile array cui non � mai stato assegnato nulla ha valore \lstinline!()! (lista vuota).}
+Una variabile array cui non � mai stato assegnato nulla ha valore \lstinline!()! (lista vuota).}
 \end{frame}
 
 \begin{frame}[fragile]\frametitle{Assegnamento, di nuovo}
@@ -1458,7 +1458,7 @@ punti che corrispondono alla regex, non solo il primo
 \section{Controllo del flusso}
 
 \begin{frame}[fragile]\frametitle{Strutture di controllo}
-Abbiamo visto \lstinline{if}:
+Abbiamo visto \lstinline!if!:
 \begin{lstlisting}
 if ($totale < 0) { print "Eh?\n" }
 \end{lstlisting}
@@ -1475,7 +1475,7 @@ while (<> !~ /^[sn]/) {
 \subsection{Controlli negati} % unless, until
 
 \begin{frame}[fragile]\frametitle{Controlli negati}
-Il contrario di \lstinline{if} � \lstinline!unless!:
+Il contrario di \lstinline!if! � \lstinline!unless!:
 \begin{lstlisting}
 unless ($totale >= 0) { print "Eh?\n" }
 \end{lstlisting}
@@ -2056,6 +2056,14 @@ for my $elem (@lista) {
 }
 \end{lstlisting}
 \end{overprint}
+\begin{onlyenv}<handout>
+equivalente a:
+\begin{lstlisting}
+for my $elem (@lista) {
+  print $elem;
+}
+\end{lstlisting}
+\end{onlyenv}
 \end{frame}
 
 \begin{frame}[fragile]\frametitle{Variabile implicita (2)}
-- 
cgit v1.2.3

