Re: [Python] Un videogioco fatto con la standard library

2011-12-11 Per discussione Daniele Zambelli
Il 10 dicembre 2011 11:34, Francesco Maida  ha scritto:
> [...]
> Qui il filmato:
> http://www.youtube.com/watch?v=Bj-H9uPEa5U
>
> Qui il codice sorgente:
> http://snake-1526l.googlecode.com/files/snake2615l.tar.bz2

Grazie per il link

> Mi potreste aiutare a capire come funziona per favore?
>[...]
>
>
> Secondo voi è corretta questa analisi?

Mi pare di sì.

> In particolare mi riesce
> difficile capire esattamente cosa fa il codice fra le righe 17 e 22.

Per quanto riguarda la riga 17, l'espressione:

(key==KEY_RIGHT and 1 or key==KEY_LEFT and -1)

restituisce 1 o -1 a seconda del tasto premuto. Si può capire tenendo
conto del modo in cui funzionano le espressioni booleane in Python:
restituiscono il primo oggetto che risolve l'espressione:

>>> True and False
False
>>> True and "Pippo"
'Pippo'
>>> False and True
False
>>> False and "Pippo"
False
>>> True and ""
''

Tieni presente che in Python zero, la lista vuota, la stringa vuota
sono considerati False tutti gli altri oggetti True.

Prova tu a vedere cosa avviene con l'operazione or.

Quindi l'intera riga 17:

snake.insert(0,[snake[0][0]+(key==KEY_RIGHT and 1 or key==KEY_LEFT and -1),
   snake[0][1]+(key==KEY_DOWN and 1 or
key==KEY_UP and -1)])

aggiunge come primo elemento della lista snake un elemento uguale al
precedente ma con i valori incrementati o decrementati di uno in base
al tasto premuto.

Ciao

-- 

Daniele

www.fugamatematica.blogspot.com

    giusto!
    nel verso
    forse è perché non guardiamo le cose
    Quando non ci capiamo,
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione enrico franchi
2011/12/10 Carlos Catucci 
>
> WxPython sarebbe una chicca, si adatta al sistema operativo ospite, pero'
> cavolo, pure per fare una semplice maschera devi fare i salti mortali. Poi
> tutti i bind a manina. E se vuoi l'ORM ce lo devi mettere tu dentro. E
> cosi' via.
>

Qt molti di questi problemi non li ha.


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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione enrico franchi
2011/12/11 Daniele Tricoli 

>
> IMHO questo è di gran lunga peggiore e più subdolo di '3viso' + 2:
> http://tech.just-imho.net/2011/12/php-and-big-numbers.html


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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
non conosco benissimo pyqt, ma un django (come semplicità e rapidità) per
non web non lo è di certo.

Carlos
Il giorno 11/dic/2011 11.06, "enrico franchi"  ha
scritto:

>
>
> 2011/12/10 Carlos Catucci 
>>
>> WxPython sarebbe una chicca, si adatta al sistema operativo ospite, pero'
>> cavolo, pure per fare una semplice maschera devi fare i salti mortali. Poi
>> tutti i bind a manina. E se vuoi l'ORM ce lo devi mettere tu dentro. E
>> cosi' via.
>>
>
> Qt molti di questi problemi non li ha.
>
>
> --
> .
> ..: -enrico-
>
> ___
> 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] python threads, how to store results from a multithread code

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
On Saturday, December 10, 2011 02:33:35 PM Massimo Di Stefano 
wrote:

> Scusami per la confusione, non me ne voglia il vero Henryx ;)

