Chaque fois que je vois le terme filtre source Je me demande à quoi il fait référence.
Outre une définition formelle, je pense qu'un exemple serait utile pour faire passer le message.
Chaque fois que je vois le terme filtre source Je me demande à quoi il fait référence.
Outre une définition formelle, je pense qu'un exemple serait utile pour faire passer le message.
Un filtre de source est un module qui modifie un autre code avant qu'il ne soit évalué. Par conséquent, le code qui est exécuté n'est pas celui que le programmeur voit lorsqu'il est écrit. Vous pouvez en savoir plus sur les filtres de source (dans le contexte Perl) à l'adresse suivante perldoc perlfilter
. En voici quelques exemples Smart::Comments
qui permet au programmeur de laisser les commandes de débogage dans les commentaires du code et de ne les utiliser qu'en cas de besoin. PDL::NiceSlice
qui est du sucre pour découper les objets PDL.
Editer :
Pour plus d'informations sur l'utilisation (si vous souhaitez braver la bête), lisez la documentation de Filter::Simple
ce qui est une façon typique de créer des filtres.
Une autre solution consiste à utiliser la source d'une manière nouvelle et différente : Devel::Declare
vous permet d'interagir avec l'analyseur de Perl, vous permettant de faire le même type de choses qu'un filtre source, mais sans le filtre source. Cette méthode peut s'avérer plus "sûre" à certains égards, mais son champ d'application est plus limité.
A filtre source est une forme de module qui affecte la manière dont un fichier use
-ing, il sera analysé. Ils sont couramment utilisés pour simuler des caractéristiques syntaxiques que Perl n'a pas nativement -- par exemple, l'attribut Switch
Le filtre source était souvent utilisé pour simuler les instructions switch avant l'introduction de la fonction given { }
était disponible.
Les filtres de source fonctionnent en prenant le texte du module en entrée, en effectuant un traitement sur celui-ci et en produisant le code source filtré. Pour un exemple simple de l'implémentation d'un filtre de source, ainsi que pour plus de détails, voir la page perldoc de perlfiltre .
Il s'agit de pré-processeurs. Ils modifient le code source avant qu'il n'atteigne le compilateur Perl. Vous pouvez faire des choses effrayantes avec eux, en fait implémenter votre propre langage, avec tous les effets que cela a sur la lisibilité (pour les autres), la robustesse (écrire des analyseurs est difficile) et la maintenabilité (le débogage devient délicat lorsque votre idée de ce qu'est le code source diffère de ce que le compilateur et le moteur d'exécution pensent qu'il est).
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.