Ciao Leo,<div><br></div><div>    se ritrovo un mio vecchio progetto in cui facevo embedding di un interprete perl in c++ te lo mando.</div><div><br></div><div>Di base puoi anche creare una sub anonima, nel qual caso non dovresti avere il problema delle collisioni.</div>

<div><br></div><div>Per quanto riguarda il problema di cambiare package... scrivi chiaramente che non devono farlo altrimenti possono succedere Brutte Cose (TM).</div><div><br></div><div>A presto,</div><div><br></div><div>

    Flavio.</div><div><br><br><div class="gmail_quote">2011/3/22 Leo Cacciari <span dir="ltr"><<a href="mailto:leo.cacciari@gmail.com">leo.cacciari@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Il 03/22/2011 12:56 PM, Flavio Poletti ha scritto:<br>
<div class="im">> Ciao,<br>
><br>
>     di sicuro un approccio modulare è quello da preferire. Non credo<br>
> di capire benissimo i problemi che stai ponendo:<br>
><br>
> * gestione delle variabili sintattiche<br>
> * inizializzazione delle variabili<br>
> * gestione degli argomenti<br>
><br>
> Puoi fare un esempio più preciso dei tre tipi di problemi? In<br>
> particolare, il terzo problema non mi sembra "reale", ci sono dei modi<br>
> per impostare lo stack dell'interprete perl in modo che la chiamata<br>
> alla funzione "veda" dei parametri in ingresso dentro @_ come se fosse<br>
> stata chiamata da un'altra sub perl.<br>
><br>
> Ciao,<br>
><br>
>     Flavio.<br>
</div>Non li vedi perché in effetti non ci  sono :D Rileggendo bene perlembed,<br>
l'idea è di usare una funzione perl che viene invocata per caricare il<br>
contenuto di un file e che fa qualcosa come<br>
<br>
my $eval = qq{package $package; sub handler { $sub; }};<br>
eval $eval;<br>
die $@ if $@;<br>
eval {$package->handler;};<br>
<br>
dove $sub contiene il testo dello script, e $package è inizializzato a<br>
partire dal filename dello script. L'unico punto su cui bisogna fare<br>
attenzione è che 'handler' potrebbe essere già definito... Inoltre mi<br>
domando cosa succede se l'autore dello script fa qualcosa come<br>
<br>
package main;<br>
<br>
<br>
nel suo script...<br>
<font color="#888888"><br>
<br>
<br>
--<br>
</font><div><div></div><div class="h5">Leo Cacciari<br>
Aliae nationes servitutem pati possunt populi romani est propria libertas<br>
<br>
_______________________________________________<br>
Roma mailing list<br>
<a href="mailto:Roma@pm.org">Roma@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/roma" target="_blank">http://mail.pm.org/mailman/listinfo/roma</a><br>
</div></div></blockquote></div><br></div>