Non so il perche`, ma in questo thread mi sento chiamato in 
causa... ;)

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


Re: [Python] Un videogioco fatto con la standard library

2011-12-11 Per discussione Francesco Maida
Il giorno sabato 10 dicembre 2011, enrico franchi 
ha scritto:
> Quanto odio il fatto che il codice non sia browsabile...

C'è anche quello:
http://paste.pocoo.org/show/222646/
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Alessandro Dentella
On Sun, Dec 11, 2011 at 11:58:48AM +0100, Carlos Catucci wrote:
> non conosco benissimo pyqt, ma un django (come semplicit  e rapidit ) per non
> web non lo   di certo.

A me non pare che tu stia facendo un confronto alla pari: stai confrontando
la programmazione tramite un framework per web con quella senza framework
per desktop.

Non voglio entrare nel solito flame fra chi ama le applicazioni web e chi
preferisce quelle desktop, ma se fai un confronto sulla facilità di sviluppo
non puoi non tenere conto di tutti i componenti.

Django è eccezionale nel suo campo (lo uso e lo apprezzo), ma non è
paragonabile (nel senso che non è della stessa natura) con delle librerie
come qt, gtk o wx, semmai lo devi paragonare (salvo la maturità degli
strumenti) con dei framework costruiti con quelle come Camelot [1], Sqlkit
[2] o Dabo [3] o con framework specialisti come OpenERP [4]. Va da sè che
nessuno di questi framework compete come diffusione e maturità del software
con i framework web più blasonati e questo ha essenzialmente a che fare con
il discorso fatto più volte in questa lista sul trend di spostare tutti i
servizi/programmi su web.

Certo che quando mi dici "fare i binding a mano" mi viene da pensare che
django non mi regala certo (non è suo compito) tutto il javacript che va
comunque scritto per rendere accattivante e reattivo un sito.


sndro
*:-)


[1] http://www.python-camelot.com
[2] http://sqlkit.argolinux.org
[3] http://dabodev.com
[4] http://www.openerp.com


-- 
Sandro Dentella  *:-)
http://www.reteisi.org Soluzioni libere per le scuole
http://sqlkit.argolinux.orgSQLkit home page - PyGTK/python/sqlalchemy



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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Pietro Battiston
Il giorno dom, 11/12/2011 alle 13.04 +0100, Alessandro Dentella ha
scritto:
> On Sun, Dec 11, 2011 at 11:58:48AM +0100, Carlos Catucci wrote:
> > non conosco benissimo pyqt, ma un django (come semplicit  e rapidit ) per 
> > non
> > web non lo   di certo.
> 
> A me non pare che tu stia facendo un confronto alla pari: stai confrontando
> la programmazione tramite un framework per web con quella senza framework
> per desktop.
> 
> Non voglio entrare nel solito flame fra chi ama le applicazioni web e chi
> preferisce quelle desktop, ma se fai un confronto sulla facilità di sviluppo
> non puoi non tenere conto di tutti i componenti.
> 
> Django è eccezionale nel suo campo (lo uso e lo apprezzo), ma non è
> paragonabile (nel senso che non è della stessa natura) con delle librerie
> come qt, gtk o wx, semmai lo devi paragonare (salvo la maturità degli
> strumenti) con dei framework costruiti con quelle come Camelot [1], Sqlkit
> [2] o Dabo [3] o con framework specialisti come OpenERP [4]. Va da sè che
> nessuno di questi framework compete come diffusione e maturità del software
> con i framework web più blasonati e questo ha essenzialmente a che fare con
> il discorso fatto più volte in questa lista sul trend di spostare tutti i
> servizi/programmi su web.

E sempre a proposito del discorso che non voglio riaprire, e prendendo
per un attimo per buono il fatto che il trend dipenda in buona parte
dalla facilità di deploy, e comunque senza pretendere di convincere
nessuno di alcunché... insomma, fine delle premesse, gtk broadway mi ha
dato da pensare:
http://blogs.gnome.org/alexl/2011/03/15/gtk-html-backend-update/

Chi non ci vede nulla di interessante dal punto di vista pratico (non
sono ancora sicuro di vedercelo neanche io) lo veda come una curiosità
da nerd, no problem!

ciao

Pietro

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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
On Friday, November 25, 2011 05:57:42 PM enrico franchi wrote:

> Le basi teoriche solide e' bene farsele generiche e in grado di
> coprire un po' tutto.

+1, aggiungo anche che il linguaggio di sviluppo e` uno strumento, e come tale 
ha i suoi contesti di utilizzo, i suoi pro ed i suoi contro, con i suoi punti 
di forza ed i suoi limiti. Per fare un esempio, proprio in questi giorni sto 
smadonnando dietro alla lettura di file aventi encoding sballati e dei 
metadati di un file che vadano oltre ai classici metadati posix (per 
intenderci ACL e compagnia cantante). Con Python mi ritrovo nella situazione 
che se uso Python2 ho problemi con l'encoding dei file (in teoria ho risolto, 
in pratica ho paura di essermi creato altri problemi piu` rognosi), se uso 
Python3 ho problemi di performance in quanto devo andare di subprocess per 
leggere le ACL (non ho le librerie), senza contare che avrei un PITA per 
l'ambiente di produzione (devo andare su Centos 5.x). In definitiva, 'sta 
situazione la vedo cosi` critica che l'attrazione verso il manuale di C++ si 
fa sempre piu` forte...

Enrico
P.S. piccola nota: la creazione di un JSON contenente i vari metadati (ACL 
escluse) provenienti da un albero piuttosto consistente (il kernel linux 
scaricato dal git) occupa massimo 105Mb in RAM. Stessa operazione fatta con 
Java occupa 430Mb

signature.asc
Description: This is a digitally signed message part.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Accedere alla documentazione di una libreria offline

2011-12-11 Per discussione Nicola Larosa
> Daniele Varrazzo wrote:
>> So che tekNico usa un'estensione firefox per salvarsi una copia 
>> offline di tutto quello che guarda su Internet. Non so quale:
>> magari te lo dice lui o è googlabile.

Marco Beri wrote:
> Mi pare sia questa:
> https://addons.mozilla.org/en-US/firefox/addon/scrapbook/

Sì, è quella. Il mio mirror personale del web. ;-)

Occhio che quando arriva a qualche migliaio di pagine, il salvataggio di
quelle nuove diventa un po' lento. Credo sia perché l'indice è un unico
file RDF. Si può aggirare creando più repository, ma è un po' una palla.

Il limite principale è che è solo offline, le pagine stanno su un disco e
sono consultabili solo da dispositivi che hanno accesso a quel filesystem.

Ci sono modi più recenti che salvano (anche) online, come
 e .

-- 
Nicola Larosa - http://www.tekNico.net/

The alternative to collapse is this kind of nasty slow burn that
leaves a completely devastated planet incapable of supporting life.
So the faster this pustule is pierced, the more hope for the patient.
It is like lancing a boil. It may be an unsightly process, but the
sooner it happens, the better for everyone.
 - Dmitry Orlov, August 2011
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
On Thursday, December 08, 2011 12:33:58 AM Luciano Tolomei wrote:

> (non svenite dal ridere ma una volta si lavorava a sta maniera)

Se e` per questo una volta si usava anche il tag  per formattare la 
pagina. Ora dsi valuta di deprecarlo anche per la costruzione delle tabelle in 
favore dei CSS. Il concetto si chiama "evoluzione", PHP e` ancora fermo alla 
clava e alla pietra

Enrico

signature.asc
Description: This is a digitally signed message part.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Accedere alla documentazione di una libreria offline

2011-12-11 Per discussione Nicola Larosa
Andrea Francia wrote:
> Supponiamo che sto lavorando con nose e mi serve la sua
> documentazione?
> Io adesso mi faccio il checkout delle librerie che uso e vado
> a guardarmi gli RST.

I progetti che hanno documentazione basata su Sphinx includono un
Makefile che ti consente di generare vari formati a partire dai file rst.

Nel caso di nose, vai nella directory "doc" ed esegui il comando "make
html". I file generati sono nella directory .build (nota il punto),
tipicamente nascosta su sistemi Unix.


> Io uso Vim per programmare, qualcuno conosce qualche barbatrucco
> utile con questo editor?

Mi rifiuto di usare cotanto istrumento del dimonio.

-- 
Nicola Larosa - http://www.tekNico.net/

The alternative to collapse is this kind of nasty slow burn that
leaves a completely devastated planet incapable of supporting life.
So the faster this pustule is pierced, the more hope for the patient.
It is like lancing a boil. It may be an unsightly process, but the
sooner it happens, the better for everyone.
 - Dmitry Orlov, August 2011
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
On Tuesday, December 06, 2011 10:42:36 PM Carlo Miron wrote:

> php > print '3viso'+2;

Piu` o meno normale, nel senso che PHP, a differenza di Python, ha una 
tipizzazione debole, che crea merdate del genere. Tra l'altro, anche Perl ha 
lo stesso problema (anche lui ha una tipizzazinoe debole), ma lo risolve 
tramite delle librerie apposite (warnings e strict)

