Un invité venu de Montréal
Un historique approximatif des réunions de Paris.pm
- Jean-Pierre nous a présenté ses activités. Il
travaille en ce moment pour une loterie par Internet. Le principe de cette
loterie est d'obliger les joueurs à cliquer sur une bannière
de publicité, par le moyen simplissime suivant : il n'y a pas de
bouton "submit", c'est la publicité qui tient lieu de "submit". Le
travail précis de Jean-Pierre consiste à déterminer
comment le serveur pourrait choisir les publicités à afficher
à chaque joueur, en fonction des quelques renseignements qu'il a
communiqués à sa connexion. L'algorithme utilisé sera
basé sur la logique floue...
- Dans la même lignée, nous avons évoqué
agrep, une recherche approximative de chaînes de
caractères. C'est expliqué dans le
livre du Loup,
mais nous ne connaissions pas par coeur l'algorithme.
- Les méthodes de travail sont différentes entre
l'Amérique (USA + Canada) et la France. Sur le nouveau continent,
les sociétés comme celle pour qui Jean-Pierre travaille sont
disposées à utiliser les services de programmeurs
indépendants. En France, ces sociétés
préfèrent passer par une SSII, de
manière à garantir un suivi de l'intervention.
[par contre, les salaires sont stratosphériques aux US, un bon mongueur
peut facilement gagner $200K/an. Stéphane se demandait ce qu'il faisait en France -- ndlr]
- Stéphane évoque ses souvenirs des années où
il a travaillé dans la Silicon Valley. Il évoque notamment
les auto-stoppeurs, ou plus précisément les auto-stoppeuses,
qui ne sont pas toujours ce que l'on croit.
- Les dernières nouveautés dans le logiciel :
Mozilla
M13
est sortie [et c'est dément -- ndlr], ainsi que
Perl 5.5.640.
Il y a quelques nouveautés dans cette
version, comme le mot-clé our, dont l'utilisation ne
nous est pas encore très claire.
- Quelques commentaires très brefs également sur l'annonce de Transmeta.
- Stéphane explique à Jean-Pierre son projet de
shellish Perl, un langage inspiré de Perl, avec toute la
puissance des expressions de Perl, mais où, comme en shell, il n'y
aurait pas besoin de mettre entre quotes les chaînes de
caractères, où les redirections se feraient naturellement,
etc
- Il a été question de compiler perl statiquement
pour pouvoir se rattraper quand on a fait de grosses
bêtises. Malheureusement ca ne tient pas sur une
disquette ! En tous cas, un perl statique dans le root-filesystem,
ça ne peut pas faire de mal.
Il a été
également question d'utiliser perl -de 0 quand on fait
des opérations dangeureuses comme changer de libc.
Avec perl -de 0, on se retrouve dans un shell avec de la viande
dedans. Autrement dit, on est moins dépendant de commandes externes
qui peuvent ne plus marcher si l'on a cassé le système d'édition de
lien dynamiques.
Comme quoi, les grands esprits ont
failli se rencontrer...
- David évoque le fait que nous changeons de style au fur et
à mesure que nous progressons dans notre connaissance de Perl. Par
exemple, pour obtenir le jour et le mois, il écrivait
my (undef, undef, undef, $jj, $mm, undef, undef, undef, undef) = localtime;
alors que maintenant il préfère utiliser des slices
my ($jj, $mm) = (localtime)[3, 4];
[d'ailleurs, je viens de voir dans le Cookbook, le séme-assombri
my( $jj,$mm ) = sub{ $_[3], $_[4]+1 }->(localtime);
ce qui transforme la valeur du mois d'ordinale en cardinale (ou est-ce que c'est
le contraire) ? En tout cas je ne sais pas si je pourrais reproduire l'idiome sans
me référer à la doc...
-- ndlr]
- Une autre question de style, cette fois-ci en shell. Un ex-collègue de
Stéphane avait écrit un
script shell, avec une boucle qui incrémentait un
compteur :
i = expr $i + 1
ainsi que d'autres calculs arithmériques. Or,
l'appel de expr crée
un process fils. Donc, le faire dans
une boucle, cela ne passe pas inaperçu
chez les autres utilisateurs !
- Stéphane nous indique quelques logiciels intéressants, pour traiter
les symlinks et pour utiliser des regexps sans passer par Perl :
# file /usr/bin/symlinks
/usr/bin/symlinks: ELF 32-bit LSB
executable, Intel 80386, version 1, statically linked, stripped
# rpm -qil symlinks
Name : symlinks Relocations: (not relocateable)
Version : 1.2 Vendor: (none)
Release : 6mdk Build Date: Wed May 5 21:16:45 1999
Install date: Wed Feb 9 00:02:20 2000 Build Host: k6.microsoft.sucks.eu.org
Group : Applications/System
Source RPM: symlinks-1.2-6mdk.src.rpm
Size : 216850
License: distributable
Summary : A utility which maintains a system's symbolic links.
Description :
The symlinks utility performs maintenance on symbolic links. Symlinks
checks for symlink problems, including dangling symlinks which point to
nonexistent files. Symlinks can also automatically convert absolute
symlinks to relative symlinks.
# rpm -qil pcre
Name : pcre Relocations: (not relocateable)
Version : 2.0.8 Vendor: SuSE GmbH, Nuernberg,
Germany
Release : 11 Build Date: Mon Dec 6 23:44:56 1999
Install date: Mon Feb 7 13:55:29 2000 Build Host: Volterra.suse.de
Group : unsorted Source RPM: pcre-2.0.8-11.src.rpm
Size : 222973
License: Philip Hazel <ph10@cam.ac.uk>, Copyright (c) 1997-1999 University of Cambridge
Packager : feedback@suse.de
Summary : Library for Perl-compatible regular expressions
Description :
The PCRE library is a set of functions that implement regular
expression pattern matching using the same syntax and semantics
as Perl 5, with just a few differences. The current
implementation corresponds to Perl 5.005.
Authors:
--------
Philip Hazel <ph10@cam.ac.uk>
- Stéphane a effectué une adaptation de Perl sur une
idée de Samuel. Lorsque l'on traite un document XML, on a besoin de
traiter chaque noeud de l'arborescence à la fois comme une hash,
pour les attributs (mot-clé => valeur) et comme un tableau (liste
des noeuds fils du noeud courant). Avant l'adaptation de Stéphane,
l'utilisation de ce tableau nécessitait un niveau d'indirection,
occasionant par là une perte de temps.
- Stéphane nous indique les sites utiles pour tout savoir sur XML. Le
consortium W3,
qui contient les normes (et propositions de), ainsi que
www.xml.com.
À part
l'annotated xml de Tim Bray
qui est aussi un exemple de traitement de document, il y a peu de
matériel qui permet de voir le contexte qui a motivé ces
normes. Devant l'avalanche de ces normes ( HTML, XML, XHTML, CSS, XSL,
XPath...), il est facile de se perdre.
Il est tombé
récemment sur des
réflexions de Tim Berners-Lee (le créateur du Web). Il
n'a pas pris le
temps de tout lire mais la page Evolution.html est un
must.
- David [je crois [je sais plus -- ndlr]] utilise de temps en temps traceroute pour savoir par
où passent les paquets IP lorsqu'il accède par exemple au
serveur funet en Finlande. Et bien cela passe par la côte est des
États-Unis, puis par la côte ouest...
- Stéphane souhaite contacter Kai Carver. David, qui administre la
liste des Perl Mongueurs, explique que Kai s'est retiré de la liste,
mais que quelques jours plus tard, quelqu'un de Harvard nommé Kai
s'est abonné à la liste. Il y a peu de doutes, il doit
s'agir de la même personne.
- Quelques réflexions sur nos idoles : il parait
qu'Eric Raymond a
réussi à caser dans la même phrase les mots "zen" et
"armes à feu". [en fait, c'était "Buddhist," -- ndlr]
- Stéphane n'a pas réussi à voir
Richard Stallman à
l'expo française de Linux il y a quelques jours. Mais il se souvient
de la conférence du 10 novembre
1998 à Saint-Denis. Il lui avait même posé une
question sur les langages de programmation algébriques (avec des
opérateurs infixes), et il s'était fait allumer dans la réponse.
- David fait remarquer [non, je crois que c'était Stéphane -- ndlr]la place de l'Europe dans le développement
de Linux. Notamment, KDE nous vient
d'Allemagne, et j'ajoute que je crois que son "concurrent"
Gnome vient de Norvège.
- O'Reilly (VF) n'a plus le monopole des
livres bien faits sur Perl. En effet
Effective Perl
Programming (avec une perle en couverture) a une qualité
digne de O'Reilly (VO).
- Au sujet des divers groupes de Perl Mongueurs, David nous rappelle que
le site de Bath fournit une
carte mondiale présentant
l'emplacemant de chaque groupe.
- Toujours au courant des curiosités du web, David nous indique le terrorisme HTML.
Il ne s'agit pas d'un document HTML décrivant la fabrication des
cocktails molotov et des
bombes atomiques.
Il s'agit plutôt de
"conseils" pour la réalisation de pages web, avec utilisation
intensive des <blink> et des <marquee> (mais
il n'y a pas que ça...).
[J'aime bien le suivant :
Scripting languages. Where there's a scripting language, there's an opportunity for mayhem. Things such as infinite loops may lock up some versions of
browsers. Also, the implementation of JavaScript (a security hole in itself) in some versions of Netscape is rumoured to crash the browser if a division by zero
occurs. Thus the following may crash some versions of Netscape (though not the IRIX version):
<a href="javascript:1/0">
-- ndlr]
HTML 5 - CSS v3
Mongueurs de Paris, le 13 janvier 2013
Copyright © The Paris Perl Mongers, 1999-2024