my Perl is rusted...

이 커밋은 다음에 포함됨:
tTh
2020-11-27 14:43:55 +01:00
부모 8684520c5a
커밋 c6d8042995
4개의 변경된 파일82개의 추가작업 그리고 0개의 파일을 삭제
+68
파일 보기
@@ -0,0 +1,68 @@
\chapter{Perl} \label{chap:Perl} \index{Perl}
Également connu sous le nom de
\textsl{Pathologically Eclectic Rubbish Lister}%
\footnote{collectionneur pathologique de déchets variés},
Perl est un langage qui a été crée en 1987 par Larry Wall comme un
substitut moderne au classique combo shell/sed/awk.
\index{shell} \index{sed} \index{awk}
Il est de ce fait très orienté vers la manipulation de
données textuelles et contient d'énormes facilités d'utilisation
des expressions régulières.
Il fut un temps, dans le siècle précédent, où il était le maitre
incontesté du Web\index{web} interactif, de par son intégration
dans le serveur Apache\index{Apache},
et de modules d'écriture de clients http\index{http}.
Le débutant peut facilement n'utiliser qu'un sous-ensemble du langage,
mais ce serait se priver de quelques \textit{patterns} assez
efficients.
\section{Le texte}
Un cas concret~: générer du code en langage \texttt{C} à partir
d'un fichier traité ligne par ligne. Chacune de ces lignes est
de la forme \texttt{ID un texte quelconque.} avec ID qui est
une courte chaine alphabétique. Le résultat de la conversion
sera \texttt{char *p\_ID "un texte quelconque.";} et pourra
être utilisé par un \texttt{\#include "fichier.h"} bien
classique.
\subsection{Le traitement}
Ce traitement peut être décomposé en deux actions emboitées~:
d'une part traiter une ligne,
et d'autre part, traiter un fichier plein de lignes.
La première va être encapsulée dans un module Perl.
\lstinputlisting[language=perl]{code/id2h.pm}
\subsection{L'interface}
Quand à l'interface utilisateur, quelques arguments sur
la ligne de commande feront l'affaire.
\lstinputlisting[language=perl]{code/id2h.pl}
\section{Le \texttt{http}}
\section{RFC 8589}
RFC 8589 is an “informational” RFC that serves as a guide for
developers of applications, such as email clients, Web browsers
and more, to implement the “leaptofrogans” URI scheme
(see also the official URI schemes registered with the IANA).
Nobody is under any obligation, but RFC 8589 establishes a clear
path for enabling direct links to Frogans sites in online content.
\section{oneliners}
실행파일
+5
파일 보기
@@ -0,0 +1,5 @@
#!/usr/bin/perl -w
use strict;
use code::id2h;
TraiterLigne("ID un texte quelconque.");
실행파일
+8
파일 보기
@@ -0,0 +1,8 @@
#!/usr/bin/perl -w
use strict;
sub TraiterLigne($)
{
my $in = shift;
print "input: $in\n";
}
1;
+1
파일 보기
@@ -90,6 +90,7 @@ en ligne sur le site du Tetalab. Your mileage may vary\dots
\input{chap/son}
\input{chap/image}
\input{chap/reseau}
\input{chap/Perl}
\input{chap/musique}
% \input{chap/puredata}
\input{chap/MIDI}