Newsgroup: it.comp.programmare
Titolo: Consigli su realizzazione di un software

Salve, devo realizzare un software che permetta la comunicazione tra due
persone, connesse online. In pratica sarebbe una comunissima chat, in
aggiunta però devo implementare una serie di caratteristiche che essendo
molto personali non trovo ovviamente nei più comuni programmi di chat. Ad
esempio, oltre a normale testo, dovrei inserire una sorta di "lavagna" sulla
quale entrambi possano scrivere e visualizzare contemporaneamente ciò che
l'altro disegna (o scrive con caratteri particolari, ad esempio quelli
matematici); oppure la possibilità di mandare un sms con lo stesso
programma, in modo da avvertire l'altro della presenza online di uno dei
due, e tante altre cose.
Vorrei chiedervi quale linguaggio potrebbe essere più conveniente (ho una
certa urgenza) e "prestante" per realizzare questo software; per vari motivi
ho pensato al Visual Basic, vorrei sapere i vostri pareri senza influenzarvi
con la mia analisi che, almeno fino ad ora, mi ha portato a puntare al VB.
Un'altra cosa: terminato la scrittura del programma, pronto con tutte le
interfacce, come si fà ad implementare il funzionamento online, cioè avendo
due persone questo stesso software, possono utilizzarlo contemporaneamente
come se fosse un generico programma di chat? Non ho mai affrontato lo
sviluppo di qualcosa che che dovesse mettere in comunicazione due o più
utenti online, quindi non ne conosco il grado di difficoltà. Potete darmi
qualche dritta? Nel caso fosse un argomento non semplice, potete
reindirizzarmi a qualche links?
Grazie.

 reindirizzarmi a qualche links?
Io ti consiglio Python ma devi tenere a mente che:
a) non userei Visual Basic nemmeno sotto tortura
b) sono fanatico di Python quindi i miei consigli valgon poco: nel 90%
dei casi ti consiglio Python, sta a te valutare il linguaggio ^^
A parte gli scherzi, trovo che per questo genere di cose Python sia in
assoluto la scelta migliore, soprattutto se hai problemi di tempo.
Su un sito che potrebbe chiamarsi 
http://www.pythonapocrypha.net
(o forse com...) c'è il programma che devi fare, con tanto di lavagna e
sorgenti, che però punta a un indirizzo di broadcast, quindi va
modificato, senza contare che come sicurezza non è il massimo della
vita, e le librerie grafiche sono bruttarelle e lentucce (TkInter), che
fossi in te sostituirei con altre librerie, casualmente le prime che mi
vengono in mente sono le pyGTK :p
Le stesse caratteristiche di Python però ti consentono di estenderlo
senza problemi di alcun tipo, anche se sei a digiuno del linguaggio, uso
il tutorial e tenta di capire le 70 (!!!!!) linee di codice.
Come base immagino sia al di la delle tue aspettative... :)
Per quanto riguarda il sito, il nome è 'più o meno' quello, è il sito
dedicato a un libro che si chiama 'Practical Python', quindi se googoli
un po' lo trovi.
HTH,
-- 
oOO()             |Nicholas Wieland|
/ _/              |nicholas_wieland|
|/ [ Step on the ]|    @
yahoo.it
   |
\_)[  right foot ]|________________|

come se fosse un generico programma di chat?
Hai due modi: o monti la parte server del tuo programma su un server
pubblicamente accessibile da internet (consigliato), oppure usi un
normale ftp su un sito qualsiasi (che puoi prendere in modo gratuito
su Geocities), per pubblicare l'IP di ciascun client che si collega.  
Quest'ultima soluzione e` poco efficiente, se il numero di client e`
abbastanza elevato.  Nel primo caso, la notifica di un nuovo client
collegato avviene dal server, nel secondo caso dal client stesso.

 Grazie.
