Re: [Python] Turbopascal??

2011-01-05 Per discussione Marco Bonifazi
2011/1/4 Marco Mariani 

>
> Insegnare a fare qualcosa in Turbopascal non sara' piu' semplice rispetto a
> Python, spiegarlo tutto si'.
>
>
>
> Qui secondo me c'e' racchiuso il cuore del discorso: si preferisce qualcosa
che sia facile da spiegare a qualcosa che sia utile da spiegare.
Ho dato un esame di Fondamenti di Informatica con Pascal all'universita'
(ottimamente): completamente inutile e me ne sono totalmente dimenticato,
tant'e' che ora neanche riuscirei a riconoscere il linguaggio dal codice.
Invece di usare Pascal, a questo punto, meglio usare uno pseudocodice (come
fatto in altri esami, ad esempio di algoritmi).
O perche' no, il Mix di Knuth, visto che e' usato nella bibbia.

Un altro esame che feci fu Calcolatori elettronici, in cui pur di non
insegnare il C o l'assembly x86, il professore preferi' l'uso di un
processore con assembly didattico.  Vai a capire cosa impediva l'uso di un
assembly con magari un numero di istruzioni ridotto.

E' un po' lo stesso discorso del latino al liceo, la cui motivazione e'
spesso "ti insegna a strutturare meglio la frase" o "stimola la logica",
come se altre lingue con declinazioni e coniugazioni, ad esempio il tedesco,
non potessero farlo comunque.

Non vedo ostacoli didattici nell'insegnare un sottoinsieme del sottoinsieme
di un linguaggio usato in ambito lavorativo, a parte la fatica da parte
degli insegnanti di riscriversi le dispense e gli esercizi.
Sembra che prendere due piccioni con una fava, cioe' insegnare la logica
della programmazione e contemporaneamente un minimo di linguaggio, sia un
qualcosa di sporco e sbagliato, in nome di una ipotetica, teorica e non
dimostrata miglior adattabilita' del Pascal alla didattica.

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


Re: [Python] Idle si blocca su Mac

2011-01-05 Per discussione Nicola Iarocci
>
> > Io ho risolto con la 32 bit.
>
> Ok. Ti ringrazio. Se installo sopra la 64bit non ci sono problemi, vero?
>

Io credo di aver rimosso prima la 64 ma credo non ci siano problemi.

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


Re: [Python] Turbopascal??

2011-01-05 Per discussione Massimo Capanni
Qui secondo me c'e' racchiuso il cuore del discorso: si preferisce qualcosa
> che sia facile da spiegare a qualcosa che sia utile da spiegare.
>

caliamoci  per un attimo nei panni di chi dovrebbe insegnare un linguaggio
di programmazione:

- a chi devo insegnare? bambini? ragazzi delle medie superiori? studenti
universitari? a seconda della situazione cambia sia il metodo di
insegnamento sia che cosa devo insegnare, e la scelta del linguaggio la
farei in base alle capacita' ricettive dei miei potenziali alunni (ignorare
in certi contesti chi ho davanti fa la differenza fra un bravo insegnante e
uno 'meno' bravo ...)

- quanto tempo avro' a disposizione per l'insegnamento? meno tempo significa
fare delle scelte su come impostare gli argomenti, quali inserire nel
programma di studio e quali lasciare fuori e sinceramente opterei per un
linguaggio che almeno in superficie non mi ponga tanti problemi di
apprendimento

- che mezzi ho a disposizione per insegnare? un pc ogni 5 allievi? che cosa
posso pretendere se mancano pure gli strumenti ...

personalmente poi preferisco dare poco ma con quel poco fare in modo che si
raggiunga un obiettivo: dopo vent'anni ho ripreso a programmare e ho scelto
python e sinceramente anche se sono solo agli inizi, un vero pivello :-),
altro che lacrimucce ho avuto quando ho risolto un problema concreto con le
poche nozioni che avevo imparato.

morale: imparare è un casino, insegnare ancor di piu'
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione enrico franchi
2011/1/5 Pietro Battiston :

>> E poi mi sembra che continuiamo a non definire il problema. Dobbiamo
>> insegnare ad un bambino di 12 anni, ad un ragazzo di 16 o a uno di 19?
>
> ... e (scusate se mi ripeto) un ragazzo per cui la programmazione sarà
> (probabilmente) una componente fondamentale del mondo lavorativo, oppure
> no?

Beh, si ovviamente. Diciamo che nel caso dei 12 anni la risposta e'
banale (don't know).
E in un certo senso lo e' anche per l'universitario: se si ha un corso
di programmazione, un modo o nell'altro gli servira'. Magari non
andra' a scrivere "sistemi" (ma anche li, quandi matematici o fisici
finiscono poi a fare gli informatici), ma potrebbe comunque servirgli
come aiuto per il suo lavoro (programmi di analisi dati, etc). Quindi
direi che si, anche in questo caso e' fondamentale. In un itis
verrebbe da dire che anche qui, si lo e' (ovviamente parliamo di
elettronico/informatico).

Ma alla fin fine io sono convinto che Python continui ad essere ottimo
per *tutti* questi ambiti. Per il programmatore "occasionale" e'
comodo. Per chi dovra' lavorare e' comodo (sia che poi faccia il
programmatore, il sistemista o altro). Per chi deve fare lo
"scienziato" pure (perche' offre una serie di librerie che aiutano chi
fa questo mestiere).

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


Re: [Python] Turbopascal??

2011-01-05 Per discussione Vittorio Zuccala'
Dopo tanti post seguiti con attenzione ho deciso di scrivere anche io..
La questione principale mi sembra essere "Perchè TurboPascal e non, ad
esempio, il nostro amato Python alle scuole?"

Ebbene, vi pongo una semplice domanda: quanti di voi sono insegnanti o hanno
avuto esperienze come docenti nel campo informatico?
Avete mai provato a spiegare un "SE" concatenato ad un altro "SE" per
esempio su Excel ad una platea di almeno una quindicina di alunni che magari
lavorano quotidianamente sul PC?
Non parlo di tecnici ma di persone (nemmeno bambini!!!) che lavorano sul PC
8h al giorno per cui do per scontato che abbiano una certa confidenza con lo
strumento.

Se la risposta è si allora penso che la conclusione sia "W qualsiasi
linguaggio; anche TurboPascal"
Se la risposta è no allora sono convinto che "Python e solo python può
insegnare a programmare" possa essere una delle soluzioni alla questione.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Marcello
Che lunga discussione sulla didattica... capisco perche` sia un lavoro
cosi` faticoso.

