[Bielefeld-pm] Pragmas

Stefan Oberwahrenbrock oberwahrenbrock at gmx.de
Mi Jun 30 12:35:44 PDT 2010


Hallo zusammen,

als Ergänzung zu den Ausführungen zum Thema "Pragma" beim gestrigen 
Treffen, habe ich noch mal ein wenig recherchiert und dabei die folgende 
Aussagen gefunden, die ich der Vollständigkeit halber mal 
zusammengetragen habe:


1) In particular, use is not only used to perform symbol importation but 
also to implement various magical pragmas (compiler hints).
[Quelle: Programming Perl, Chapter 2]

2) Because this is a wide open interface (-> die Rede ist von der 
use-Funktion), pragmas (compiler directives) are also implemented this 
way. [...] These pseudomodules typically import semantics into the 
current block scope, unlike ordinary modules, which import symbols into 
the current package.
[Quelle: Programming Perl, Chapter 3]

3) Unter Pragmas versteht man Anweisungen an den Compiler - sie werden 
wie jedes andere Modul mit use eingebunden, laden aber (meistens) keinen 
aufrufbaren Code, sondern steuern durch spezielle Befehle das Verhalten 
des Compilers. Man erkennt sie an ihrer zur Gänze in Kleinbuchstaben 
gehaltenen Namen.
[Quelle: $foo - Perl-Magazin, Nr. 14, Seite 33]

4) A pragma is a module which influences some aspect of the compile time 
or run time behaviour of Perl, such as strict or warnings. With Perl 
5.10 you are no longer limited to the built in pragmata; you can now 
create user pragmata that modify the behaviour of user functions within 
a lexical scope.
[Quelle: http://perldoc.perl.org/perlpragma.html]

5) A library module whose practical hints and suggestions are received 
(and possibly ignored) by the compiler.
[Quelle: Programming Perl, Glossary]


Wenn man aus den Aussagen die Vereinigungsmenge bildet, landet man wohl 
ungefähr bei unserem Fazit :-)

Gruß,
Stefan


Mehr Informationen über die Mailingliste Bielefeld-pm