Devi implementare sia il Server che il Client nello stesso programma, oppure
devi implementare un Server per tutti e più Client differenti.
Nel caso tu abbia bisogno di mettere in comunicazione più Clients, ovvero
più di 2 utenti, non ti conviene implementare Client e Server nello stesso
applicativo, ma ti conviene dividerli, ovviamente un utente dovrà eseguire
il Server, oppure dovrai piazzare il Server da qualche parte.
In realtà il Server lo potresti realizzare anche in Php/MySQL così lo
potresti piazzare su un sito web con tale supporto, e fare il Client in
DELPHI interfacciandolo allo Script Server in Php/MySQL.
Comunque prima di ogni cosa dovresti crearti e definire un protocollo di
comunicazione Client/Server, ovvero devi stabilire delle regole che
permettino la comunicazione dei dati utili per simulare la lavagna e tutto
il resto.
E mi raccomando, niente Visual Basic, perchè nuoce gravemente alla salute.
Ci sono Delphi, Java, Python,Dev C++, C++ Builder e tanti altri.

Escludereste categoricamente l'utilizzo del borland builer c++?
E se si perchč?
Grazie, Matteo

E se si perchč?
il fatto di dover imparare il C++ ti dice qualcosa :P ?
Rhymes

 il fatto di dover imparare il C++ ti dice qualcosa :P ?
Certo: č la condizione sine qua non non ci si puň definire
analista-programmatore.
Ciao.
*** Azimuth ***

analista-programmatore.
ahahha sei tornato :)
Rhymes

 ahahha sei tornato :)
Gią! :)
*** Azimuth ***

Io non l'ho escluso.
Ho detto che ci sono:
- Delphi, Java, Python,Dev C++, C++ Builder e tanti altri.
Ho escluso solo Visual Basic che è una pagliacciata.

 *** Azimuth ***
 
E ci hai subito deliziato con una cazzata delle tue :P
Ciao,


 E ci hai subito deliziato con una cazzata delle tue :P
Non č vero. Ad oggi, secondo me, un programmatore non puň definirsi 
"completo" se non conosce un linguaggio come il C++.
Perche? Perchč chi conosce il C++ puň padroneggiare anche qualunque altro 
linguaggio...
PS: anche conoscere l'Assembly č molto importante a volte!
-- 
Luc.

 E ci hai subito deliziato con una cazzata delle tue :P
Vogliamo confrontarla con le boiate che scrivi tu? :P
In ogni caso, citazione da "Come Diventare Un Hacker"
(
http://virgolamobile.50megs.com/hacker-howto-it.html
)
	... Se vuoi dedicarti seriamente alla programmazione, dovrai
	    imparare il C, il linguaggio cardine di Unix. Il C++ è molto
	    vicino al C; se già ne conosci uno, non ti sarà difficile
	    imparare l'altro...
	... È meglio, addirittura, imparare tutti questi cinque 
	    linguaggi (Python, Java, C/C++, Perl e LISP). Oltre che
	    essere i linguaggi più importanti per l'hacking, essi 
	    rappresentano approcci molto differenti alla programmazione,
 	    e ognuno ti educherà in maniera preziosa...
Ciao!
*** Azimuth ***

 PS: anche conoscere l'Assembly è molto importante a volte!
Quale assembly? :)
Maurizio
-- 
The last thing one knows in constructing a work is what to put first.
                -- Blaise Pascal

 Quale assembly? :)
Qualunque, è la logica che è importante!
-- 
Luc.

 PS: anche conoscere l'Assembly è molto importante a volte!
Direi fondamentale. Capire, ad esempio, che una banale istruzione in un
linguaggio ad alto livello può comportare centinaia di istruzioni
assembly, e capire che molte sarebbero inutili, può portare a
miglioramenti notevoli nelle performances.
*** Azimuth ***

 Quale assembly? :)
Quello della macchina che programmi.
*** Azimuth ***