2011/1/5 Vittorio Zuccala' :
> Dopo tanti post seguiti con attenzione ho deciso di scrivere anche io..
> La questione principale mi sembra essere "Perchè TurboPascal e non, ad
> esempio, il nostro amato Python alle scuole?"
>
> Ebbene, vi pongo una semplice domanda: quanti di voi sono insegnanti o hanno
> avuto esperienze come docenti nel campo informatico?
> Avete mai provato a spiegare un "SE" concatenato ad un altro "SE" per
> esempio su Excel ad una platea di almeno una quindicina di alunni che magari
> lavorano quotidianamente sul PC?
> Non parlo di tecnici ma di persone (nemmeno bambini!!!) che lavorano sul PC
> 8h al giorno per cui do per scontato che abbiano una certa confidenza con lo
> strumento.
>
> Se la risposta è si allora penso che la conclusione sia "W qualsiasi
> linguaggio; anche TurboPascal"
> Se la risposta è no allora sono convinto che "Python e solo python può
> insegnare a programmare" possa essere una delle soluzioni alla questione.
>
>
>
> ___
> 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] Turbopascal??

2011-01-05 Per discussione Massimo Capanni
Il giorno 05 gennaio 2011 11:21, Marcello  ha
scritto:

> Che lunga discussione sulla didattica... capisco perche` sia un lavoro
> cosi` faticoso.
>

se viene preso a cuore si, altrimenti non c'è da sforzarsi tanto
dell'andazzo generale dell'istruzione  ;-)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Idle si blocca su Mac

2011-01-05 Per discussione Karim Gorjux
2011/1/5 Nicola Iarocci :
> Io credo di aver rimosso prima la 64 ma credo non ci siano problemi.

Sembra funzionare tutto ora. Grazie.

-- 
K.
Blog Personale: http://www.karimblog.net
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Carlo Miron
2011/1/5 Vittorio Zuccala' :
> Dopo tanti post seguiti con attenzione ho deciso di scrivere anche io..

Bravo!

> La questione principale mi sembra essere "Perchè TurboPascal e non, ad
> esempio, il nostro amato Python alle scuole?"

Concordo.

> Ebbene, vi pongo una semplice domanda: quanti di voi sono insegnanti o hanno
> avuto esperienze come docenti nel campo informatico?

Diversi personaggi intervenuti qui, direi, come puoi verificare
leggendo i relativi post.
E anch'io, per dire, ho tenuto nel tempo svariati corsi in ambito informatico.

> Avete mai provato a spiegare un "SE" concatenato ad un altro "SE" per
> esempio su Excel ad una platea di almeno una quindicina di alunni che magari
> lavorano quotidianamente sul PC?

Io sicuramente no, e mi sfugge il tuo punto. Tra l'altro, ti confesso
che non sono _sicurissimo_ di saper concatenare due "SE" in Excel...
;)

> Non parlo di tecnici ma di persone (nemmeno bambini!!!) che lavorano sul PC
> 8h al giorno per cui do per scontato che abbiano una certa confidenza con lo
> strumento.

Io lavoro (ben) piu` di 8h al giorno davanti ad un PC, ed ehm ritengo
di averne una certa confidenza. Ma magari non so concatenare due "SE"
in Excel. E` grave, dottore? :)

> Se la risposta è si allora penso che la conclusione sia "W qualsiasi
> linguaggio; anche TurboPascal"

Mi sfugge il punto anche qui. Probabilmente perche` la mia risposta
non e` si`, sigh.

> Se la risposta è no allora sono convinto che "Python e solo python può
> insegnare a programmare" possa essere una delle soluzioni alla questione.

Io non sono molto d'accordo con quanto affermi qui, eh. Soprattutto
sulla parte "e solo".
Hai voglia di elaborare il tuo pensiero?

Grazie,
©
-- 
Carlo Miron
Turbo Pascal Solution Architect™
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Carlos Catucci
2011/1/5 Enrico 'Henryx' Bianchi 

>  > impediva di farlo, quindi eri sicuro.
>
> > in Pascal (per riprendere il discorso originale) avevi un linguaggio che
> ti
>


> Dipende da cosa intendi per fuoripista, ovvero, anche in Pascal esiste la
> logica dei puntatori ed il GOTO
>

Il GOTO in C io lo ho sempre considerato una bestemmia. I puntatori in C (es
puntatori a funzioni o puntatori a puntatori con relativa matematica degli
stessi, che per alcuni era davvero un incubo) non so se il PasQual  (come lo
chiamavamo amabilmente ]:P) li gestiva.

> Ma, come commentava non ricordo chi,
> > preferisci un linguaggio bolso che ti costringe a fare le cose in un
> certo
> > modo o uno che ti lascia libero di sperimentare e sbagliare?
>
> Personalmente, se devo imparare, preferisco linguaggi che mi costringano a
> pensarla in un certo modo, sia per la costruzione dell'applicativo (e.g.
> Pascal), sia per la strutturazione del codice (e.g. Python). Se mi
> interessa
> di avere la liberta` di fare quello che voglio, allora C o Perl sono
> perfetti
> (non a caso esiste l'IOCCC e l'OPC)
>

Il Perl e' write only. Ciodetto io so che non si impara a nuotare con un
corso per corrispondenza ma gettandosi in acqua. Poi questione di gutsi, per
carita'.


> Enrico
> P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe piu`
> attenzione ma che, ahime`, stenta a farsi strada nel mondo informatico: D
>

Sentito parlare ma non ho avuto tempo di guardarci. Se dici che vale la pena
una occhiata vedro' di dargliela. Per cultura personale se non altro.


Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Vittorio Zuccala'
Il giorno 05 gennaio 2011 15:56, Carlo Miron  ha scritto:

>  Io lavoro (ben) piu` di 8h al giorno davanti ad un PC, ed ehm ritengo
> di averne una certa confidenza. Ma magari non so concatenare due "SE"
> in Excel. E` grave, dottore? :)
>

No no no: ed è proprio questa il punto.
Molti miei colleghi che programmano su AS400 ogni giorno non sanno
concatenare due SE excel
ma se gli spiego la sintassi in 30 secondi ne concatenano anche 10 perchè
conoscono il concetto che
vi sta alle spalle, il VERO o FALSO etc etc.
L'utente che passa 8h/giorno davanti al PC ed ancor di più un bambino,
questo concetto non lo hanno.
Per questo motivo concordo con chi dice che uno strumento di programmazione
vale l'altro.


> Io non sono molto d'accordo con quanto affermi qui, eh. Soprattutto
> sulla parte "e solo".
> Hai voglia di elaborare il tuo pensiero?
>

Certamente :-)
Penso di averlo fatto sopra in questa mail.

Il concetto è che per insegnare il concetto di IF, i cicli, le funzioni
un linguaggio vale l'altro.
Prima di arrivare a python, come penso la maggior parte delle persone di
questa lista, ho programmato con altri linguaggi e non ho trovato difficoltà
a iniziare.
Il fatto che si scriva "if condizione:" anzichè "if condizione{ }" non
influisce nel ragionamento.
Ma se non capisci il concetto di VERO-else-FALSO...