Enrico

signature.asc
Description: This is a digitally signed message part.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Accedere alla documentazione di una libreria offline

2011-12-11 Per discussione Marco Beri
>
> Andrea Francia wrote:
>
 > Io uso Vim per programmare, qualcuno conosce qualche barbatrucco
> > utile con questo editor?
>

2011/12/11 Nicola Larosa 
>
> Mi rifiuto di usare cotanto istrumento del dimonio.
>

Eppure non è male, in fondo questa stessa cosa la dicevano del cannocchiale
di Galileo...

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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
Per il moderatore: ho inviato questo messaggio con un altro account, ignoralo

On Thursday, December 08, 2011 10:19:41 AM enrico franchi wrote:

> Quantifico il "nulla": query molto semplici in lettura e scritture
> relativamente semplici.  Buona parte del carico era sul DB

Mi viene voglia di citare il degno compare di PHP, ma io sono maligno :)

> Per dire in Java trovo spesso librerie molto complete, anche molto testate e
> robuste. Ma capire il *come* vanno usate per bene non e' mai particolarmente
> semplice, anche perche' spesso non ti danno il rationale della libreria, ti
> danno qualche esempio e il javadoc.

Parliamone: ancora non riesco a capire bene come funzionano le classi 
AclFileAttributes e UserDefiniedFileAttributes (o meglio, l'ho capito ed 
ancora sto bestemmiando) nonostante facciano parte della libreria standard di 
Java