Escludereste categoricamente l'utilizzo del borland builer c++?
Te lo sconsiglio nel caso specifico.  C++ Builder e Delphi sono molto
simili, anche se basati su linguaggi molto diversi.  L'utilizzo dei
componenti e` praticamente identico ma per un'applicazione come quella
che tu devi realizzare, personalmente, non vedo la stretta necessita`
di ricorrere al C++, che, in ogni caso, e` piu` complesso e
maggiormente "error-prone".  Personalmente non mi piace il modo di
lavorare con la VCL che si usa in C++ Builder e preferisco, da questo
punto di vista, lavorare in Delphi, piu` comodo e rapido.  D'altronde,
la potenza del linguaggio e` praticamente la stessa, la velocita`
dell'eseguibile identica.  Diciamo che, generalmente, l'uso del C++
Builder lo relego a progetti in cui c'e` da interfacciare SDK scritti
in C/C++, di cui vengono distribuiti header C/C++ e non mi va di stare
li` a tradurli in Delphi e quindi li interfaccio da C++ Builder e
buona notte.  A volte e` stato utile "rinchiudere" l'accesso a questi
SDK con DLL scritte in C++ Builder interfacciate, poi, con l'intera
applicazione scritta in Delphi.

Cosa intendi per programmatore "completo"?
Ragazzi, un consiglio: killateli entrambi, come ho fatto io ;-)


Perchč il tab? Python + Java + C + C++ + Perl + Lisp....okei a
quarant'anni avrai finito se li vuoi conoscere veramente bene :)
Tanto per la cronaca: che nesso ha l'hacking con questa discussione?
Rhymes

In ogni caso, citazione da "Come Diventare Un Hacker"
Appunto...nessuno qui vuole diventare un hacker...probabilmente se
tiravi fuori le ricette di suor Germana eri meno OT
Rhymes

 Ragazzi, un consiglio: killateli entrambi, come ho fatto io ;-)
Magari non sono tutti vigliacchi come te. Che ne sai?
-- 
Luc.

 Magari non sono tutti vigliacchi come te. Che ne sai?
Credo che ci siano ben altri vocaboli per definire il LaForgia...
Ciao.
*** Azimuth ***

 Credo che ci siano ben altri vocaboli per definire il LaForgia...
Tendo sempre a non andare sul personale, per quanto possibile...
Cmq, è Natale... ;-)
-- 
Luc.

 Ciao!
Ciao ;)


 prendere la mano.
A dire la verità Lisp e C++ non pisciano nemmeno nello stesso vaso,
altrochè prendere la mano. A meno che il fine ultimo non sia l'ormai
vetusto shitcode, s'intende.


Python esistente ?
ahha ora mi piacerebbe sapere che scusa tiri fuori Azimuth :)
Rhymes

 Python esistente ?
Io non ho sparato merda su Python. Lo considero, semplicemente, alla
stregua del Visual Basic, come serietà.
Ciao.
*** Azimuth ***

stregua del Visual Basic, come serietà.
E' già qualcosa..comunque non sono sicuro che tu non abbia mai sparato
merda su Python, ma non mi va di leggere i thread passati solo per
questo quindi lasciamo stare :)
Rhymes

 merda su Python, 
La sicurezza non č di questo mondo.
Ciao.
*** Azimuth ***

Non lo dico solo io, lo dicono i maggiori guru in circolazione.
portami qualche esempio per favore
Rhymes

 stregua del Visual Basic, come serietà.
Sai, all'inizio un po' uno se la prende, ma poi è come con i bambini, in
effetti non conoscendo ne Python ne Visual Basic non puoi esprimere
giudizi, come già ampiamente dimostrato su questo newsgroup.
Saluti,
P.S. Senza offesa, non te ne freghera nulla ma mi sei addirittura
simpatico, ma ti rikillo, sei un totale spreco di banda.
Colpa mia, non so resistere al risponderti anzichè ridere e basta :)
Addio ^^


 Colpa mia, non so resistere al risponderti anzichè ridere e basta :)
