Définition de dictionnaire.phpmyvisites.net
http://dictionnaire.phpmyvisites.net...word--7078.htm
Définition du mot BAREWORD , Littéralement « mot nu ». En Perl, désigne un terme qui n'appartient pas au langage, ni n'est associé à une variable etc. Du point de vue du langage, il ne signifie rien.
Je ne comprends pas bien. FILE est pourtant dans ce cas associé à $filename …
Pourriez-vous me donner d'autres exemple de 'bareword'? Un nom de sous-programme en est également un non?


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Open FILE, ‘<’, $filename
	Or croak « Can’t open ‘$filename’ : $OS_ERROR »;
Passage de ‘Perl Best Practices’, O’Reilly, chapter 10 : I/O, p202.
Don’t use bareword filehandle
Using a bareword like that as a filehandle causes Perl to store the corresponding input stream descriptor in the symbol table of the current package. Specifically, the stream descriptor is stored in the symbol table entry whose name is the same as the bareword; in this case, it’s *FILE. By using a bareword, the autor of the previous code is effectively using a package variable to store the filehandle.
Donc Perl crée une table de symboles afin d’y stocker les ‘bareword’, pourriez-vous m’expliquer le fonctionnement. Comment doit-on correctement ouvrir un filehandle ? Est-ce uniquement par un filehandle indirect (comme expliqué au paragraphe suivant dans le livre).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Open my $FILE, ‘<’, $filename
	Or croak « Can’t open ‘$filename’ : $OS_ERROR »;
Merci beaucoup pour votre aide.