> Poi aggiungo... ridurre il problema "Facebook" al front-end mi sembra un po'
> tanto ingenuo. Non vorrei dire, ma buona parte dei loro problemi non sono di
> programmazione, ma di sistema (ovvero fare scalare tutta quella roba,
> propagare i dati, etc etc etc).

Ne so qualcosa. A lavoro stiamo sviluppando qualcosa di simile e ti posso 
assicurare che nel suo piccolo sta generando un fottio di dati (ti parlo di 
10Gb di dati su database da luglio)

Enrico

signature.asc
Description: This is a digitally signed message part.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Enrico 'Henryx' Bianchi
Per il moderatore: ho inviato questo messaggio con un altro account, ignoralo

On Thursday, December 08, 2011 12:20:54 PM Carlos Catucci wrote:

> Python se non trova il modulo esegue un traceback ma e' trappabile. SOlo che
> non ha senso trapparlo. Se importo un modulo presuppongo che serva poi nel
> programma. Giusto quindi segnalare l'errore.

Ha senso, ha senso. Pensa ad esempio ad un applicativo che deve girare su piu` 
sistemi operativi, in cui per ogni sistema operativo usa delle librerie 
specifiche (e.g. pywin32). Trappando l'eccezione ad esempio sulla creazione 
della classe, puoi gestire il fatto che stai girando su di un altro sistema 
oppure il fatto che la libreria non sia stata installata

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


Re: [Python] Accedere alla documentazione di una libreria offline

2011-12-11 Per discussione Marco Giusti
On Sat, Dec 10, 2011 at 01:52:04PM +0100, Marco Beri wrote:
> 2011/12/10 Andrea Francia 
> 
> > Io uso Vim per programmare, qualcuno conosce qualche barbatrucco utile con
> > questo editor?
> >
> 
> Io uso pyflakes

io lo uso con la seguente configurazione:

in ~/.vimrc:
autocmd FileType * map  :make
autocmd FileType * map  :cp
autocmd FileType * map  :cn
autocmd FileType python map compiler pyflakes

in ~/.vim/compiler/ ho il file pyflakes.vim che allego

con  lanci pyflakes e con  e  vai avanti e indietro tra gli
errori.

un paio di linee che non fanno male:

autocmd FileType python match ErrorMsg '\%>79v.\+'
autocmd BufWritePre *.py,*.c %s/\s\+$//e" Trim ending spaces
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Marco Milanesi

On 12/11/2011 11:58 AM, Carlos Catucci wrote:


non conosco benissimo pyqt, ma un django (come semplicità e rapidità) 
per non web non lo è di certo.




http://www.python-camelot.com/

ci ho *giocato* un pochino, e non e` malissimo. basato su pyqt4

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