Dov'è che abbonda in riso...?
*** Azimuth ***

 portami qualche esempio per favore
GIYF.
*** Azimuth ***

GIYF.
?
Rhymes

 ?
SIPY.
*** Azimuth ***

 Qualunque, è la logica che è importante!
Quello della macchina di von neumann e` sufficiente? :)


 Quello della macchina che programmi.
A che pro?


 Quello della macchina di von neumann e` sufficiente? :)
No.
-- 
Luc.

 stregua del Visual Basic, come serietà.
...la differenza e` che Python e` un linguaggio di programmazione. :)


 A che pro?
Suppongo che tu non sappia neanche lontanamente programmare in assembly, 
vero?
PS: io invece sono solo arrugginito... ;-)
-- 
Luc.

...la differenza e` che Python e` un linguaggio di programmazione. :)
non credo che sia l'unica differenza, comunque può bastare :)
Rhymes

 ...la differenza e` che Python e` un linguaggio di programmazione. :)
Python è casino non strutturato.
*** Azimuth ***

 A che pro?
Miglioramento delle performances, aderenza alle specifiche di progetto,
diminuzione dei costi fissi, ottimizzazione dell'uso dell'hardware...
continuo?
*** Azimuth ***

 No.
La logica e` la stessa pero`.


 vero?
Non sono un guru dell'assembly, pero` ho programmato con l'assembly
Z80 con il vecchio Spectrum di mio padre, ho usato anche l'assembly
x86 e un po' di assembly per cpu ARM.
Secondo me l'assembly non mi ha dato niente a livello di logica di
programmazione. L'unico motivo per il quale consiglierei di impararne
uno e` solo se se ne ha veramente bisogno (quindi casi *veramente*
rari).


 continuo?
Uhm... secondo il mio modesto parere ottimizzare del codice per
architetture quali x86 andando a scrivere in assembly e`
difficilissimo: bisogna tener conto di troppi fattori, probabilmente
un compilatore farebbe molto meglio di me. Per diminuizione dei costi
fissi cosa intendi? Costo piu` economico della macchina che usi per
far girare il programma? Quindi e` una derivazione della prima.
Non capisco, nonostante tutto "aderenza alle specifiche di progetto".
IMHO ricorrere all'ASM e` una cosa *molto* rara, come ho gia` scritto
in un altro post.


 Python č casino non strutturato.
Il bello č che tu stesso hai ammesso di non conoscerlo...
-- 
Marco Barisione  (ICQ 84277092)
Vota per la creazione di it.comp.software.editor seguendo le istruzioni
contenute nel messaggio news://
MK.it.comp.soft...@news.nic.it

 Il bello è che tu stesso hai ammesso di non conoscerlo...
Purtroppo ho dovuto "toccare con mano" la scarsa qualità del codice
prodotto.
*** Azimuth ***

 prodotto.
O forse non lo conosci bene...
Perché allora molti guru dicono che con Python si ottiene codice di qualità 
migliore?
Puoi essere più specifico su cosa intendi per scarsa qualità del codice? 
Quali erano i problemi?


 Quali erano i problemi?
Prendi ad esempio il supporto XMLTV per FREEVO: ho avuto modo di toccare
con mano cosa significa confondere errori sintattici con errori
semantici, e portare tutto a livello di "eccezione di esecuzione".
L'ortogonalità del trattamento delle eccezioni di esecuzione comporta che
un XML malformed non produce un errore di sintassi a livello di Parser (e
quindi di libreria XMLTV) se, ai livelli inferiori avviene una
intercettazione delle eccezioni. In altri termini: prova a dover fare il 
tracing di una applicazione che non hai scritto tu per capire dove diavolo
si annidi il problema. Comprenderai che tutto ciò non fa che diminuire
la produttività.
Un po' come succede ad inseguire i reference in VB. <g>
*** Azimuth ***
[1] SP = Sunday's Programmers -- programmatori della domenica. ;-)

 in privato.
