perl:integration_avec_les_autres_langages_xs
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
perl:integration_avec_les_autres_langages_xs [2009/03/15 01:14] – édition externe 127.0.0.1 | perl:integration_avec_les_autres_langages_xs [2013/03/13 11:14] – [Principe] root | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Intégration avec divers langages ====== | ||
+ | |||
+ | |||
Références : | Références : | ||
* //man perlxstut// | * //man perlxstut// | ||
Ligne 26: | Ligne 29: | ||
**XS** désigne une suite d' | **XS** désigne une suite d' | ||
* vous possédez une interface C, normalement sous la forme d'un ou plusieurs fichiers //.h// contenant des prototypes de fonctions, ex : | * vous possédez une interface C, normalement sous la forme d'un ou plusieurs fichiers //.h// contenant des prototypes de fonctions, ex : | ||
+ | <code c> | ||
void hello(); | void hello(); | ||
int somme(int a, int b); | int somme(int a, int b); | ||
float moyenne(int nb, int* valeurs); | float moyenne(int nb, int* valeurs); | ||
+ | </ | ||
* vous désirez produire une interface Perl équivalente. Perl n' | * vous désirez produire une interface Perl équivalente. Perl n' | ||
+ | <code perl> | ||
sub hello { ... }; | sub hello { ... }; | ||
sub somme { my($a, $b) = @_; ...; return $val; } | sub somme { my($a, $b) = @_; ...; return $val; } | ||
sub moyenne { my(@valeurs) = @_; ...; return $val; } | sub moyenne { my(@valeurs) = @_; ...; return $val; } | ||
+ | </ | ||
* vous voulez vous assurer que le passage de Perl à C (pour l' | * vous voulez vous assurer que le passage de Perl à C (pour l' | ||
* enfin vous voulez produire un module Perl qui se charge d' | * enfin vous voulez produire un module Perl qui se charge d' | ||
- | |||
===== h2xs ===== | ===== h2xs ===== | ||
perl/integration_avec_les_autres_langages_xs.txt · Dernière modification : 2013/03/13 11:14 de root