Re: [Python] Un videogioco fatto con la standard library

2011-12-11 Per discussione Francesco Maida
Il 10 dicembre 2011 18:39, enrico franchi  ha scritto:
>
> Quanto odio il fatto che il codice non sia browsabile...

C'è anche quello:
http://paste.pocoo.org/show/222646/
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Un videogioco fatto con la standard library

2011-12-11 Per discussione Francesco Maida
Il 11 dicembre 2011 09:41, Daniele Zambelli
 ha scritto:
>
> Per quanto riguarda la riga 17, l'espressione:
>
> (key==KEY_RIGHT and 1 or key==KEY_LEFT and -1)
>
> restituisce 1 o -1 a seconda del tasto premuto. [...]
>>
> Quindi l'intera riga 17:
>
>    snake.insert(0,[snake[0][0]+(key==KEY_RIGHT and 1 or key==KEY_LEFT and -1),
>                           snake[0][1]+(key==KEY_DOWN and 1 or
> key==KEY_UP and -1)])
>
> aggiunge come primo elemento della lista snake un elemento uguale al
> precedente ma con i valori incrementati o decrementati di uno in base
> al tasto premuto.


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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
> A me non pare che tu stia facendo un confronto alla pari: stai
confrontando

> > la programmazione tramite un framework per web con quella senza framework
> > per desktop.
>

Quello sto dicendo, mi sono spiegato male. Non abbiamo un framework NON
web. La cosa in se e' grave. Visto che il web per sua natura,
indipendentemente da linguaggio e OS ospite, si basa sulla compatibilita'
dei vari browser, e quindi la forza di python della portabilita' as is del
codice (fatti salvi i casi particolari come pywin) si perde. Certo
rimangono tanti altri pregi, ma sarebbe bello avere uno strumento come
Django per sviluppare in client/server.

> come qt, gtk o wx, semmai lo devi paragonare (salvo la maturità degli
> strumenti) con dei framework costruiti con quelle come Camelot [1], Sqlkit
> [2] o Dabo [3] o con framework specialisti come OpenERP [4].

Camelot lo scopro or ora (ammetto la mia Grassa ignoranza). Ad essere
sincero credevo fosse un qualcosa tipo Elixir legato a SqlAlchemy (i
problemi di una formazione culturale basta su passioni fantasy).

Sqlkit lo vedo piu' come un aggiungi schermate per gestire una serie di
tabelle.

Dabo lo avevo guardato un bel po' di rtempo fa, e mi sembrava immaturo.
Adesso ci guardo di nuovo.