Non conosco Delphi, ma vorrei comunque avere maggiori informazioni. Mi dai
il tuo indirizzo di email cosě ti contatto?
Grazie.

Secondo: non si ottiene codice migliore.
perchè non la smetti di accusare e tiri fuori uno straccio di
argomentazione supportata da documentazione?
Rhymes

 argomentazione supportata da documentazione?
Dai uno sguardo a "epg_xmltv.py" nel pacchetto FREEVO.
Te ne scrivo uno stralcio:
       if not got_cached_guide:
            # Need to reload the guide
            if DEBUG:
                print 'XMLTV, trying to read raw file (%s)' % config.XMLTV_FILE
            try:
                cached_guide = load_guide()
            except:
                # Don't violently crash on a incomplete or empty TV.xml please.
                cached_guide = None
            # Dump a pickled version for later reads
            pickle.dump(cached_guide, open(pname, 'w'))
Questo codice ha diverse correctness flaws:
1) "cached_guide" potrebbe non essere la variabile che verrà restituita
(magari è scritta male!), ma siccome non vi è il vincolo di dichiarare le
variabili in anticipo...
2) se "load_guide()" contiene un errore di sintassi (lui e le funzioni da
lui utilizzate) il programma continua come nulla fosse (in quanto l'errore
di sintassi equivale ad una eccezione di funzionamento!)...
3) in base all'assenza di delimitatori di blocco (caratteri '{' e '}', ad
esempio) non è possibile comprendere cosa succede al codice se superi una
pagina dello stesso...
Ti bastano?
Non calcolo, ovviamente, la tipizzazione lasca ("a la VB", per
intenderci).
*** Azimuth ***

 mi ha permesso di impararlo piu` facilmente.
Intendevo dire questo, alla fine.
-- 
Luc.

il tuo indirizzo di email cosě ti contatto?
walkietalkie(at)
libero.it

 intenderci).
si vede che non hai mai studiato Python. Python è strong-typed, ma lo
è a run-time
Ascoltami perfavore: posso capire che a te non piaccia il Python (anche se
non ho
ancora esattamente capito il perchè), ma hai appena dimostrato che gli
errori di programmazione non dipendono dal linguaggio in sè ma dal
programmatore (come
sempre poi...); proprio ieri ho litigato con uno che aveva idee simili alle
tue sul Python (coder C/C++ e ASM tra l'altro), appena ha chiuso la bocca
(:) e l'ha provato nè è rimasto entusiasta!
Tutto ciò per farti capire che è meglio non parli a vanvera :) Sarai anche
un "programmatore
completo" ma i tuoi pregiudizi mi danno quasi la nausea.
buona giornata!
--------------------------------
Inviato via 
http://usenet.libero.it

 è a run-time
Su questo, Rhymes, vorrei spezzare una lancia a favore di Azimuth: il senso
della tipizzazione è di garantire la conformità al momento della
compilazione. Tanto varrebbe, altrimenti, non garantir nulla e stipizzare
tutto (un po' come va il VB con i tipi Variant o Object).
Ciao.
Marco.

 intenderci).
La tipizzazione del VB è molto diversa da quella di Python.


 possa non essere rilevabile se lo si pone "a ridosso" di una eccezione.
Sarebbe impossibile considerarlo un errore a runtime visto che una funzione 
puň accettare un numero di argomenti variabili in maniera molto piů cmoda, 
potente e funzionale di C/C++.


gli errori di funzionamento. 
Che intendi per "errori di funzionamento" ? Le eccezioni possono, in
molti casi, scatenarsi per errori di funzionamento.

 Pagina?
Questa non l'ho capita neanche io. :)
Ciao!
Marco.

 potente e funzionale di C/C++.
Ecco. Il problema è: come distinguere tra errore ed intenzionalità?
Considerando anche la questione di un programmatore che debba
leggere/manutenere codice scritto da altri. In C/C++ esiste il modo di
disattivare il controllo sugli argomenti ("..." e va_args), ma viene fatto
esplicitamente in modo che tutti ne siano al corrente nella fase di
ispezione del codice.
Tutto questo mi sembra rendere il Python un po' troppo poco robusto.
Ma magari sbaglio!
Ciao.
Marco.

 molti casi, scatenarsi per errori di funzionamento.
Esempio:
    a = -4
    c = "Pippo"
    replace( c, "Pippo", "Pluto", a ) <=== Errore!
    a = []
    a.pop( ) <=== Eccezione!
Posso accettare che entrambe possano essere rappresentate con eccezioni, ma
dovrebbe essere possibile filtrare (almeno in fase di debug) le prime!
Ciao!
Marco.

 Ciao.
ciao!
Rhymes


 Python,
Perché, Rhymes? Io ho bisogno di capire se posso usarlo in contesti
lavorativi... siccome lo trovo molto comodo per alcune cose, volevo sapere
se non presentasse "rovesci della medaglia" troppo pesanti (un po' come
l'illusione del VB6 di supportare la OOP).
Ciao!
Marco.

 l'illusione del VB6 di supportare la OOP).
Finalmente qualcuno che ha di meglio da fare che dare addosso gratuitamente
a Python!
Bene, ti consiglio di postare la tua domanda nella maling list italiana di
Python (
http://www.python.it/vari/ml-0.html
 per iscriverti) dove persone
sicuramente piů esperte di me ti sapranno rispondere :) Oppure puoi andare
direttamente sul NG comp.lang.python e domandare li, previa ricerca su
groups.google.com
 dato che č un NG con centinaia di messaggi al giorno :)
ciao!


,
Luc ha scritto:

Alla fine era quello dove intendevo arrivare io.
Ovvero: non e` necessario il C/C++ per avere una conoscenza della
programmazione "astratta".


 programmazione "astratta".