Le difficoltà arrivano dopo, quando inizi ad affrontare problemi complessi
ma, come ha detto qualcuno, nella scuola non si arriva a tale punto.

Conclusione (mia ovviamente :-) ): TurboPascal va benissimo come andrebbe
benissimo qualsiasi altro linguaggio di programmazione che sia pulito e
semplice.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Roberto De Ioris

Il giorno 05/gen/2011, alle ore 17.15, Carlos Catucci ha scritto:

>  
> Dipende da cosa intendi per fuoripista, ovvero, anche in Pascal esiste la
> logica dei puntatori ed il GOTO
> 
> Il GOTO in C io lo ho sempre considerato una bestemmia.


dipende da l'uso che ne fai, nel kernel di Linux ad esempio ce ne sono a pacchi 
(e' lo stile consigliato per gestire gli errori).
Nello stesso sorgente python ne trovi a iosa. Diciamo che il pensiero "comune" 
e' che sia un ottimo
modo per rendere piu' leggibile il codice quando dovresti mettere tonnellate di 
if/else

E' una vera bestemmia (e sono sicuro che e' l'uso a cui ti riferivi) usarli 
come funzioni (o 'procedure' visto che quando l'ho visto fare
era sempre da gente che veniva dal basic) o per mega-salti che si potrebbero 
evitare con un po' di rifattorizzazione

> I puntatori in C (es puntatori a funzioni o puntatori a puntatori con 
> relativa matematica degli stessi, che per alcuni era davvero un incubo) non 
> so se il PasQual  (come lo chiamavamo amabilmente ]:P) li gestiva.


di Pascal non mi ricordo, ma il problema dei puntatori 9 volte su 10 e' dovuto 
al fatto che lo "studente" non ha ben chiaro come sia strutturata la memoria di 
un calcolatore
(siamo al solito discorso di quanto e' bene o male astrarre troppo o troppo 
poco) o meglio non si aspettano che sia cosi' 'semplice' :)