http://blogs.gnome.org/alexl/2011/03/15/gtk-html-backend-update/
>
> Chi non ci vede nulla di interessante dal punto di vista pratico (non
> sono ancora sicuro di vedercelo neanche io) lo veda come una curiosità
> da nerd, no problem!
>
> Devo guardarci bene (appena ho tempo)

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
Ha senso, ha senso. Pensa ad esempio ad un applicativo che deve girare su
piu`

> sistemi operativi, in cui per ogni sistema operativo usa delle librerie
> specifiche (e.g. pywin32). Trappando l'eccezione ad esempio sulla creazione
> della classe, puoi gestire il fatto che stai girando su di un altro sistema
> oppure il fatto che la libreria non sia stata installata
>

Hai pienamente ragione. Io mi riferivo al caso generale. Ma non avevo preso
in considerazione il caso da te illustrato (forse perche' in generale
aborro usare librerie specifich di un OS perche' perdo la portabilita'
appunto).

Qui serve, per chiarire una piccola spiegazione.

Io programmo ormai da tanti anni. In tempi in cui Internet era una follia
(il massimo disponibile era Fidonet per capirci) avevo ideato di scrivere
delle librerie per C dove wrappare le varie chiamate di elementi grafici
(esempio creare una finestra) che compilando su varie piattaforme usava il
giusto codice. Per capirci io compilavo del codice tipo:


Window win1 = createWin( "Ma fienstra", 0,0,300,100 ... );

Poi a seconda che fosse Win, Mac (all'epoca non OS X) o Unix (Motif
all'epoca) la chiamata veniva tradotta a compile time in una chiamata al
codice adeguato.

non avendo all'epoca le possibilita di oggi il progetto, da sviluppare come
one-man-band e' stato abbandonato, poi ho scoperto, tanto tempo dopo,
Python e WxWidgets.

Lo dico solo epr far capire come la portabilita' sia un mio "pallino", una
"fissa". Compatitemi pure. :)

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Un videogioco fatto con la standard library

2011-12-11 Per discussione Daniele Tricoli
On Sunday 11 December 2011 09:41:02 Daniele Zambelli wrote:
> Grazie per il link

Non mi piace farmi pubblicità... ma magari può interessare. Questo è un 
semplicissimo snake che realizzai tempo fa perché dovevo illustrare il 
funzionamento della FFI di Python e mi serviva un esempio più accattivante 
del richiamare qualcosa dalla libc.

Il codice è qui:
http://mornie.org/code/browser/misc/snake.py

Utilizza libcaca che, se non ricordo male, dovrebbe andare anche su 
Windows: il codice però non è pensato per essere multipiattaforma. 
L'esercizio è lasciato al lettore ;)

Quattro commenti ed uno screenshot sono qui:
http://mornie.org/blog/2007/03/25/Playing-with-ctypes-and-libcaca/

HTH,

-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 07/12/2011 18:17, Giampaolo Rodolà ha scritto:
> [...]
>> Non devi neanche gestire le eccezioni, è chiaro che è molto implicito e che
>> sa un po' di quick and dirty, ma
>>  1) in alcuni casi non serve
>>  2) e se serve allora hai sbagliato linguaggio :-(
> 
> Scusa ma con tutta la buona volontà non riesco a digerire una cosa di
> questo tipo:
> 
> php > print '3viso'+2;
> 5
> 

Scusa, ma di cosa vi scandalizzate?
Anche Common Lisp lo permette, almeno 10 anni prima di PHP:

$clisp -q -norc
[1]> (setf (fdefinition 'read-string) (get-macro-character #\"))
#
[2]>
(set-macro-character #\"
  #'(lambda (stream char)
  (let* ((buf (read-string stream char))
 (n (parse-integer buf :junk-allowed t)))
n)))
T
[3]> (+ "3viso" 2)
5


> [...]



Ciao  Manlio
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk7k91UACgkQscQJ24LbaUT1mACfV3jTGNBqgH7opuzj5uiDfKSH
+60AnRi3sxH+Wnu2NGP3xMTuBw3Yn4t9
=TwU5
-END PGP SIGNATURE-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
Scusa, ma di cosa vi scandalizzate?

> Anche Common Lisp lo permette, almeno 10 anni prima di PHP:
>
> $clisp -q -norc
> [1]> (setf (fdefinition 'read-string) (get-macro-character #\"))
> #
> [2]>
> (set-macro-character #\"
>  #'(lambda (stream char)
>  (let* ((buf (read-string stream char))
> (n (parse-integer buf :junk-allowed t)))
>n)))
> T
> [3]> (+ "3viso" 2)
> 5
>

Guarda ti credo sulla parola, non ho voglia di tirare fuori la stele di
rosetta per tradurre :)

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Daniele Tricoli
On Sunday 11 December 2011 19:32:53 Manlio Perillo wrote:
> Scusa, ma di cosa vi scandalizzate?
> Anche Common Lisp lo permette, almeno 10 anni prima di PHP:
> 
> $clisp -q -norc
> [1]> (setf (fdefinition 'read-string) (get-macro-character #\"))
> #
> [2]>
> (set-macro-character #\"
>   #'(lambda (stream char)
>   (let* ((buf (read-string stream char))
>  (n (parse-integer buf :junk-allowed t)))
> n)))
> T
> [3]> (+ "3viso" 2)
> 5

Non conosco LISP (è nalla mia todo list), però così non vale!

Utilizzando in maniera interattiva l'interprete Python si può ottenere lo 
stesso risultato con sys.displayhook. :P

-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
> $clisp -q -norc

> > [1]> (setf (fdefinition 'read-string) (get-macro-character #\"))
> > #
> > [2]>
> > (set-macro-character #\"
> >   #'(lambda (stream char)
> >   (let* ((buf (read-string stream char))
> >  (n (parse-integer buf :junk-allowed t)))
> > n)))
> > T
> > [3]> (+ "3viso" 2)
> > 5
>


> Utilizzando in maniera interattiva l'interprete Python si può ottenere lo
> stesso risultato con sys.displayhook. :P
>

Vorresti forse insinuare che con python e' infinitamente piu' semplice da
scrivere e da capire? Cattivo! Fare simil basse insinuazioni :)

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Daniele Tricoli
On Sunday 11 December 2011 20:02:18 Carlos Catucci wrote:
> Vorresti forse insinuare che con python e' infinitamente piu' semplice
> da scrivere e da capire? Cattivo! Fare simil basse insinuazioni :)

Ovviamente volevo dire sys.excepthook, sorry.

Beh, visto che l'universo del discorso è comune, sarebbe più semplice da 
capire ;)

-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 11/12/2011 20:13, Daniele Tricoli ha scritto:
> On Sunday 11 December 2011 20:02:18 Carlos Catucci wrote:
>> Vorresti forse insinuare che con python e' infinitamente piu' semplice
>> da scrivere e da capire? Cattivo! Fare simil basse insinuazioni :)
> 
> Ovviamente volevo dire sys.excepthook, sorry.
> 

E come si fa?


Ciao  Manlio
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk7lEKUACgkQscQJ24LbaUTbtgCgkNkhBWkd2NENKliSU1sys/XL
+TEAn2otu6MQhaHRaJYe1hXq5q3aqNYO
=/Z5A
-END PGP SIGNATURE-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 11/12/2011 19:39, Carlos Catucci ha scritto:
> Scusa, ma di cosa vi scandalizzate?
> 
> Anche Common Lisp lo permette, almeno 10 anni prima di PHP:
> 
> $clisp -q -norc
> [1]> (setf (fdefinition 'read-string) (get-macro-character #\"))
> #
> [2]>
> (set-macro-character #\"
>  #'(lambda (stream char)
>  (let* ((buf (read-string stream char))
> (n (parse-integer buf :junk-allowed t)))
>n)))
> T
> [3]> (+ "3viso" 2)
> 5
> 
> 
> Guarda ti credo sulla parola, non ho voglia di tirare fuori la stele di
> rosetta per tradurre :)
> 

Quello che fa quel codice (in particolare la funzione
set-macro-character) è modificare il modo in cui Common Lisp legge una
stringa (intesa come sequenza di caratteri delimitati da virgolette).

Invece di restituire un oggetto stringa, converte la stringa in intero,
restituendo nil se non è possibile.
Con una piccola modifica è possibile fargli restituire 0, al posto di nil.

Ovviamente è ben diverso da quello che fa PHP, che converte una stringa
in numero solo quando viene passata come parametro ad un operatore che
opera su numeri (se ho capito bene).

"Purtroppo" in Common Lisp l'operatore + non è generico, e non è quindi
possibile specializzarlo quando uno degli operandi è una stringa e
l'altro un numero (CLOS, il sistema ad oggetti di Common Lisp supporta i
multimetodi [1]).


[1] http://en.wikipedia.org/wiki/CLOS
http://en.wikipedia.org/wiki/Multiple_dispatch


Ciao  Manlio
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk7lFSsACgkQscQJ24LbaUTuOACghVSTCtohvDorVy2HU+ZxyckX
wxQAn3EufaR/iIsPtjz1oM67hByy6US6
=qIVM
-END PGP SIGNATURE-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione enrico franchi
2011/12/11 Manlio Perillo 

> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> Il 07/12/2011 18:17, Giampaolo Rodolà ha scritto:
> > [...]
> >> Non devi neanche gestire le eccezioni, è chiaro che è molto implicito e
> che
> >> sa un po' di quick and dirty, ma
> >>  1) in alcuni casi non serve
> >>  2) e se serve allora hai sbagliato linguaggio :-(
> >
> > Scusa ma con tutta la buona volontà non riesco a digerire una cosa di
> > questo tipo:
> >
> > php > print '3viso'+2;
> > 5
> >
>
> Scusa, ma di cosa vi scandalizzate?
> Anche Common Lisp lo permette, almeno 10 anni prima di PHP:
>

Dimmi che e' una battuta che io non colgo...
Comunque, bella forza, gli hai esplicitamente detto di farlo!

In Python non mi viene in mente quale sarebbe il metodo piu' rapido.

Comunque tenendo conto che in lisp puoi cambiare il linguaggio stesso, sono
davvero poche le cose che non puoi fare.


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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione enrico franchi
2011/12/11 Carlos Catucci 

Quello sto dicendo, mi sono spiegato male. Non abbiamo un framework NON
> web. La cosa in se e' grave. Visto che il web per sua natura,
> indipendentemente da linguaggio e OS ospite, si basa sulla compatibilita'
> dei vari browser, e quindi la forza di python della portabilita' as is del
> codice (fatti salvi i casi particolari come pywin) si perde. Certo
> rimangono tanti altri pregi, ma sarebbe bello avere uno strumento come
> Django per sviluppare in client/server.
>

A me sembra invece che di framework non-web ne abbiamo tantissimi. Semmai
la questione e' che non puoi fare GUI senza un framework. Ok... formalmente
puoi farti dare un area dello schermo e disegnarci a botte di poligoni.

Cioe' bisogna definire cosa sia un framework web per te. Mi spiego... cosa
sia un framework piu' o meno lo sappiamo tutti, incartapecorirsi sulla
definizione e' inutile.

Quindi il punto e' cosa ha un framework web che tu senti che manca sul
desktop?



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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione enrico franchi
2011/12/11 Enrico 'Henryx' Bianchi 

>
> > Quantifico il "nulla": query molto semplici in lettura e scritture
> > relativamente semplici.  Buona parte del carico era sul DB
>
> Mi viene voglia di citare il degno compare di PHP, ma io sono maligno :)
>

Ah, certo! Ma il compare fa schifo per i fatti suoi: a fare query semplici
su dati poco strutturati notoriamente ce la fa. Quando non si perde i dati
o non fa altre spettacolari cazzate, intendo.


>
> > Per dire in Java trovo spesso librerie molto complete, anche molto
> testate e
> > robuste. Ma capire il *come* vanno usate per bene non e' mai
> particolarmente
> > semplice, anche perche' spesso non ti danno il rationale della libreria,
> ti
> > danno qualche esempio e il javadoc.
>
> Parliamone: ancora non riesco a capire bene come funzionano le classi
> AclFileAttributes e UserDefiniedFileAttributes (o meglio, l'ho capito ed
> ancora sto bestemmiando) nonostante facciano parte della libreria standard
> di
> Java
>

Se vuoi ci guardo... :P



> > Poi aggiungo... ridurre il problema "Facebook" al front-end mi sembra un
> po'
> > tanto ingenuo. Non vorrei dire, ma buona parte dei loro problemi non
> sono di
> > programmazione, ma di sistema (ovvero fare scalare tutta quella roba,
> > propagare i dati, etc etc etc).
>
> Ne so qualcosa. A lavoro stiamo sviluppando qualcosa di simile e ti posso
> assicurare che nel suo piccolo sta generando un fottio di dati (ti parlo di
> 10Gb di dati su database da luglio)


Mi hai incuriosito tantissimo...


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


Re: [Python] [OT]: PHP critique [ERA] Re: Python e html

2011-12-11 Per discussione Carlos Catucci
>
>
> Quindi il punto e' cosa ha un framework web che tu senti che manca sul
> desktop?
>
>
Dopo avere visto Camelot mi rimangio tuto. Certo parlo dopo avere dato una
occhiata a cosa puo' fare, ma di Django mi sono innamorato dopo avere letto
(senza manco provare, sulla fiducia) il tutorial in 4 parti.

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python