Ma il 99% delle volte, volente o nolente, li si arriva...
-- 
Luc.

 Tutto questo mi sembra rendere il Python un po' troppo poco robusto.
Io trovo molto facile capire quando l'errore è intenzionale e quando no. 
All'inizio non conoscevo Python e la pensavo esattamente come te e molti 
altri. Poi ho avuto un po' di tempo libero e, visto che tutti gli altri ne 
parlavano tanto bene, ho deciso di provarlo seriamente e me ne sono 
innamorato.


 
groups.google.com
 dato che è un NG con centinaia di messaggi al giorno :)
Oppure su news://it.comp.lang, col tag [PYTHON] nell'oggetto. IMHO sarebbe
meglio usare meno la ML e più il ng (così magari si riuscirà, un giorno, a
far aprire it.comp.lang.python). Ciao.
-- 
Andrea Bergia - studente              Linux Registred User #281550
"The one thing we're all waiting for, is peace on Earth and an end to war,
it's a miracle we need, the miracle, the miracle, 
Peace on earth and end to war today,
That time will come one day you'll see when we can all be friends"

>> conta (['A', 'B'])
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "<stdin>", line 4, in conta
NameError: global name 'conto' is not defined
Come vedi Python ti da errore se usi un rvalue (per parlare alla C) non
dichiarato, mentre l'assegnamento ad una variabile (ovvero il suo uso come
lvalue) equivale alla sua dichiarazione.
Comunque anche a me piacerebbe qualcosa tipo Option Explicit ;-)


 neanche un Warning!).
Gli errori di sintassi sono derivati da SyntaxError, quelli degli attributi 
sono AttributeError. Qual è il problema?
Perché, visto che la discussione ormai riguarda Python, non ci trasferiamo 
su it.comp.lang?


 
groups.google.com
 dato che è un NG con centinaia di messaggi al giorno :)
C'è anche it.comp.lang, anche se, ultimamente, non ha molto traffico (come 
si sente la mancanza di Alex...).


