Re: [Python] bytecode Python

2009-04-29 Per discussione Daniele Varrazzo
On Wed, 29 Apr 2009 18:57:02 +0200, danielita danielit...@gmail.com
wrote:
 Salve!
 
 Ho una domanda
 Il bytecode di un pogramma sorgente Python, viene interpretato ed
eseguito
 da un interprete oppure compilato da un compilatore Just In Time?

Al momento dell'import, l'eseguibile viene compilato in bytecode. Il
bytecode viene cachato in un file .pyc e viene davvero compilato solo se la
data del .py è più recente di quella della cache, ma questo è un
dettaglio implementativo.

Il bytecode, una volta compilato, viene eseguito dalla virtual machine
cpython (la situazione in jython/ironpython penso sia diversa).

Non c'è un compilatore just-in-time come in java che effettua
ottimizzazioni da bytecode a codice nativo, ma c'è un compilatore che
compila il sorgente in bytecode, e quest'ultimo (non il sorgente
interpretato) viene eseguito.

-- 
Daniele Varrazzo - Develer S.r.l. 
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] bytecode Python

2009-04-29 Per discussione Giovanni Porcari

Il giorno 29/apr/09, alle ore 19:07, Daniele Varrazzo ha scritto:

 On Wed, 29 Apr 2009 18:57:02 +0200, danielita danielit...@gmail.com
 wrote:
 Salve!

 Ho una domanda
 Il bytecode di un pogramma sorgente Python, viene interpretato ed
 eseguito
 da un interprete oppure compilato da un compilatore Just In Time?

 Al momento dell'import, l'eseguibile viene compilato in bytecode. Il
 bytecode viene cachato in un file .pyc e viene davvero compilato  
 solo se la
 data del .py è più recente di quella della cache, ma questo è un
 dettaglio implementativo.

 Il bytecode, una volta compilato, viene eseguito dalla virtual machine
 cpython (la situazione in jython/ironpython penso sia diversa).

 Non c'è un compilatore just-in-time come in java che effettua
 ottimizzazioni da bytecode a codice nativo, ma c'è un compilatore che
 compila il sorgente in bytecode, e quest'ultimo (non il sorgente
 interpretato) viene eseguito.



Daniele, visto che siamo in tema con un problemino insorto oggi:
a quello che risulta a te, avendo installato un python 32/64 bit
i pyc generati dal python 64 bit possono risultare incompatibili
allo stesso python lanciato a 32 bit ?

G
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] bytecode Python

2009-04-29 Per discussione danielita
Per Enrico

Si, sto scrivendo relazioni e anche programmi che coinvolgono Python e GUI,
di documentazione (in rete) ne sto leggendo tanta, ma alcune informazioni
(in particolare sulle GUI) risalgono ad un pò di tempo fa, altre sono
incomplete.ad esempio sul sito di Python c'è scritto:
Python è innanzitutto un linguaggio di script pseudocompilato. Questo
significa che, similmente al Perl ed al Tcl/Tk, ogni programma sorgente deve
essere pseudocompilato da un interprete
poi da qualche altra parte ho trovato che esiste un JIT per Python
Psyco

Quando sono in difficoltà mi rivolgo a voi...inoltre è da poco che ho a che
fare con Python e GUI...ed è grazie a questa mailing list che spesso ho
superato qualche problemuccio!

Ciao
Daniela

Il giorno 29 aprile 2009 19.28, Enrico Franchi enrico.fran...@gmail.com ha
scritto:


 On Apr 29, 2009, at 7:07 PM, Daniele Varrazzo wrote:

  Non c'è un compilatore just-in-time come in java che effettua
  ottimizzazioni da bytecode a codice nativo, ma c'è un compilatore che
  compila il sorgente in bytecode, e quest'ultimo (non il sorgente
  interpretato) viene eseguito.

 Poi, per chi vuole e puo' usarlo, c'e' Psyco.

 Poi ci sarebbe Pypy, ma li cambiamo proprio ambiente.


 Ma, per Danielita... mi sembra che tu stia cercando di scrivere una
 relazione che coinvolge Python in qualche modo, piu' ancora che
 scrivere programmi nello stesso. Forse non faresti meglio a leggere un
 po' di documentazione? Potresti farti una visione di insieme piu'
 significativa che fare domande sparse su una mailing list. IMHO, eh.
 E senza nessun problema a risponderti.
 ___
 Python mailing list
 Python@lists.python.it
 http://lists.python.it/mailman/listinfo/python

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] bytecode Python

2009-04-29 Per discussione Enrico Franchi

On Apr 29, 2009, at 8:19 PM, danielita wrote:

 Si, sto scrivendo relazioni e anche programmi che coinvolgono Python  
 e GUI, di documentazione (in rete) ne sto leggendo tanta, ma alcune  
 informazioni (in particolare sulle GUI) risalgono ad un pò di tempo  
 fa, altre sono incomplete..

Il mio consiglio e', per ora, rivolgerti quanto piu' possibile alla  
documentazione inglese. E' sicuramente piu' aggiornata.
Brutto da dire, ma direi che e' inequivocabilmente cosi'. Inoltre si  
trova molta piu' roba in inglese, di fatto.

 ...ad esempio sul sito di Python c'è scritto:
 Python è innanzitutto un linguaggio di script pseudocompilato.  
 Questo significa che, similmente al Perl ed al Tcl/Tk, ogni  
 programma sorgente deve essere pseudocompilato da un interprete

Interessante. Nel senso che effettivamente non si capisce molto, IMHO.
Di fatto il termine pseudo-compilato non mi piace affatto. Non mi e'  
nemmeno chiaro perche' usiamo quel termine invece che byte-compilato.

 poi da qualche altra parte ho trovato che esiste un JIT per  
 Python Psyco

Si. Qui ti da un po' di chiacchiera su Psyco. Se hai dubbi, chiedi pure:

http://psyco.sourceforge.net/introduction.html


 Quando sono in difficoltà mi rivolgo a voi...inoltre è da poco che  
 ho a che fare con Python e GUI...ed è grazie a questa mailing list  
 che spesso ho superato qualche problemuccio!

Fai benissimo a rivolgerti qui. La mailing list esiste apposta.

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] bytecode Python

2009-04-29 Per discussione Daniele Varrazzo
On Wed, 29 Apr 2009 19:16:18 +0200, Giovanni Porcari
giovanni.porc...@softwell.it wrote:

 Daniele, visto che siamo in tema con un problemino insorto oggi:
 a quello che risulta a te, avendo installato un python 32/64 bit
 i pyc generati dal python 64 bit possono risultare incompatibili
 allo stesso python lanciato a 32 bit ?

Ne so poco, e quello che sapevo e' che il bytecode dovrebbe essere
portabile. Ma in effetti ho trovato qualche traccia, qua e la', di quello
che dici tu:

http://www.google.co.uk/search?q=site%3Apython.org+bytecode+32+64

-- 
Daniele Varrazzo - Develer S.r.l. 
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python