> 
> Personalmente, se devo imparare, preferisco linguaggi che mi costringano a
> pensarla in un certo modo, sia per la costruzione dell'applicativo (e.g.
> Pascal), sia per la strutturazione del codice (e.g. Python). Se mi interessa
> di avere la liberta` di fare quello che voglio, allora C o Perl sono perfetti
> (non a caso esiste l'IOCCC e l'OPC)
> 
> Il Perl e' write only. Ciodetto io so che non si impara a nuotare con un 
> corso per corrispondenza ma gettandosi in acqua. Poi questione di gutsi, per 
> carita'. 
>  
> Enrico
> P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe piu`
> attenzione ma che, ahime`, stenta a farsi strada nel mondo informatico: D


+1 per tutto (incluso D)

> 

--
Roberto De Ioris
http://unbit.it

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


[Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Daniele Varrazzo
On Wed, 5 Jan 2011 17:15:13 +0100, Carlos Catucci
 wrote:

> Il GOTO in C io lo ho sempre considerato una bestemmia. 

Si vede che non hai mai gestito gli errori. :)

Riscrivi una funzione come questa  senza usare
goto e valuta se il risultato è migliore. Codice limitato a 80 colonne,
prego.

-- 
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] Turbopascal??

2011-01-05 Per discussione Carlos Catucci
> Il GOTO in C io lo ho sempre considerato una bestemmia.

dipende da l'uso che ne fai, nel kernel di Linux ad esempio ce ne sono a
> pacchi (e' lo stile consigliato per gestire gli errori).
>

Ci credo, una gestione delle eccezioni in C e' un incubo.  Io mi sono fatto
viziare, lo ammetto, dai linguaggi a oggetti, dai cari vecchi e confortevoli
Try / Except||Catch / Finally  (che poi in poi in python ho scoperto avere
anche Else, genialata massima).

Nello stesso sorgente python ne trovi a iosa. Diciamo che il pensiero
> "comune" e' che sia un ottimo
> modo per rendere piu' leggibile il codice quando dovresti mettere
> tonnellate di if/else
>

Mmm. Io in C ho scritto un casino di roba. Ambiente Unix, X-Window con Motif
su Sun, negli anni d'oro (1989-1994) e ai goto ho sempre preferito delle
chiamate a funzioni appoite dove mettere le logiche. E il mio codice e' da
sempre leggibilisimo (anche se devo usare mer..cce di linguaggio come VB6).
Con Python poi per scrivere codice illeggibile ci si deve impegnare.


> E' una vera bestemmia (e sono sicuro che e' l'uso a cui ti riferivi) usarli
> come funzioni (o 'procedure' visto che quando l'ho visto fare era sempre da
> gente che veniva dal basic) o per mega-salti che si potrebbero evitare con
> un po' di rifattorizzazione
>

Appunto. Comunque il GOTO per gestire gli errori fa davvero tanto VB6 (on
error goto etichetta).


> di Pascal non mi ricordo, ma il problema dei puntatori 9 volte su 10 e'
> dovuto al fatto che lo "studente" non ha ben chiaro come sia strutturata la
> memoria di un calcolatore
>

Non dio che siano difficili, solo che parecchi ci hanno sbattuto il muso di
brutto facendo cose (danni e' piu' corretto) incredibili. Se poi capisci la
logica penso che anche la fisica nucleare sia relativamente semplice.


> (siamo al solito discorso di quanto e' bene o male astrarre troppo o troppo
> poco) o meglio non si aspettano che sia cosi' 'semplice' :)
>

Le astrazioni vanno bene, ma a me piace che il linguaggio mi permetta di
scendere a basso livello se serve.

Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Carlos Catucci
> Il GOTO in C io lo ho sempre considerato una bestemmia.

>
> Si vede che non hai mai gestito gli errori. :)
>
> Riscrivi una funzione come questa  senza usare
> goto e valuta se il risultato è migliore. Codice limitato a 80 colonne,
> prego.
>

 554 if (!(egtrid = PyObject_CallFunction(group, "i", 2))) { goto exit;
}
 555 if (!(gtrid = _xid_decode64(egtrid))) { goto exit; }
 557 if (!(ebqual = PyObject_CallFunction(group, "i", 3))) { goto exit;
}
 558 if (!(bqual = _xid_decode64(ebqual))) { goto exit; }
 560 /* Try to build the xid with the parsed material */
 561 rv = (XidObject *)PyObject_CallFunctionObjArgs((PyObject
*)&XidType,
 562 format_id, gtrid, bqual, NULL);

/* Versione modificata */

 554   if (!(egtrid = PyObject_CallFunction(group,"i",2)))
 555   {
 556   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
group, m  );
 557   }
 558   if (!(gtrid = _xid_decode64(egtrid)))
 559   {
 560   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
group, m  );
 561   }
 562   if (!(ebqual = PyObject_CallFunction(group, "i", 3)))
 563   {
 564   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
group, m  );
 565   }
 566   if (!(bqual = _xid_decode64(ebqual)))
 567   {
 568   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
group, m  );
 569   }
 570   /* Try to build the xid with the parsed material */
 571   rv = (XidObject *)PyObject_CallFunctionObjArgs((PyObject *)&XidType,
 572   format_id, gtrid, bqual, NULL);

 ... PyObject fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
group, m )
 ... {
 ...   Py_XDECREF(bqual);
   Py_XDECREF(ebqual);
   Py_XDECREF(gtrid);
   Py_XDECREF(egtrid);
   Py_XDECREF(format_id);
   Py_XDECREF(item);
   Py_XDECREF(group);
   Py_XDECREF(m);
   return rv;
 ... }

Non e' piu' pulito cosi?

Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python IDE

2011-01-05 Per discussione Massimo Capanni
avete mai provato questo? non mi sembra male

http://pype.sourceforge.net



Il giorno 31 dicembre 2010 09:42, Matteo Boscolo <
matteo.bosc...@boscolini.eu> ha scritto:

>  no ... ci sono anche io .. :-) .. anche se lo uso qualche volta per cose
> veloci :-)
>
> Il 30/12/2010 21:18, Bustin Game ha scritto:
>
> Sentite ma sono l'unico furbo che usa l'IDE di Python originale?
>
>
> ___
> Python mailing list
> pyt...@lists.python.ithttp://lists.python.it/mailman/listinfo/python
>
>
>
> Nessun virus nel messaggio.
> Controllato da AVG - www.avg.com
> Versione: 10.0.1191 / Database dei virus: 1435/3348 - Data di rilascio:
> 30/12/2010
>
>
>
> ___
> 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] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Giorgio Zoppi
Il 05 gennaio 2011 18:03, Daniele Varrazzo  ha scritto:
> On Wed, 5 Jan 2011 17:15:13 +0100, Carlos Catucci
>  wrote:
>
>> Il GOTO in C io lo ho sempre considerato una bestemmia.
>
> Si vede che non hai mai gestito gli errori. :)
>
> Riscrivi una funzione come questa  senza usare
> goto e valuta se il risultato è migliore. Codice limitato a 80 colonne,
> prego.

Be facciamo un esempio sul kernel di linux.

j...@jo-eri:~/Scaricati/linux-2.6.7$ grep -r goto . | wc -l
26980

Penso che nel paper
http://www.thocp.net/biographies/papers/goto_considered_harmful.htm
Goto Condiered Harmful, Edsger Dijkstra si riferisse all'abuso di goto.

-- 
Quiero ser el rayo de sol que cada día te despierta
para hacerte respirar y vivir en me.
"Favola -Moda".
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Daniele Varrazzo
On Wed, 5 Jan 2011 18:21:19 +0100, Carlos Catucci
 wrote:
>> Il GOTO in C io lo ho sempre considerato una bestemmia.
> 
>>
>> Si vede che non hai mai gestito gli errori. :)
>>
>> Riscrivi una funzione come questa  senza
>> usare
>> goto e valuta se il risultato è migliore. Codice limitato a 80 colonne,
>> prego.

>  554   if (!(egtrid = PyObject_CallFunction(group,"i",2)))
>  555   {
>  556   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
> group, m  );
>  557   }
>  558   if (!(gtrid = _xid_decode64(egtrid)))
>  559   {
>  560   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
> group, m  );
>  561   }
>  562   if (!(ebqual = PyObject_CallFunction(group, "i", 3)))
>  563   {
>  564   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
> group, m  );
>  565   }
>  566   if (!(bqual = _xid_decode64(ebqual)))
>  567   {
>  568   fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id, item,
> group, m  );
>  569   }
>  570   /* Try to build the xid with the parsed material */
>  571   rv = (XidObject *)PyObject_CallFunctionObjArgs((PyObject
*)&XidType,
>  572   format_id, gtrid, bqual, NULL);
> 
>  ... PyObject fn_exit( rv, egtrid, ebqual, gtrid, egtrid, format_id,
item,
> group, m )
>  ... {
>  ...   Py_XDECREF(bqual);
>Py_XDECREF(ebqual);
>Py_XDECREF(gtrid);
>Py_XDECREF(egtrid);
>Py_XDECREF(format_id);
>Py_XDECREF(item);
>Py_XDECREF(group);
>Py_XDECREF(m);
>return rv;
>  ... }

Cioè, per ogni funzione scrivi una funzione aggiuntiva, questa in
particolare ha 9 parametri, il refactoring della funzione originale implica
ridefinire quella funzione e modificare tutti i punti in cui viene
chiamata... e tutto questo per rispettare la propria convinzione che goto
non serva in nessun caso? 

I dogma sono una brutta bestia. :)


> Non e' piu' pulito cosi?

Fammici pensare... no. Opinioni :)


-- 
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] Turbopascal??

2011-01-05 Per discussione Carlo Miron
2011/1/5 Roberto De Ioris :
>> Enrico
>> P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe piu`
>> attenzione ma che, ahime`, stenta a farsi strada nel mondo informatico: D
>
> +1 per tutto (incluso D)

Tesi: D non e` un linguaggio serio.
Dimostrazione: non esiste un binding per uWSGI.
QED,
©
-- 
Carlo Miron
Kidding Robbo Solution Architect™
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Marco Mariani
2011/1/5 Daniele Varrazzo 

I dogma sono una brutta bestia. :)
>

Amen!

Qui e' spiegato bene

http://eli.thegreenplace.net/2009/04/27/using-goto-for-error-handling-in-c/


Anche se riconosco che l'uso del pattern Appeal To Authority fa il suo
effetto, specie con Dijkstra che disse "Don't compete with me: firstly, I
have more experience, and secondly, I have chosen the weapons."
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Porting

2011-01-05 Per discussione Massimiliano Giovine
Ho scritto del codice in python 2.7 usando un webserver e ora non
funziona più niente per diversi motivi. Esiste un tool che mi permetta
di portare tutto in python 3.1?
Grazie mille!

-- 
-Massimiliano Giovine
Aksel Peter Jørgensen dice: "Why make things difficult, when it is
possible to make them cryptic and totally illogic, with just a little
bit more effort?"
Blog: http://opentalking.blogspot.com
"Linus Torvalds doesn't die, he simply returns zero."
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python IDE