far aprire it.comp.lang.python). Ciao.
Sono daccordo...ho sempre cercato di supportare il NG anche chiedendo
il mirroring della ML ma c'è veramente poco traffico :(
Rhymes

 Comunque anche a me piacerebbe qualcosa tipo Option Explicit ;-)
All'inizio la pensavo anch'io cosě ma ora sono piů felice cosě :-)


 innamorato.
Io ho solo un problema: non posso scegliere col cuore ma con i fatti... :)
Ciao!
Marco.

 Io ho solo un problema: non posso scegliere col cuore ma con i fatti... :)
Tu prima gioca un po' con Python, molti dei tuoi attuali problemi 
probabilmente scompariranno.


 probabilmente scompariranno.
Non posso permettermi di giocare con un linguaggio. Devo valutarlo in base a
criteri oggettivi, non a teorie o convenienze di codifica. Supponi di dover
presentare una scelta "strutturale" a qualcuno che non ha voglia di
giocare... (per esempio, il tuo capo).
Ciao!
Marc.o

 memoria con la sintassi, ma il concetto è quello):
[cut]
Ti e` gia` stato detto da altri che questo e` un non-problema, perche` in 
python non e` possibile leggere da una variabile non esistente.
Ma IMHO il punto non e` questo: ok, hai ragione, sicuramente in python 
hai a runtime parte degli errori che in C++ avresti a compile time. Ma 
e` veramente un problema?
Presumo che quando tu scrivi un programma subito dopo ne fai anche il 
testing (sia esso sistematico o anche soltanto "a naso"): questo e` 
quello che succede in C++:
0) compili il codice
1) lanci l'eseguibile con un input tale da testare la funzionalita` 
appena inserita
2) guardi che vada tutto bene.
In python la sequenza e` questa:
1) lanci l'eseguibile con un input tale da testare la funzionalita` 
appena inserita
2) guardi che vada tutto bene.
Se nel tuo codice ci sono degli errori statici in C++ vengono individuati 
al punto 0. In python vengono individuati al punto 1, ovvero 30 secondi 
dopo l'ipotetico punto 0. Sono cosi` fondamentali quei 30 secondi?
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra

 memoria con la sintassi, ma il concetto è quello):
[cut]
Quasi a farlo apposta in un recente thread su comp.lang.python si e` 
parlato anche di questo. Copio-e-incollo un pezzo:
The fragment about solecisms expands this way:  you
are right.  When a coder makes many common errors--
mispellings and such--VB and many other languages
catch those at compile time, while Python and many
languages like Python catch them only during exe-
cution.  Earlier is better.  The inescapable
conclusion is that Python is worse.
EXCEPT that there's a larger context which renders
this comparison of only secondary importance.  I
can't afford the time this week to make my position
clear.  I'll summarize it:  working in Python is
sufficiently different from working in VB that the
kinds of errors caught at compile time become a
peripheral matter.


 giocare... (per esempio, il tuo capo).
Giocare nel senso di impararlo, fare un po' di prove e magari qualche 
piccolo script stupido. Tutto questo per imparare il linguaggio.


 ha voglia di giocare... (per esempio, il tuo capo).
ammetterai che *valutare* un linguaggio senza conoscerlo e` quantomeno 
improponibile, no?
Resta sempre il dubbio se valga la pena spendere tempo a valutarlo o 
meno: ma a questo punto e` un discorso extra-tecnico e ti devi basare su 
fattori diversi dal "secondo me non e` bello"; ad esempio il fatto che 
sia molto diffuso e che un sacco di gente ne parli bene IMHO e` gia` un 
buon motivo per prenderlo in considerazione.


 meno:
Questo dipende anche da cosa fa Marco Spedaletti. Che tipo di software 
produce? Per quale piattaforma?


 ho capito NIENTE, nonostante conoscessi il C++.
Non si finisce mai di imparare :-)
Redtom