Re: [Python] bytecode Python
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
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
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
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
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