2011-01-05 Per discussione Fabrizio Fortunato
Li avete detti tutti...tranne uno dei migliori :) vim + nerdtree + pyflakes
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Carlos Catucci
Cioè, per ogni funzione scrivi una funzione aggiuntiva, questa inparticolare
ha 9 parametri, il refactoring della funzione originale implica ridefinire
quella funzione e modificare tutti i punti in cui vienechiamata... e tutto
questo per rispettare la propria convinzione che goto non serva in nessun
caso?

Niet tovarich.

Primo ho scritto al volo due righe di codice estrapolando. In realta'
troverei la maniera di scrivere una funzione di gestione degli errori piu'
generica. Al posto di 9 parametri avrei passato una struttura (in mancanza
di oggetti).
Secondo, mi hai detto di scrivere qualcosa di diverso, senza usare i goto e
senza superare le 80 righe. Ho fatto quanto chiesto, nei limiti di una cosa
fatta al volo. Non e' un dogma,. solo che scrivere una cosa con GOTO e' per
me segno di pigrizia, visto che si puo' scrivere codice che non lo preveda e
sia altrettanto pulito.

> Non e' piu' pulito cosi?
> Fammici pensare... no. Opinioni :)
>

Lungi da me scatenare un FlameWar.

Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Paolo Bernardi
On Wed, 2011-01-05 at 18:29 +0100, Giorgio Zoppi wrote:
> Il 05 gennaio 2011 18:03, Daniele Varrazzo  ha scritto:
> > On Wed, 5 Jan 2011 17:15:13 +0100, Carlos Catucci
> >  wrote:
> >
> >> Il GOTO in C io lo ho sempre considerato una bestemmia.
> >
> > Si vede che non hai mai gestito gli errori. :)
> >
> > Riscrivi una funzione come questa  senza usare
> > goto e valuta se il risultato è migliore. Codice limitato a 80 colonne,
> > prego.
> 
> Be facciamo un esempio sul kernel di linux.
> 
> j...@jo-eri:~/Scaricati/linux-2.6.7$ grep -r goto . | wc -l
> 26980
> 
> Penso che nel paper
> http://www.thocp.net/biographies/papers/goto_considered_harmful.htm
> Goto Condiered Harmful, Edsger Dijkstra si riferisse all'abuso di goto.

La critica di EWD al GOTO è conseguenza della sua visione della
programmazione. Dijkstra è stato un accanito sostenitore dei metodi
formali[0][1] come strumento per limitare gli errori nei programmi; in
particolare era solito usare la logica di Floyd-Hoare[2][3].

Se date un'occhiata alla logica di Floyd-Hoare vedrete che prevede
regole per le sequenze di istruzioni, per i loop (while) e per i
condizionali (if), ma NON per i salti come il GOTO. Oltre ai problemi di
leggibilità dati dal suo *abuso*, il suo semplice *uso* rende il
programma in questione indimostrabile coi metodi visti sopra e questo
Dijkstra non lo tollerava. :-)

Paolo

P.S. Dijkstra ha scritto tanta, tanta roba (e molto interessante)...
L'archivio dei suoi documenti (ha anche una bella calligrafia!) è
online:
http://www.cs.utexas.edu/users/EWD/



[0] https://secure.wikimedia.org/wikipedia/en/wiki/Formal_methods

[1] Dijkstra si trova nel bel mezzo della cosidetta "crisi del
software" (vedi la conferenza NATO del '68), ovvero i dispositivi
digitali erano diventati troppo potenti in troppo poco tempo mentre i
programmatori erano ancora legati a tecniche vecchie (suona familiare?)
ed assai foriere di errori. EWD insiste perciò sui metodi formali per
rendere lo sviluppo di programmi meno prono ad errori, ed in particolare
su quelli postulazionali (come la logica di Floyd-Hoare) perché a suo
dire l'oggetto più simile ad un programma è una dimostrazione
matematica, sebbene nonostante la similarità di natura i programmi sono
generalmente molto più complicati di quest'ultime.

[2] https://secure.wikimedia.org/wikipedia/en/wiki/Hoare_logic

[3] ... per la correttezza parziale. Per dimostrare se un programma
termina o meno (cosa che aggiunta alla dimostrazione precedente da la
correttezza "totale") bisogna ricorrere ad altri mezzi ad-hoc, tipo
l'induzione.


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] Porting

2011-01-05 Per discussione Paolo Bernardi
On Wed, 2011-01-05 at 19:04 +0100, Massimiliano Giovine wrote:
> Ho scritto del codice in python 2.7 usando un webserver e ora non
> funziona più niente per diversi motivi. Esiste un tool che mi permetta
> di portare tutto in python 3.1?

Per diverse minuzie puoi usare 2to3:
http://docs.python.org/library/2to3.html
http://www.devx.com/opensource/Article/42380/1763/page/3

Non credo si trovi con i Python pre-installati (es. sui vari Linux o su
OSX), però basta scaricare e ricompilare la distribuzione Python
standard per ritrovarti l'eseguibile in questione dentro Tools/scripts.

Per diverse cosette funziona, ma per quelle non banali credo che dovrai
fare a mano.

Paolo


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] Turbopascal??

2011-01-05 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 05/01/2011 18:49, Carlo Miron ha scritto:
> 2011/1/5 Roberto De Ioris :
>>> Enrico
>>> P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe piu`
>>> attenzione ma che, ahime`, stenta a farsi strada nel mondo informatico: D
>>
>> +1 per tutto (incluso D)
> 
> Tesi: D non e` un linguaggio serio.
> Dimostrazione: non esiste un binding per uWSGI.

Ne ho scritto uno io, ma è troppo grosso per allegarlo in questa email
(dato che il mio ISP mette un limite sulle dimensioni delle email) :).


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

iEYEARECAAYFAk0kv4wACgkQscQJ24LbaURVRACcCjtKTz63Q5OySFJHkei7w25m
gPcAnA/FwvzHvSjpqY2e46dGXyQufor6
=mfbT
-END PGP SIGNATURE-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Enrico 'Henryx' Bianchi
On Wednesday 05 January 2011 00:40:13 Carlos Catucci wrote:

> Vorrei vederlo avvolto nelle spire del pythone :)

Personalmente no, anche perche` il suo modo di ragionare aveva senso: prima 
risolvo il problema, poi lo implemento. Per fare un esempio, in due progetti 
(uno in Java e uno in Python) di cui conosco il fine ultimo ma non ho 
verificato alcun passaggio da eseguire per arrivare al risultato finito, mi 
sono ritrovato a scrivere piu` e piu` volte a rivedere i passi di quello che 
sto facendo (e non sto parlando di fare diagrammi UML o menate del genere, ma 
di un semplice diagramma di flusso, uno di quelli che si fa in due minuti con 
carta e penna per intenderci)

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


[Python] excel OpenOffice

2011-01-05 Per discussione Filippo Dal Bosco -
Ho provato xlrd ed xlwr. Purtroppo quando si copia un file.xls non
viene copiato tutto ma una parte.

So che  OpenOffice  è accompagnato da  API per python. In questo
caso se si copia un foglio  di calcolo  OO si copia tutto? O come con
excel si copia una parte ?

grazie

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


[Python] Programmare software GUI cross platform

2011-01-05 Per discussione Karim Gorjux
Ciao a tutti, uso python da qualche mese anche se per piccole cose e
per lo più con Django. Il linguaggio è il meglio che abbia mai potuto
programmare e ne sono davvero soddisfatto per i vari motivi che voi
tutti ben sapete. Il problema o pecca o mancanza è la disponibilità di
un ambiente di sviluppo RAD.

Ho un caro amico che sviluppa in RealBasic che per un po' di tempo ho
utilizzato anche io, a cui ho fatto conoscere python. E' rimasto
entusiasta, ma mentre l'ambiente di sviluppo di RealBasic è il
classico in stile Delphi/Visual Basic, su python non si trova nulla
del genere o almeno qualcosa che permetta di sviluppare software
professionale per i suoi clienti senza sputare l'anima.

So che molti di voi ora storceranno il naso, ma con RealBasic è
possibile creare software cross platform da un unico sorgente e la GUI
è quella "nativa" del sistema operativo. Con "nativa" intendo che su
OSX il software sembra fatto con Cocoa, su Linux in GTK e su Windows
con VisualBasic.

Ho cercato su internet le varie modalità con cui è possibile
sviluppare gui in python e ho trovato:

* tkinter: già in python, ma veramente scarno
* wxPython: licenza open e ben supportato, ma le GUI sono "limitate"
* pyQT: ha il designer, ma la licenza commerciale di QT costa un botto
* pyGTK: non lo conosco, qualcuno sa dirmi di più?
* pyObjc: funziona solo su Mac

Di questi non ho trovato un designer che sia decente. Io non ho
esperienza, ho controllato, spilucchiato tutorial, installato
designer, ma non ho trovato nulla che si avvicini a un "VisualPython",
ho visto il designer di QT che sembra quello che serve, ma da quanto
ho visto è per C++ e per fare il lavoro con python non è così
immediato.

Come se non bastasse, non è nemmeno una passegiata creare
l'applicazione compilata, ma qui potrei sbagliarmi.

Concludendo: sono io che sbaglio che sono ignorante o creare software
con GUI e graficamente accattivante, almeno su Win e Mac, è una vera
faticaccia?

Vi assicuro ragazzi che se ci fosse un VisualPython commerciale io
sarei il primo a comprarlo.

Ciao!
-- 
K.
Blog Personale: http://www.karimblog.net
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Valerio De Carolis
Il 05/01/2011 19:20, Carlos Catucci ha scritto:
> Cioè, per ogni funzione scrivi una funzione aggiuntiva, questa
> inparticolare ha 9 parametri, il refactoring della funzione originale
> implica ridefinire quella funzione e modificare tutti i punti in cui
> vienechiamata... e tutto questo per rispettare la propria convinzione
> che goto non serva in nessun caso?
> 
> Niet tovarich.
> 
> Primo ho scritto al volo due righe di codice estrapolando. In realta'
> troverei la maniera di scrivere una funzione di gestione degli errori
> piu' generica. Al posto di 9 parametri avrei passato una struttura (in
> mancanza di oggetti).
> Secondo, mi hai detto di scrivere qualcosa di diverso, senza usare i
> goto e senza superare le 80 righe. Ho fatto quanto chiesto, nei limiti
> di una cosa fatta al volo. Non e' un dogma,. solo che scrivere una cosa
> con GOTO e' per me segno di pigrizia, visto che si puo' scrivere codice
> che non lo preveda e sia altrettanto pulito.
> 
> > Non e' piu' pulito cosi?
> Fammici pensare... no. Opinioni :)


Secondo me invece bisogna vedere caso per caso, non esiste un'unica
ricetta e non l'aveva certo Dijkstra tra le mani.

Cosa faresti se invece di scrivere software "standard" dovresti scrivere
software per sistemi embedded (magari con basse risorse)!?

Ha ancora senso creare una miriade di funzioni complesse differenti
(ognuna con i propri parametri e quindi con il relativo stack da
copiare) per gestire compiti semplici e di routine?

Nell'esempio precedente (psycopg) quei goto possono aiutare a migliorare
l'efficienza complessiva: si evita di fare tutti i confronti if e si
passa a delle operazioni che comunque dovranno essere eseguite.

Soprattutto nei dispositivi a basse risorse la differanza tra un jmp e
tutto l'ambaradan necessario per tirare su una funzione si vede,
soprattutto se nel mentre devi gestire qualche interrupt asincrono! ;)

Ciao,
Vale


-- 
Valerio De Carolis - http://www.decabyte.it

"To invent an airplane is nothing. To build an airplane is something.
But to fly ... is everything. - Ferdinand Ferber"

JUG Roma Coordinator - http://www.jugroma.it

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


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Andrea Ambu
Linus Torvalds scrisse:
diff -u --recursive --new-file v1.1.41/linux/kernel/sched.c linux/kernel/sched.c
--- v1.1.41/linux/kernel/sched.c   Wed Aug  3 09:32:33 1994
+++ linux/kernel/sched.c   Tue Aug  9 09:34:45 1994
@@ -161,7 +161,7 @@
  * information in task[0] is never used.
  *
  * The "confuse_gcc" goto is used only to get better assembly code..
- * Djikstra probably hates me.
+ * Dijkstra probably hates me.
  */
 asmlinkage void schedule(void)
 {



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


Re: [Python] Turbopascal??

2011-01-05 Per discussione Carlo Miron
2011/1/5 Manlio Perillo :
> Il 05/01/2011 18:49, Carlo Miron ha scritto:
>> 2011/1/5 Roberto De Ioris :
 Enrico
 P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe piu`
 attenzione ma che, ahime`, stenta a farsi strada nel mondo informatico: D
>>>
>>> +1 per tutto (incluso D)
>>
>> Tesi: D non e` un linguaggio serio.
>> Dimostrazione: non esiste un binding per uWSGI.
>
> Ne ho scritto uno io, ma è troppo grosso per allegarlo in questa email
> (dato che il mio ISP mette un limite sulle dimensioni delle email) :).

OHNOES! Manlio non fa mai piu` di una battuta all'anno, e con questa
ce lo siamo gia` giocati al 5 di gennaio :"(
Come mai? Gli piace Haskell. Dispongo di una meravigliosa
dimostrazione di questa implicazione, che non puo` essere contenuta
nel margine troppo stretto (78 caratteri) della RFC5322 §2.1.1 [1].

[1] 

©
-- 
Carlo Miron
Perillo's Last Binding Solution Architect™
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Programmare software GUI cross platform

2011-01-05 Per discussione Fabrizio Fortunato
Il giorno 05/gen/2011 20.23, "Karim Gorjux"  ha
scritto:
>
> * pyQT: ha il designer, ma la licenza commerciale di QT costa un botto
Le qt sono rilasciate anche in LGPL.
> * pyGTK: non lo conosco, qualcuno sa dirmi di più?
Prova glade, è un designer per gtk. Ovviamente se vuoi il multipiattaforma
devi installare le librerie gtk sul sistema operativo host ( su linux le hai
già )
Il giorno 05/gen/2011 20.23, "Karim Gorjux"  ha
scritto:
> Ciao a tutti, uso python da qualche mese anche se per piccole cose e
> per lo più con Django. Il linguaggio è il meglio che abbia mai potuto
> programmare e ne sono davvero soddisfatto per i vari motivi che voi
> tutti ben sapete. Il problema o pecca o mancanza è la disponibilità di
> un ambiente di sviluppo RAD.
>
> Ho un caro amico che sviluppa in RealBasic che per un po' di tempo ho
> utilizzato anche io, a cui ho fatto conoscere python. E' rimasto
> entusiasta, ma mentre l'ambiente di sviluppo di RealBasic è il
> classico in stile Delphi/Visual Basic, su python non si trova nulla
> del genere o almeno qualcosa che permetta di sviluppare software
> professionale per i suoi clienti senza sputare l'anima.
>
> So che molti di voi ora storceranno il naso, ma con RealBasic è
> possibile creare software cross platform da un unico sorgente e la GUI
> è quella "nativa" del sistema operativo. Con "nativa" intendo che su
> OSX il software sembra fatto con Cocoa, su Linux in GTK e su Windows
> con VisualBasic.
>
> Ho cercato su internet le varie modalità con cui è possibile
> sviluppare gui in python e ho trovato:
>
> * tkinter: già in python, ma veramente scarno
> * wxPython: licenza open e ben supportato, ma le GUI sono "limitate"
> * pyQT: ha il designer, ma la licenza commerciale di QT costa un botto
> * pyGTK: non lo conosco, qualcuno sa dirmi di più?
> * pyObjc: funziona solo su Mac
>
> Di questi non ho trovato un designer che sia decente. Io non ho
> esperienza, ho controllato, spilucchiato tutorial, installato
> designer, ma non ho trovato nulla che si avvicini a un "VisualPython",
> ho visto il designer di QT che sembra quello che serve, ma da quanto
> ho visto è per C++ e per fare il lavoro con python non è così
> immediato.
>
> Come se non bastasse, non è nemmeno una passegiata creare
> l'applicazione compilata, ma qui potrei sbagliarmi.
>
> Concludendo: sono io che sbaglio che sono ignorante o creare software
> con GUI e graficamente accattivante, almeno su Win e Mac, è una vera
> faticaccia?
>
> Vi assicuro ragazzi che se ci fosse un VisualPython commerciale io
> sarei il primo a comprarlo.
>
> Ciao!
> --
> K.
> Blog Personale: http://www.karimblog.net
> ___
> 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] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Carlos Catucci
> Secondo me invece bisogna vedere caso per caso, non esiste un'unica
ricetta e non l'aveva certo Dijkstra tra le mani.

Cosa faresti se invece di scrivere software "standard" dovresti scrivere
> software per sistemi embedded (magari con basse risorse)!?
>

Ma io facevo riferimento al caso da te mostrato,. Ovvio che in un embedded
devo cercare altre strade, ma se posso scegliere uso un linguaggio piu'
adeguato.

Soprattutto nei dispositivi a basse risorse la differanza tra un jmp e
> tutto l'ambaradan necessario per tirare su una funzione si vede,
> soprattutto se nel mentre devi gestire qualche interrupt asincrono! ;)
>

Ovvio che si, ma ribadisco che dipende sempre dal contesto. Si paralva in
generale del GOTO. Un salto incondizionato in embedded puo' avere un senso
(in assembly non c'e' altra strada) in alcuni contesti, ma visto che si
paralva di alto livello davo per buono l'assunto che si paralsse minimo di
palmari o tablet.

Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Roberto De Ioris

> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
>
> Il 05/01/2011 18:49, Carlo Miron ha scritto:
>> 2011/1/5 Roberto De Ioris :
 Enrico
 P.S. in tutto questo vorrei menzionare un linugaggio che meriterebbe
 piu`
 attenzione ma che, ahime`, stenta a farsi strada nel mondo
 informatico: D
>>>
>>> +1 per tutto (incluso D)
>>
>> Tesi: D non e` un linguaggio serio.
>> Dimostrazione: non esiste un binding per uWSGI.
>
> Ne ho scritto uno io, ma è troppo grosso per allegarlo in questa email
> (dato che il mio ISP mette un limite sulle dimensioni delle email) :).
>
>

Credo sia l'antispam, se trova piu' di 4 goto nel body scarta la mail.


-- 
Roberto De Ioris
http://unbit.it
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Turbopascal??

2011-01-05 Per discussione Pietro Battiston
Il giorno mer, 05/01/2011 alle 17.54 +0100, Vittorio Zuccala' ha
scritto:
> Il giorno 05 gennaio 2011 15:56, Carlo Miron  ha
> scritto:
> 
> Io lavoro (ben) piu` di 8h al giorno davanti ad un PC, ed ehm
> ritengo
> di averne una certa confidenza. Ma magari non so concatenare
> due "SE"
> in Excel. E` grave, dottore? :)
> 
> No no no: ed è proprio questa il punto.
> Molti miei colleghi che programmano su AS400 ogni giorno non sanno
> concatenare due SE excel
> ma se gli spiego la sintassi in 30 secondi ne concatenano anche 10
> perchè conoscono il concetto che
> vi sta alle spalle, il VERO o FALSO etc etc.
> L'utente che passa 8h/giorno davanti al PC ed ancor di più un bambino,
> questo concetto non lo hanno.
> Per questo motivo concordo con chi dice che uno strumento di
> programmazione vale l'altro.
>   


Non concordo con questo punto di vista. L'idea che si debba pensare in
termini di oggetti e algoritmi e solo dopo tradurre in un qualsiasi
linguaggio è affascinante, ma un buon corso di python (e di qualsiasi
altro linguaggio) per chi non ha mai programmato non parte con l'elenco
dei tipi base e delle funzioni built-in, ma con

print ("Hello world")

. Questo è particolarmente vero per
1) bambini/ragazzi, e più in generale
2) persone per cui scrivere codice non sarà (necessariamente) una
professione.
E c'è poco da fare, queste persone forse non impareranno "l'arte della
programmazione", ma "rudimenti di Python", con cui magari riusciranno
comunque a risolvere tanti problemi quotidiani, e/o pure a divertirsi: a
questo punto fare imparare loro Python, TurboPascal, VisualBasic o Excel
fa _tanta_ differenza: per i possibili utilizzi, e per la difficoltà:
quello che per un programmatore "stagionato" è "codice meno
elegante/pulito", per uno che sta imparando a programmare da zero può
essere parecchia fatica in più per un risultato peggiore.

Poi non dico che una persona non debba capire che vuol dire "if", "True"
o "False"... ma finché si rimane a questo livello, i concetti "teorici"
non sono poi così astratti - o almeno non sembrano così astratti ad un
non adepto. In altre parole, nei primi passi con la programmazione penso
che generalmente lo scoglio sia la sintassi, non la semantica. Tutt'al
più posso arrivare a dire che le due cose sono semplicemente
inscindibili. Se cucini in molte cucine, hai bisogno di sapere come ogni
fornello/set di pentole/qualità di farina si comporta. Se stai imparando
a cucinare, imparerai una sequenza di azioni e di lusso se poi ti
divertirai a combinarle.

ciao

Pietro


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


Re: [Python] Turbopascal??

2011-01-05 Per discussione Carlos Catucci
2011/1/5 Pietro Battiston 

> Poi non dico che una persona non debba capire che vuol dire "if", "True"
> o "False"... ma finché si rimane a questo livello, i concetti "teorici"
> non sono poi così astratti - o almeno non sembrano così astratti ad un
>
[...]

> a cucinare, imparerai una sequenza di azioni e di lusso se poi ti
> divertirai a combinarle.
>

Concordo. Io personalmente ho sempre cercato di insegnare a programmare
programmando. Ovvero spiegare il True/Flase di un IF e subito applicarlo
praticamente. Ovvio che ci sono linguaggi dove viene naturale ed altri dove
la cosa e' meno immediata. Che poi si possa scavare una buca con un artello
o piantare un chiodo con una pala non lo nego, ma non ditemi che fare
l'opposto non sia piu' naturale e intuitivo.

Greetings
JOKER Ltd.
-- 
Ho guardato in alto, oltre le insegne illuminate e, obliqua su un
grattacielo, c'era la luna. Le ho detto:
"Cosa ci fa una ragazza come te in un posto come questo?"
(*Stefano Benni* - Baol )
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] inquisitori [was re: Turbopascal??]

2011-01-05 Per discussione Daniele Varrazzo
On Wed, 5 Jan 2011 21:09:51 +0100, Andrea Ambu 
wrote:
> Linus Torvalds scrisse:
> diff -u --recursive --new-file v1.1.41/linux/kernel/sched.c
> linux/kernel/sched.c
> --- v1.1.41/linux/kernel/sched.c   Wed Aug  3 09:32:33 1994
> +++ linux/kernel/sched.c   Tue Aug  9 09:34:45 1994
> @@ -161,7 +161,7 @@
>   * information in task[0] is never used.
>   *
>   * The "confuse_gcc" goto is used only to get better assembly code..
> - * Djikstra probably hates me.
> + * Dijkstra probably hates me.
>   */
>  asmlinkage void schedule(void)
>  {

Bello, con questo diff mi ci farei una maglietta :)

-- 
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] Turbopascal??

2011-01-05 Per discussione Enrico 'Henryx' Bianchi
On Wednesday 05 January 2011 17:15:13 Carlos Catucci wrote:

> Il GOTO in C io lo ho sempre considerato una bestemmia. I puntatori in C
> (es puntatori a funzioni o puntatori a puntatori con relativa matematica
> degli stessi, che per alcuni era davvero un incubo) non so se il PasQual 
> (come lo chiamavamo amabilmente ]:P) li gestiva.

Il Pascal gestisce i puntatori (come tutti i linguaggi compilati, da quello 
che ho visto), cosi` come gestisce l'ASM inline. La differenza con il C 
(soprattutto per i puntatori) e` che non se ne fa un uso smodato, in quanto vi 
sono vie piu` pulite (e quindi piu` controllabili) per ottenere gli stessi 
risultati. Per quanto riguarda il GOTO, esso inizialmente non era previsto nel 
linguaggio, ma si e` preferito aggiungerlo in seguito anche a causa delle 
pressioni fatte da parte degli utenti[1]

> Il Perl e' write only.

Diciamola bene: il Perl e` write only tanto quanto gli altri linguaggi, sta al 
programmatore scrivere codice umanamente leggibile

Enrico
[1] o almeno cosi` ricordo di aver letto da qualche parte
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Programmare software GUI cross platform

2011-01-05 Per discussione Enrico 'Henryx' Bianchi
On Wednesday 05 January 2011 20:19:31 Karim Gorjux wrote:

> * pyQT: ha il designer, ma la licenza commerciale di QT costa un botto

La licenza commerciale di PyQT (e non delle Qt complete) ti serve solo nel 
momento in cui non vuoi rilasciare il tuo codice sotto GPL o sotto una licenza 
compatibile. In alternativa, puoi usare Pyside, che praticamente e` una 
riscrittura di PyQT fatta direttamente da Nokia ma rilasciata sotto LGPL

> ho visto il designer di QT che sembra quello che serve, ma da quanto
> ho visto è per C++ e per fare il lavoro con python non è così
> immediato.

Dipende da cosa intendi per immediato, con PyQT (o Pyside) un approccio di 
lavoro potrebbe essere questo:

 - Disegni l'interfaccia con Qt Designer;
 - Generi il codice Python con pyuic4 partendo dall'interfaccia disegnata in
   precedenza;
 - Agganci all'interfaccia i segnali definiti in altri moduli.

Nulla pero` ti vieta di caricare direttamente l'interfaccia utilizzando il 
file generato da Qt Designer, anche se come pratica si preferisce il primo 
approccio

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


Re: [Python] Programmare software GUI cross platform

2011-01-05 Per discussione Enrico 'Henryx' Bianchi
On Wednesday 05 January 2011 20:19:31 Karim Gorjux wrote:

Non aavevo notato questa parte:

> Come se non bastasse, non è nemmeno una passegiata creare
> l'applicazione compilata, ma qui potrei sbagliarmi.

Anche qui dipende molto da cosa vuoi fare. Se intendi la distribuzione di un 
solo eseguibile, basta usare i tool appositi in base al sistema operativo a 
tua disposizione (py2exe per Windows, i package manager per Linux, il bundle 
per OS X). Se invece intendi il non rilasciare il codice sorgente, allora 
basta che rilasci i file .pyc (o i file .pyo) che non sono altro che il 
bytecode generato dall'interprete per il modulo che si sta processando

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