Newsgroup: it.comp.programmare
Titolo: Con che linugaggio imparare a programmare??

Mi trovo di fronte ad una scelta:
Attualmente, programmo in maniera basilare con visual basic ed ho delle
buone conoscenza su l'uso di windows, ma voglio passare a linux.
Fra qualche giorno avrò 2 pc, uno con linux e l'altro per forza con windows.
Ho bisogno di un linguaggio per programmare in maniera semplice ma efficace,
che mi dia la possibilità di poter funzionare sia su piattaforme linux che
windows e che possa essere compilato su entrambe le piattaforme.
In un primo momento pensavo di imparare il Java che ha dalla sua parte la
portabilità appunto (anche se non ho ancora capito come).
Adesso mi è venuta un'altra idea, imparare il linguaggio di linux e poi
installare i vari emulatori sulle due piattaforme per far girare i programmi
windows su linux e per compilare in linux su windows.
E' una buona soluzione?
se si, con quali programmi?
Dove li trovo? Link?
ovviamente tutto opensource...!?
Ciao e grazie.
marco

 windows e che possa essere compilato su entrambe le piattaforme.
bello un altro flame....
adesso arriveranno i fanatici di python..
poi quelli di c++..
comunque il mio consiglio è quello di non partire con python ma un
linguaggio di programmazione serio..quale???
signori e signore il linguaggio serio è SOLO C++
ihihihih :P
ciao :)))

 programmi windows su linux e per compilare in linux su windows.
Il linguaggio di Linux? Su GNU/Linux (Linux è solo una parte del
sistema) esistono un'infinità di linguaggi, probabilmente tutti quelli
per Win e qualcun'altro.
Se ti interessa il pascal, un ottimo compilatore "Open Source" è il
freepascal. Per scrivere i programmi io uso Vim, ma se vuoi qualcosa di
più simile agli editor classici di Windows prova KWrite oppure GEdit.
-- 
Andrea Bergia - studente              Linux Registered User #281550

windows e che possa essere compilato su entrambe le piattaforme.
Python
http://www.python.it/
it.comp.lang.python

 ihihihih :P
Odio gli anonimi...
Raffaele
-- 
Raffaele Castagno
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 it.comp.lang.python
Assolutissimamente, accompagnato a braccetto da java...
bye


 ha scritto nel messaggio
news:ie3hlvk5ts2vig7c0...@4ax.com...

Errato! Ha scritto 'compilato' :-)))))))
E.

Mi sembra che kylix ti permetta di scrivere codice compilabile sia su
windows che su linux ,cioe' generi sia i file per win che per linux il tutto
in maniera quasi trasparente(per modo di dire),anche se magari l'approccio
iniziale potrebbe essere pesante...
a che punto e' MONO?

 portabilità appunto (anche se non ho ancora capito come).
Consiglio spassionato, fai qualche prova iniziale con un po' di linguaggi, e
porta avanti quello che ti sembra più semplici! Domande del genere in questo
ng scatenano una marea di flame!
C'è chi dice python, c'è chi dice C++, c'è chi dice Pascal, c'è chi dice
Java, etc.
Esistono talmente tanti linguaggi e ne escono fuori a bizzeffe molti altri.
Inizia con qualche semplice esercizietto in più linguaggi, poi prendi quello
che ti sta più simpatico e lascia stare gli altri. Alla fine ci sarà tempo
per impararne altri!
Fulvio

 a che punto e' MONO?
Boh io ho fatto qualche prova con xsp (il web server per le 
ASP.NET
)
e sembra funzionare :)
Per il resto...ho provato qualche libreria e funzionano, devo provare
la preview di Python for .NET... tutte cose che faro` quando avro` tempo :)
Ad ogni modo sono indietro soprattutto sulle Windows Forms ma per ovvi
motivi. Ah! Sono indietro sulla roadmap dato che la versione 1.0 finale era
stata annunciata per questo mese se non ricordo male.
-- 
Lawrence "Rhymes" Oluyede
http://loluyede.blogspot.com
rhy...@NOSPAMmyself.com

 Errato! Ha scritto 'compilato' :-)))))))
a questo mondo, tutto è possibile...
http://psyco.sourceforge.net/
sarà anche jit, ma sempre compilazione è...
Raffaele
-- 
Raffaele Castagno
Manda in missione i SEAL per scrivermi...


> Odio gli anonimi...
a parte che i fatti tuoi interessano poco,ma se proprio li dobbiamo dire..
io odio le stupidate ...
anonimo
mmm fai parte dei fanatici python ti si riconosce :))))

 anonimo

Io non sono fanatico di niente, caro signor nessuno.
Ad ogni modo, lascio almeno un nome che gli altri possano maledire...
"dannato bhoo" suona bruttino, non trovi?
Credo che sarebbe meglio se tu disinstallassi il client delle news fino a
quando non ti sarai letto per bene la netiquette: postare in modo anonimo
č maleducazione...
Raffaele
-- 
Raffaele Castagno
Manda in missione i SEAL per scrivermi...
questo articolo e` stato inviato via web dal servizio gratuito 


Prima di sparar cazzate su linux spetta almeno di averlo provato. Non è 
che cambi processore da linux a Windows... non servono emulatori! Le 
uniche cose che cambiano per un programma sono le librerie e il kernel 
oltre alla standardizzazione di tutte le configurazioni mediante file di 
testo in /etc o nella home degli utenti. Il famoso Wine non è un 
emulatore: semplicemente ricostruisce con le librerie disponibili in 
linux l'api di windows per cui un programma compilato per windows 
"crede" di essere eseguito in windows. Passando alla questione 
principale del tuo post io ho cominciato col Qbasic anni fa per poi 
dimenticarmi tutto, sono passato al Pascal a scuola per po dimenticarmi 
tutto, poi è stat la volta del C++ del quale mi sono dimenticato 
tutto... Attualmente ho reimparato a programmare in Java per sostenere 
due esami all'università. Insomma per cominciare Java mi sembra il 
linguaggio ideale, ma data la sua estrema somiglianza col C++ da cui 
deriva e data la maggior versatilità e velocità di esecuzione di 
quest'ultimo ti consiglio di partire direttamente col C++. Io 
attualmente sto cercando di convertirmi al C++.

 č maleducazione...
caro signore forse non sai che un nick non identifica una persona ed il 90%
degli user sui newsgroup non sfoggia nome e cognome :))
Forse dovresti ripassare quello che č la netiquette,in quanto stai
alimentando un flame su argomenti assurdi che non rientrano nelle regole dei
newsgroup(non č necessario usare nome e cognome).
Ma tutto questo solo per python ....
ridicolo :))

 sarà anche jit, ma sempre compilazione è...
Anche senza psyco, Python viene comunque compilato (a
bytecode), cosi` come lo e` ad esempio Java anche se
non si usa una JVM dotata di JIT:-).
Alex

 bello un altro flame....
bello, un altro anonimo usa-e-getta. Scommetto che, cercando un po' con 
Google Groups, scoprirei che questo č il tuo primo post. Ho indovinato?
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.3. C, C++ and ASM developers
                               and beta testers are welcome!

 Google Groups, scoprirei che questo č il tuo primo post. Ho indovinato?
ahahhaha salta sempre fuori..
ho letto i tuoi post inutili ma perņ non ti riconosco come fanatica di
questo o quello...
insomma a che servi ? :))
soprattuto a che serve questo tuo post ?
esattamente quali sono gli argomenti che contesti ?
che non ci sono fanatici di python ?
oppure che non ci siano fanatici di c++ ?
sei una fanatica di questo o quello anche tu? :))
ancora con questa storia dell'anonimo perchč il tuo nick non lo č ? :))
mah :))

 ridicolo :))
pfui...sai che me ne frega di python...ce ne sono tanti altri, perl, ruby,
python è solo il più "in voga"


 ancora con questa storia dell'anonimo perchè il tuo nick non lo è ? :))
Il suo è lo stesso da quando sono arrivato qui. Se chiedo di Juliet,
magari c'è pure qualcuno che la conosce di persona che mi dice "è in
ferie". Te chi sei? boh? 
"hai visto quel nuovo troll sul GN?"
"e chi è?"
"...boh..."
Per quel che mi riguarda, il tuo nick è psicologicamente filtrato (in
attesa di avere a disposizione più potenti mezzi...)


 Raffaele
io quello che vedo che sei un maleducato allo stesso livello della tua
amica..
prendersela con un nick solo perche' ci si sente presi in causa in quanto
fanatici di un linguaggio e non capaci di tenere un discorso è alquanto
infantile...
mi sembra inutile continuare..

 
Noooo. Dai dai continuate.. :-)
Un bel flame ;P
Mi faccio un sacco di risate :D
Ciao.
  -Ema-

 python è solo il più "in voga"
si vede in altri post di confronto con c++(oltretutto hai ammesso di non
saperene più di tanto di c++).

 Mi faccio un sacco di risate :D
ma con lui non si puo' parlare sa solo insultare senza dare argomentazioni
:)
č il solito ragazzino inutile :))
ciao

Errato! Ha scritto 'compilato' :-)))))))
Ho letto le faccine, ma preciso che, a mio avviso, la menzione di
"compilato" che fa il nostro amico, sembra solo indicare la necessità
che il programma "giri" su più piattaforme e non che sia,
necessariamente, trasformato in codice macchina nativo.  

non quoto sarebbe impossibile, non li ho neanche letti tutti i post...
state facendo dei discorsi inutili che non hanno ragione di esistere. ogni
linguaggio esiste per un significato ben preciso anche se non capisco
l'utilita` dei linguaggi microsoft.
c / c++ per un uso abbastanza generico, hai un controllo totale (quasi)
sulla macchina, per avere un controllo veramente totale scrivi qualche
routine in assembler e sei a cavallo.
python e` molto veloce affidabile e facile, soprattutto per il web.
java2 sta diventando veramente un bel linguaggio che ti permette di fare
molta roba sbattendotene della portabilita` a discapito di prestazioni
decisamente ancora bassine
poi non so ci sonoanche linguaggi a tag linguaggi di scripting ecc ecc...
dato il tuo messaggio ti consiglio perl e c (linguaggio di linux non vuol
dire niente) per fare gli script magari usi il perl che e` comodo altrimenti
un po' di c.
windows abbandonalo. soprattutto perche` vuoi tutto open source.
dove li trovi i link? dio google sia con te. finche` non se lo compra
microsoft.
--
Togli LE MUTANDE e voltati per rispondere

 sensato, e mantenerlo, è più corretto.
Solo mantenerlo, il resto e' un optional tutto tuo. Se intendi cambiarlo,
puoi segnalarlo per correttezza.
Saluti.

inoltre se ami la programmazione cerca linguagetti simpatici come
shakespeare programming language, brainfuck e roba simile e magari divertiti
con qualcuno con crobots. secondo me imparare la programmazione con sti
linguaggi che ancora ti offrono delle sfide ti appassiona di piu.
mettere in mano il c++ a un neofita significa dirgli: guarda, hai lo
strumento del potere facci quello che vuoi. e tu non sai neanche cosa farci
dopo ^_^


windows abbandonalo. soprattutto perche` vuoi tutto open source.
E che diavolo significa ? open-source non vuol dire "anti-microsoft".

 Mi trovo di fronte ad una scelta:
uhm...non ho ben capito se sai già programmare o meno(se conosci VB in
modo basilare allora no:) Per imparare probabilmente il migliore è il
Pascal, dopo aver imparato le basi della programmazione generica potrai
passare ad altri linguaggi a seconda delle tue esigenze.
L'accoppiata C/C++ non te la consiglio se sei un principiante, per
effettuare cose semplici richiede conoscenze un pò complesse(puntatori e
le loro aritmetiche), la risparmierei per un passaggio successivo.
Il Java per iniziare direi di no, troppo ampolloso, la sintassi farebbe
impazzire un principiante in mezzo ai vari static, public, class della
programmazione OO richiesti anche per programmi banali.
Pythoni, Ruby e Perl direi pure di no, troppo ad alto livello, il Python
considera fra i tipi built-in anche liste e dizionari, ha una
tipizzazione dinamica, svilupperesti un'idea un pò strana della
programmazione, meglio un linguaggio a basso livello, come il Pascal.
ciao

 mi sembra inutile continuare..
"Inutile parlarne, sai, non capiresti mai..."[cit]
juliet, non la conosco per niente, non so neanche quale sia il suo nome, e
neanche se è veramente una donna.... ma so per certo che se vengo qui, e
chiedo di juliet, ci sarebbe qualcuno in grado di rispondermi, perchè è
così che si fa conoscere qui. Oddio, forse ci potrebbe addirittura essere
qualcuno che si ricorderebbe di me, se qualcuno mi cercasse...
quanto al prendersela con un nick, non l'ho faccio certo per come parli
del python. Ci sono molti altri qui in grado di smentire le tue tesi, per
esperienze personali e prove concrete.
Io mi sono semplicemente limitato a criticare il tuo postare in modo
anonimo, con nick e mail completamente sparate a caso, non le tue opinioni.
Il resto, te lo sei inventato tu.
Chi è il fanatico?


 saperene più di tanto di c++).
Mi sa che negli altri post ci hai visto solo quello che volevi tu. Infatti
io mi sono studiato un pò di c++, il java, un pò di python, sto dando un
occhiata al perl e in futuro anche al php. Tu? monotematico c++ per
qualunque cosa, a qualunque costo?
Come hanno gia detto altri, il c++ è adatto per certi compiti, il python
per altri, e il java per altri ancora.
Con questo, credo sia chiaro a tutti che le probabilità che tu sia Azathot
sono estremamente alte...


 :)) 
io posto da quattro anni con lo stesso nickname e la stessa e-mail. Non 
me ne "invento" (parola grossa, nel tuo caso) per ogni discussione. Ah, 
e non mi sembra ci sia molto da sorridere, che ne dici di piantarla con 
quella smorfia isterica? trovo molto più civili gli scambi di sberle


 sarai mica parente con azimuth a.k.a. azathot?  :)
Da quando e' stato brutalmente bastonato da uno stupidissimo codice
FORTRAN[*] che ha bruciato un paio dei suoi infallibili benchmark non si
vede piu' sul NG, di tanto in tanto pero' entra sul canale #oltrelinux
:)
Io intanto attendo i suoi nuovi BENCH per dimostrare che il C++ nel calcolo
vettoriale e' il miglior linguaggio mai creato ;)
[*] Attualmente c'e' un trhead su uno dei suoi bench dove ema mi ha
fatto notare come migliorare notevolmente il codice C proposto da
azathot, e dove puntualmente un compilatore fortran s'e' dimostrato 10
volte piu' veloce :)

 quella smorfia isterica? trovo molto più civili gli scambi di sberle
le sberle forse le usano a casa tua visto quanto sei maleducata...
Scusa ma se tutti ti dicono la stessa cosa (che sei maleducata), non sarà
che forse dovresti modificare qualcosa del tuo carattere?
Rileggi la netiquette del vivere civile sui newsgroup e impara un po' di
educazione..
:)))))))) (si rido ancora)

 anonimo, con nick e mail completamente sparate a caso, non le tue
opinioni.
allora critichiamo queste tue ultime affermazioni:
1) Come ti ho gia detto si puo' usare il nick che si vuole ( e se non sei al
corrente di questo rileggi le regole per l'uso dei newsgroup)
2) Posso cambiare i nick che voglio (anche se NON l'ho fatto in quanto
spesso mi limito a leggere ed altri motivi che non ti dico tanto non ci
crederesti cmq,atteniamoci ai fatti)
3) Quando si espone un problema (come puo' essere quello del nick) si
chiedono prima spiegazioni e non si parte con il dire "odio gli
anonimi"(affermazione stupida visto che la maggior parte sono utenti
anonimi)
4) Non è un newsgroup dove si parla del comportamento ma al limite si puo'
criticare un atteggiamento che non è conforme alle regole(e mi pare che il
mio non lo sia stato visto che anche tu hai detto di criticare solo il nick)
Tu hai violato tutte le regole citate e senza motivo ...
Se vuoi dire qualcosa fallo con argomentazioni valide e non con opinioni
personali che non contano nulla(poi quelle personali le abbiamo gia
dette)...

 volte piu' veloce :)
A dire il vero non mi dispiacerebbe darti ragione. Ma aspetta a dire 
l'ultima parola :-).
C/C++ sono linguaggi con cui si puo' fare di tutto con prestazioni 
eccezionali ma spesso il costo per ottenere il risultato e' troppo alto 
e tecnologie/architetture relativamente recenti danno risultati 
migliori. Ad esempio java lato server con servlet ed ejb permettono di 
ottenere ottimi risultati con costi contenuti. Fare le stesse cose in 
C/C++ sarebbe decisamente troppo costoso.
Ciao.
  -Ema-

programmazione, 
Nessuna stranezza.  Python va benissimo per iniziare.  Come in tutti i
linguaggi, si inizia dalle cose piů facili e si passa a quelle piů
complesse.  Python aiuta moltissimo nell'apprendere la *corretta*
programmazione.

 :)))))))) (si rido ancora)
vedi sopra...


 programmazione.
come fai ad apprendere la programmazione corretta con l'uso delle liste ?
posso essere d'accordo che è un linguaggio semplice  ma con l'uso delle
liste non impari la vera programmare tanto meno quella corretta.
ciao :)


tu come al solito non avendo argomentazioni valide ti unisci ad insulti e
alle provocazioni :))) (si rido ancora)
oltre al maleducato anche infantile...

 
Concordo, ho iniziato con il pascal, poi a secondo delle necessita' non
ho avuto grossi problemi per apprendere i rudimendi di altri linguaggi
(non tanto per programmare, ma per leggere i codici)
come:
C, Matlab, Scilab, Fortran77, Fortran95, QuickBasic, VisualBasic,
C++, python, Delphi
Tra l'altro ai tempi quando iniziai a studiare il PASCAL non esistevano
versioni gratuite di Delphi, oggi puoi scaricare la versione gratis di Kylix 
e provarlo se ti piace puoi continuare a sviluppare bei programmoni senza spostarti 
dal PASCAL
Molti odiano il pascal per la sua rigidita', ma e' proprio essa che lo
rende un ottimo strumento didattico.

liste non impari la vera programmare tanto meno quella corretta.
Le liste sono dei costrutti propri di quel linguaggio.  La loro
presenza non è di alcun impedimento all'apprendimento della
programmazione (sia quella "vera", si quella "corretta").

(non tanto per programmare, ma per leggere i codici)
Il Pascal va bene, per iniziare, ma Python va altrettanto bene (forse
anche meglio).

 programmazione (sia quella "vera", si quella "corretta").
si ma la programmazione "vera" o "corretta" si basa anche sulla velocità
dell'algoritmo e sulla migliore gestione della memoria.
Pensi che l'uso di una lista sia il modo migliore per impare queste cose ?
Le liste nascondono al programmatore la gestione della memoria e tanto meno
sono la migliore soluzione per quanto riguarda la velocità di esecuzione.
Non ti pare?
ma forse intendevi altro sull'apprendimento della "vera" e "corretta"
programmazione?.

programmazione?.
No.

 No.
non e' che sei molto credibile con queste tue risposte...
ma forse si?
no?
si?
no?
:))

non e' che sei molto credibile con queste tue risposte...
Invece sì.

 non e' che sei molto credibile con queste tue risposte...
Andrea LaForge non è stato *mai* credibile.
Ciao!
-- 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.

 in maniera quasi trasparente(per modo di dire)
Credo che volesse software open source...
-- 
(let ( (R1K0 "Enrico Franchi")  
       (url "
www.anubics.org
")
       (quote "Se mi prendo sul serio c'e' da mettersi a ridere") ) )

 sono la migliore soluzione per quanto riguarda la velocità di esecuzione.
Secondo me siete un po'  fuori strada...
Voglio dire.. cosa vuole dire programmazione corretta?
Programmare significa analizzare un problema, trovare il modo di
risolverlo
poi scegliere un linguaggio Turing completo (possibilmente non il VB) e
utilizzarlo per insegnare alla macchina come risolvere il problema.
I linguaggi di programmazione sono tutti equivalenti. Hanno vantaggi e
svantaggi. Anzi probabilmente gli stessi vantaggi sono anche i loro
svantaggi.
Il C ha il vantaggio che ti avvicina al funzionamento reale della
macchina, ma questo e' anche il suo svantaggio se invece vuoi astrarre.
Un linguaggio interpretato ha il vantaggio che spesso e' piu' facile da
usare e astrae dall'architettura, ma questo puo' portare ad un calo di
prestazioni.
E comunque se usi un algoritmo che va con x^6 in C, e in Python on in Java
ne usi uno che va con log x, ti garantisco che il Java si mangia il C. 
Ovvio che se usi lo stesso algoritmo in C va piu' forte che in Java


> Andrea LaForge non è stato *mai* credibile.
prima era un dubbio :P
ciao :))

 Andrea LaForge non è stato *mai* credibile.
A me, leggendo i suoi vari post, sembra proprio il contrario. Tu piuttosto,
dopo la figuraccia che ha fatto C++ contro la salma... ops, il fortran, che
fine hai fatto? Stai preparando altri confronti di tempi di esecuzione?
Ciao
--
Noixe

 programmazione (sia quella "vera", si quella "corretta").
L'unico dubbio che ho nel proporre ad un newbie Python, nasce dal fatto che
dopo aver appreso la semplicità di Python, passare a C++ ad es., potrebbe
essere più traumatico del solito :)
--
Noixe

 Voglio dire.. cosa vuole dire programmazione corretta?
la programmazione corretta comprende un po tutti i campi anche quelli da te
citati.
Ma come fai a tenere fuori argomenti come quello della velocità di
esecuzione e una corretta gestione della memoria?
Penso che la programmazione "vera" e "corretta" debba comprendere tutto
questo,visto che si parla di "apprendimento".
ciao

 questo,visto che si parla di "apprendimento".
Si, ma se il newbie deve ancora assimilare concetti come if, then, else,
oppure i cicli, gli array (magari non intesi come puntatori, che è più
semplice), studiare come gestire la memoria è un'aspetto che potrà/dovrà
affrontare solo in seguito.
Ciao
--
Noixe

 gli array (magari non intesi come puntatori, che è più
il corretto uso degli array di certo non lo impari con python.Python potrà
avere mille altre facilitazioni, ma queste da te citate sono poco influenti
e non esatte per un facile apprendimento .
ciao

Il Sat, 06 Sep 2003 22:21:06 GMT, -Ema- fece sapere che:

Io sono pienamente daccordo con te, ti diro' ho un forte debole per il C
che sto cercando d'approfondire, e il quale e' sicuramente molto
versatile e potente, ad esempio  tempo fa ho dovuto scrivere un
algoritmo di branch and bound in fortran, oggi sto cercando di apprendere
meglio l'uso dei puntatori per realizzare una struttura dati i C che sia
piu' efficente del codice che ho gia' scitto in fortran[*], questo perche'
il fortran e' assolutamente inadatto per certe cose.
Un esempio?
Gestione dinamica della memoria, in C sai meglio di me cosa si puo'
fare, e sai anche che un array viene posizionato in locazioni di memoria
adiacenti, i compilatori fortran che ho usato invece piazzano gli
elementi in locazioni non adiaceti se faccio uso di matrici allocabili
dinamicamente, cio' porta un rallemtamento delle prestazioni, pero' il
fatto di avere delle vere matrici dinamiche e' una sicurezza in piu' per
leggibilita e verifica di eventuali bug, cioe' un elemento
dichiarato come:
integer, allocatable :: matrice_6_dimensioni(:,:,:,:,:,:)
Pittosto che scivere una malloc() e mascherare un vettore da matrice.
Un altro caso in cui userei/usero' sicuramente il fortran e' il calcolo
parallero, infatti a quanto ne so i compilatori piu' avanzati in questo
aspetto sono proprio i compilatori Fortran commerciali, che possiedono
nativamente ottimizzazioni e librerie per architetture a piu' processori
e sistemi cluster come OpenMosix.
Se poi uno vuole usare il proprio hardware allo stemo, credo che nulla
possa superare un buon programmatore + C + ASM.
Ma capirai che non e' una cosa da tutti, la programmazione per me e' uno
strumento non un fine, quindi mi accontento di una maggiore semplicita a
scapito di un pizzico di velocita in piu' :)
Io al momento sto cercado di usare i due linguaggi (dato che possibile
scriver codice misto) assieme, usando il meglio dell'uno ed il meglio 
dell'altro, non credo che X sia meglio di Y, tutto dipende dal materiale
che si trova tra la tastiera e la sedia (non siate maliziosi ;) )
Come gia' ti ho detto questi bench non significano nulla, pero' mi
permettono di approfondire certi asperti che spesso sono dati per
scontati, la discussione che abbiamo sull'altro trhead mi pare sia molto
interessante, ed io sto imparando molto, e' questo quello che mi
interessa.
Ho usato la parola bastonato, perche' volevo pizzicarlo un pochino e
farlo uscire fuori nel caso lurcasse :)
Pero' non sopporto chi a fronte di una sua ottima preparazione su un
determinato campo, emetta sentenze su sutto e su tutti senza capire o
conoscere altri campi, e spesso denigrando il lavoro altrui.
sapere nulla di cose che non gli competono direttamente.
Azathot e' un ottimo programmatore ma non capisce nulla di aerodinamica,
eppure ne parla come un esperto (mi riferisco ad un vecchio trhead)
Daltro canto ci sono ottimi esperti di aerodinamica e fludidodinamica in
generale che non si possono perdere a studiare il C/C++ per i loro scopi 
ed allora si appoggiano a soluzioni piu' immediate e meno performati quali Matlab
(interpretrato) o il fortran usando le migliai di routine pronte e
*TESTATE* da molti anni, non scriveranno codice velocissimo, ma almeno
le camere di combustione delle nostre vetture danno rendimendi migliori
rispetto a quelle di 20 anni fa :)
Ciao :)

Il Sun, 07 Sep 2003 12:13:41 GMT, Noixe fece sapere che:

LOL vedo che e' rimasta memoria dell'evento ;) 

 e non esatte per un facile apprendimento.
E perchè mai? Forse vuoi dire che non sono sufficienti a far optare per
Python come 1° linguaggio... ma a parte che questa è una tua opinione, ci
sono anche altri motivi, che rendono Python una delle migliori soluzionei
per principianti, sicuramente meglio di C/C++.
--
Noixe

 LOL vedo che e' rimasta memoria dell'evento ;)
Si! Perchč non credevo che un compilatore per Fortran fosse cosė veloce, o
almeno pių veloce di un compilatore per C++ :)
Ciao
--
Noixe

 esecuzione e una corretta gestione della memoria?
Irrilevante. Assolutamente irrilevante. 
Turing aveva pensato addirittura come esecutore dei programmi l'uomo.
Il fatto che oggi programmiamo su computer e' solo un caso.
Con questo non voglio dire che non sia importante gestire la memoria...
io personalmente mi diverto come un folle....
Semplicemente prima bisogna apprendere cosa e' un algoritmo, come
implementarlo. Eventualmente senza preoccuparsi della memoria.
Poi quando si comincia a fare sul serio, devi saperlo, ma IMHO subito
non e' necessario.
-- 
(setq RiK0 "Enrico Franchi")
(setq url "
www.anubics.org
")
(setq quote "Se mi prendo sul serio, 
 c'e' da mettersi a ridere." )

 utenti normali.
Guarda... io ho visto la gente che ha fatto dei corsi di programmazione
con me (purtroppo sono obbligatori, anche se inutili).
E devo dire che e' stato scioccante.
Molta gente sa fattorizzare 12, ma non sa dirti come ha fatto. A parole
intendo, figurati formalizzando.
-- 
(setq RiK0 "Enrico Franchi")
(setq url "
www.anubics.org
")
(setq quote "Se mi prendo sul serio, 
 c'e' da mettersi a ridere." )

 Stai preparando altri confronti di tempi di esecuzione?
Mi sembrano irrilevanti. C++ rules!
Ciao.


 per principianti, sicuramente meglio di C/C++.
Lo sbaglio che fanno in tanti è pensare che c++ sia sempre comunque
difficile.Usare c++ non significa fare uso intenso di template o di
ereditarietà,ma anche la semplice chiamata ad una funzione oppure un
semplice if o for.
Python, come detto prima,ha mille caratteristiche interessanti ma nasconde
allo studente quelle che sono le principali tecniche di uso sia della
memoria che di prestazioni.Queste cose non puoi considerarle di secondo
piano,i computer di oggi non hanno ancora le prestazioni per rendere
irrilevante la velocita'(ovviamente non per tutti i casi).Se guardi windows
che ti assorbe il 50% delle tue risorse senza far nulla capirai subito
quanto sia influente anche un solo 10% in piu'.
ciao

 non e' necessario.
Guarda studiare un algoritmo in python non è la stessa cosa che
implementarlo in c++ sono tecniche di gestione diverse.Lo studente deve
imparare il miglior metodo nel "minor tempo possibile" e passare da python
spesso,non sempre,è tempo perso.
Se python ti nasconde le tecniche ti gestione della memoria,mi spieghi come
puoi fare ad apprendere il metodo giusto?


 Ma ti riferisci alla versione "open" che ho visto sul sito della Borland?
Perche' come mi ha ricordato R1K0 non e' open source, tu l'hai provata per
caso? Nel commento di presentazione dice che serve "per creare applicazioni
open source su linux sotto GNU GPL"(tradotto),ma e' esso stesso open source?
Forse si va un po' fuori tema,ma se fosse cosi' risponderebbe sicuramente
alle esigenze di sono_io e di quanti come lui.

 puoi fare ad apprendere il metodo giusto?
Non novero Python nella cerchia dei linguaggi che conosco. Uno di questi
giorni me lo studio, ma al momento ho altre gatte da pelare.
Personalmente se devo scegliere il mio linguaggio preferito andrei con
il C puro. 
Ultimamente mi sto affezionando molto anche a Java e Lisp. 
Java per esempio e' estremamente elegante, e per imparare una buona
programmazione orientata agli oggetti e a progettare architetture
multithreading, e' adattissimo. Poi quando avrai bisogno di piu'
prestazioni, applichi quello che hai imparato al C/C++
Se devo essere poi sincero la struttura del C++ non mi piace tantissimo,
anche se i vari costrutti operator e i template sono estremamente
potenti e raffinati. Peraltro mi sono trovato spesso a sceglierlo in
quanto l'unica alternativa praticabile.
Ora sto sperando nell'ObjC. Anche se mi lascia li' la storia degli
oggetti id risolti dinamicamente, che mi sa di un po' javesco, ma su
MacOS devo dire che funziona in modo veramente superbo


 quanto sia influente anche un solo 10% in piu'.
Non uso windows neanche per sbaglio.
ciao.
-- 
(setq RiK0 "Enrico Franchi")
(setq url "
www.anubics.org
")
(setq quote "Se mi prendo sul serio, 
 c'e' da mettersi a ridere." )

 C++ rules!
ROTFL!!
--
Noixe

 irrilevante la velocita'(ovviamente non per tutti i casi).
Si, ok, ma *dopo* aver imparato a padroneggiare i concetti più importanti
della programmazione. E magari pensando di scrivere codice più veloce,
agendo sull'ottimizzazione dell'algoritmo, senza necessariamente lavorare a
basso livello.
Ciao
--
Noixe

 migliore per vedere la programmazione anche da altre prospettive).
La questione è che l'ottimizzazione di un algoritmo e le tecniche per
renderlo più' efficiente sono correlate con l'uso della memoria.Come gia
detto python puo' essere utile in qualche caso ma non lo vedo come strumento
valido per l'apprendimento,le tecniche sono troppo diverse.
Comunque credo sia inutile ripeterci non vedo una via d'uscita abbiamo
opinioni diverse sull'argomento.
Concludendo io uso python spesso e volentieri e lo trovo molto efficiente
per tante altre cose escluse quelle gia citate.
ciao

 renderlo più' efficiente sono correlate con l'uso della memoria.
Si, ma non sempre, e quando è necessario vuol dire che che ne ha bisogno non
è più un newbie.
Ciao
--
Noixe

 di educazione..
mi par di ricordare che sia contemplato il morphing. Potrei sbagliarmi, 
ma è difficile che succeda
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.3. C, C++ and ASM developers
                               and beta testers are welcome!

> e su che? a me stai sul cazzo *tu*. Che dovrei argomentare?
Ma qual č  il motivo ? neppure mi conosci :))
1) non conosci le regole dell'uso dei newsgroup...
2) sei maleducata (insulti senza motivo)
3) sei OT
insomma mi hai stufato :))
torna a scimmiottare msdn (questa č di Azathot ma condivido :))

 renderlo più' efficiente sono correlate con l'uso della memoria.
Non necessartiamente. Puoi cambiare algoritmo, usarne uno piu'
efficiente...
-- 
(setq RiK0 "Enrico Franchi")
(setq url "
www.anubics.org
")
(setq quote "Se mi prendo sul serio, 
 c'e' da mettersi a ridere." )

che ti assorbe il 50% delle tue risorse senza far nulla...
Sarà per il fatto che è scritto in C/C++ ? :-)))) 
-- 
-=§§§=-
http://web.tiscali.it/mbsoftware
zrgny...@arzobarg.vg
[rot13]

 Sarà per il fatto che è scritto in C/C++ ? :-))))
Sarà il fatto che deve dare da mangiare al fornitore Intel?
Ciao!


 ma e' esso stesso open source?
No. Non e' OpenSource.
Puoi usarlo gratuitamente, a patto che il codice che rilasci tu sia OS.
Per lo meno questo e' quello che risulta a me...
Magari un giorno di questi, de debian lo consente, lo provero'!!


Sarà il fatto che deve dare da mangiare al fornitore Intel?
Dici che lo fanno apposta? 
Tanto per sapere, sai, visto che intel non è l'unica che beneficia delle
richieste di risorse di windoz. Vedi AMD e _tutti_ i produttori del 
mondo di ram, mobo e hardware in genere.


 mondo di ram, mobo e hardware in genere.
Si chiama "indotto": c'è chi ne parla bene, chi ne parla male. Io dico 
semplicemente che se per fare la stessa cosa con le stesse performances un 
sistema operativo Microsoft richiede il 60% in più di "potenza di fuoco", 
qualcosa vorrà pur dire...
Ciao.


 mondo di ram, mobo e hardware in genere.
GNU/Linux!!!


prima era un dubbio :P
*plonk*

 per impararne altri
è il consiglio migliore fino ad adesso, credo!
grazie
marco

 Noixe, ti ringrazio, ma lascia perdere: č un povero troll.
Gią, ma mi dispiace quando la gente ne scredita altra senza ragioni reali.
Cmq, seguirņ (devo) il tuo consiglio.
Ciao
--
Noixe

 
Credo di si, tra l'altro e' un ambiente RAD di facilissimo uso.

 ROTFL!!
 
Un attimo che quardo se ho una classe o un template in tasca...
accidenti no! nulla.
vabbo
#include<math.h>
int main(){
	pow(ROTFL,1E1000);
}
o *meglio*
program x
 ROTFL**1E1000
end program x

 Non ti pare?
Non necessariamente.  Tanto per avere un punto di riferimento
in comune, partiamo ad esempio con la Bibbia in inglese che e`
facile trovare in rete, nel formato con una linea per versetto
ciascuna con un breve prefisso (che identifica libro e numero
del versetto), tipo:
Ge1:1 In the beginning God created the heaven and the earth.
Ge1:2 And the earth was without form, and void; and darkness was upon the
face of the deep. And the Spirit of God moved upon the face of the waters.
Ge1:3 And God said, Let there be light: and there was light.
ecc ecc, dimensioni totali:
[alex@lancelot x]$ wc kjv.txt
  31103  820744 4404445 kjv.txt
[alex@lancelot x]$
(31103 versetti, 820744 parole, 404445 byte di testo).
Supponiamo di volere leggere questo file in una struttura dati
in memoria, ed effettuarne il sort per versetti secondo il numero 
di parole (separate da spazi) in ciascun versetto.  
Possiamo contare le parole di ciascun versetto con il normale
algoritmo C++ (Koenig & Moo p. 152):
#include <string>
#include <cctype>
static bool
isnotspace(char c)
{
  return !std::isspace(c);
}
int
word_count(const std::string & str)
{
  typedef std::string::const_iterator str_citer;
  str_citer i = str.begin();
  int count = 0;
  while (true) {
    i = std::find_if(i, str.end(), isnotspace);
    if (i == str.end()) break;
    count++;
    const str_citer j = std::find_if(i, str.end(), isspace);
    i = j;
  }
  return count;
}
e quindi costruire una struttura appropriata in memoria sia
come std::vector sia come std::list a piacere, cioe` (con
uno std::vector):
#include <iostream>
#include <fstream>
#include <vector>
#include <list>
#include <algorithm>
[snip funzioni di conteggio parole gia` viste]
typedef std::pair<int, std::string> item_t;
std::vector<item_t> items;
void
read_file(const char* filename)
{
    std::ifstream f(filename);
    std::string s;
    while(std::getline(f, s)) {
        int words = word_count(s);
        items.push_back(std::make_pair(words, s));
    }
}
bool
item_less(const item_t& a, const item_t& b)
{
    return a.first < b.first || (a.first == b.first) && a.second < b.second;
}
int main()
{
    read_file("kjv.txt");
    std::cout << "tot versetti " << items.size() << "\n";
    std::sort(items.begin(), items.end(), item_less);
    std::cout << "primo: " << items[0].second << "\n";
    std::cout << "ultimo: " << items[items.size()-1].second << "\n";
    return 0;
}
e del tutto analogamente con una std::list (mostro solo le parti
cambiate oltre all'ovvio cambiamento degli include):
typedef std::pair<int, std::string> item_t;
std::list<item_t> items;
   ...
    items.sort(item_less);
    std::cout << "primo: " << items.begin()->second << "\n";
    std::cout << "ultimo: " << (--items.end())->second << "\n";
Il giochino con items.begin() e --items.end() potremmo farlo anche
con lo std::vector, ovviamente, l'unico cambiamento importante
e` usare std::sort per il vector ma items.sort per la list.
Ora, le prestazioni (Linux, Athlon, gcc 3.2.2, non ottimizzato):
[alex@lancelot x]$ time ./dok_lis>/dev/null
1.79user 0.03system 0:01.84elapsed 98%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (227major+1686minor)pagefaults 0swaps
[alex@lancelot x]$ time ./dok_vec>/dev/null
1.79user 0.07system 0:01.85elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (228major+1659minor)pagefaults 0swaps
Come vedi le prestazioni col vettore e con la lista sono eguali
entro i margini degli errori di misurazione.  E ottimizzando:
[alex@lancelot x]$ g++ -O3 dok_vec.cpp -o dok_vecO
[alex@lancelot x]$ g++ -O3 dok_lis.cpp -o dok_lisO
[alex@lancelot x]$ time ./dok_vecO>/dev/null
1.56user 0.03system 0:01.59elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (227major+1659minor)pagefaults 0swaps
[alex@lancelot x]$ time ./dok_lisO>/dev/null
1.57user 0.00system 0:01.57elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (227major+1687minor)pagefaults 0swaps
...ancora non fa differenza quale struttura dati abbiamo usato.
Per curiosita`, ecco il programma esattamente equivalente in Python:
def word_count(s):
    return len(s.split())
def read_file(filename):
    return [ (word_count(s), s) for s in file(filename) ]
def main():
    items = read_file("kjv.txt")
    print "tot versetti", len(items)
    items.sort()
    print "primo:", items[0][1]
    print "ultimo:", items[-1][1]
main()
e le sue prestazioni:
[alex@lancelot x]$ time python dok.py >/dev/null
0.86user 0.07system 0:00.93elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (444major+1915minor)pagefaults 0swaps
circa 2 volte meglio del C++ non ottimizzato, in questo specifico caso,
ma con l'importante avvertenza di un certo aumento dei pagefault, che su
sistemi operativi con una cattiva gestione della memoria virtuale (vecchi
Windows/95 fra i peggiori) sarebbe penalizzante (su Linux il costo dei
pagefault e` gia` incluso nell'output del comando time, naturalmente).
Alex

 anche meglio).
La scelta dipende da una fondamentale decisione didattica: e` piu`
produttivo imparare in un ambiente MOLTO vincolato (in cui si deve
informare accuratamente il compilatore su tutti i dettagli di tutti
i tipi in gioco), o in uno POCO vincolato (dove i tipi se li vede
il runtime, sollevando eccezioni se del caso)?  Notiamo che non si
parla comunque di "tipizzazione debole" (come ad es. in linguaggio
macchina), bensi` statica ed esplicita/ridondante (Pascal) rispetto a
dinamica ed implicita/intrinseca (Python) -- altri linguaggi ancora,
come Haskell, hanno tipizzazione statica ed implicita/intrinseca
(il compilatore puo` dedurre tutti i tipi in gioco, come in Python,
ma lo fa staticamente, come in Pascal, non dinamicamente), ma l'uso
didattico di Haskell e simili e` consigliabile solo a quelle rare
persone che "pensano", ``di natura'', in termini matematici puri
ed astratti -- Pascal e Python sono + concreti e quindi + adatti
come primo linguaggio per il 99% dei possibili studenti.
Chi ritiene didatticamente superiore la scarsita` di vincoli
arbitrari potra` scegliere fra Python, Ruby, Smalltalk, Scheme
(e altri linguaggi lisp-like, ma Common Lisp e` forse troppo
"grande" come primo linguaggio da imparare), ...; chi al contrario
ritiene che l'abbondanza di vincoli arbitrari sia un vincolo
didattico positivo potra` scegliere fra Pascal, Eiffel e suoi
dialetti, magari Ada (forse troppo "grande").
E` un po' come dire: per insegnare l'italiano agli stranieri,
e` meglio partire dalla prosa del linguaggio parlato (relativamente
pochi vincoli) o dalla poesia, magari specificamente dagli
endecasillabi danteschi, con i loro precisi vincoli su sillabe,
accenti, rime, ...?  Entrambe le scuole vantano precedenti
storici di rilievo.  Al giorno d'oggi nell'insegnamento delle
lingue naturali si punta molto sulla "lingua viva" (prosa, pochi
vincoli grammaticali rigorosi, ...), ma nel medioevo la pensavano
diversamente.  A mio parere puo` benissimo darsi che la scelta
migliore fra le due scuole vari da persona a persona, cioe` che
ci siano persone che imparano meglio in un contesto estremamente
vincolato e rigidamente strutturato, altri invece che imparano
meglio con "piu` pratica e meno grammatica".  Pero` mi sembra
(sulla base dell'esperienza empirica, non di studi rigorosi, che
non credo siano mai stati fatti) che il secondo approccio sia
adatto a piu` persone, il primo a una minoranza (cosi` come
entrambi questi approcci grosso modo "concreti" sono adatti a
piu` persone di quello rigoroso e astratto di Haskell).
Alex

 main()
e lo stesso qui ..
Mettiamo da parte anche i ritardi dovuti all'interprete per tutti i suoi
controlli,vorrei capire come fai a dire che il tuo codice abbia prestazioni
migliori di un altro scritto in C/C++ ?
Per fare un confronto valido bisognerebbe prendere lo stesso codice usato da
python e non un algoritmo che si presume identico...
ciao

qualcosa vorrà pur dire...
In quel caso vorrà dire che è stato programmato a pene di segugio.
Però prima bisogna vedere se fanno davvero la stessa cosa e nello
stesso modo. E' normale che fare le stesse cose ma in modo più
semplice e con bottoncini e iconette più colorate possa richiedere
maggiori risorse hardware.
Ciao.


 maggiori risorse hardware.
In modo piu' semplice??? 
su questo potrei discutere. l'unica cosa semplice in ambiente windows e'
fare crashare il computer.
i bottoncini colorati non credo che valgano il rinnovo di un parco
macchine.


 maggiori risorse hardware.
E questa dove l'hai letta, su Topolino? <g>
Ciao.
-- 
[1] Del 10%, eh... :-\


 Noixe, ti ringrazio, ma lascia perdere: è un povero troll.
E tu sei povero, e basta.
-- 


 linux che windows e che possa essere compilato su entrambe le piattaforme.
C++, decisamente.
Ciao!


 da python e non un algoritmo che si presume identico...
Ma che balle dici?  Se vuoi ad esempio confrontare le prestazioni di
un programma Java con quelle di un programma "esattamente equivalente"
(cioe` che svolge esattamente gli stessi compiti) scritto in C++, come
diavolo potresti "prendere lo stesso codice usato"?!  E` ovvio che quel
che fai e` (per quanto possibile) garantire uso equivalente delle ben
diverse librerie standard dei due linguaggi, poi misuri le prestazioni
complessive comprese le qualita` di compilatori, libreria, JVM e suo
eventuale JIT nel caso di Java, sistema operativo, HW sottostante, ecc
ecc.  E` solo su queste basi che si sente spesso affermare che C++ (per
molti compiti) e` "piu` veloce di Java", o al contrario che (in alcuni
specifici casi in cui un buon JIT puo` veramente sfoggiare le sue
caratteristiche) in quel dato programma Java puo` battere C++.
Se pensi che (ad esempio) Andrew Koenig e Barbara Moo abbiano pubblicato
un algoritmo poco performante per il conteggio delle parole (separate
da spazi bianchi) in una stringa, puoi facilmente pubblicare (forse
meglio su it.comp.lang.c++) il tuo algoritmo alternativo mostrandone
le svettanti prestazioni.  Ecc, ecc.
Comunque, tutti questi dettagli non giustificano la tua errata
affermazione sopra riportata: se eventualmente potessi migliorare
l'algoritmo di conteggio delle parole, questo miglioramento avrebbe
eguale effetto sia sulla versione del programma C++ che usa le
liste, sia su quella che usa i vettori.  Alla fin fine la differenza
per questo programma si riduce a:
    -- costo di push_back su std::vector rispetto a std::list, e
    -- costo di std::sort su std::vector rispetto a std::list::sort
Punto e basta.  Ovviamente questi due costi dipendono poi solo ed
esclusivamente dalla qualita` di implementazione delle librerie
standard del C++ che hai a disposizione: lo standard C++ precisa
_ALCUNI_ aspetti relativi alle prestazioni delle librerie, ad esempio
"sai" che N push_back sul vector DEVONO avere un costo ammortizzato
O(N) ed e` vietato alle librerie usare "scorciatoie" che potrebbero
causare costi O(N^2) o che, ma si tratta appunto sempre di specifiche
del tipo O(), quindi "al netto di costanti" anche moltiplicative...
e quindi, ancora una volta, se le prestazioni ti interessano davvero
non hai proprio alternative rispetto a implementare le alternative
che stai considerando e MISURARE (sulle macchine di tuo interesse,
con sistemi operativi idem, ecc, ecc).  A volte puoi risparmiarti,
almeno in teoria, di misurare alternative che "sai" porterebbero a
veri disastri prestazionali [del tipo O()], ma attenzione che se devi
trattare problemi "piccoli" a volte un algoritmo con un brutto O()
puo` essere comunque meglio se le sue constanti sono meravigliosamente
piu` piccole dell'algoritmo con un O() piu` soddisfacente (se puoi
pagare il prezzo, puo` persino convenirti implementare molteplici
algoritmi e commutare fra loro a seconda di stime o indicatori sulle
"dimensioni" in gioco per ogni specifico problema o sottoproblema:
un simile "fall-back" e` spesso fondamentale ad esempio nelle varie
implementazioni recursive di algoritmi di sort, visto che ad es. un
insertion sort e` certamente inaccettabile [O(N^2)] per problemi
grandi, ma quando via via suddividendo arrivi a N abbastanza piccoli
l'insertion sort puo` essere il modo giusto di trattare questi
"piccoli sottoproblemi" in cui scomponi il problemone quello grande).
Alex

 mi pare facciano uso dei set di istruzioni specifiche dei processori AMD.
Credo che ti sbaglii, e che prodotti come Microsoft DirectX supportino
"3DNow!", set di istruzioni specifiche dei processori AMD, da anni.
Alex

 "3DNow!", set di istruzioni specifiche dei processori AMD, da anni.
No non mi sbaglio. Tu ti riferisci alle DirectX. che sono librerie grafiche 
per la generazione di grafica 2D/3D. Io mi riferisco al Windows Media 
Player, che credo che l'unico aspetto delle DirectX che usano siano 
l'accesso diretto alla superficie video.
Che io sappia l'unico SW (esclusi i videogiochi specifici) che si avvalgono 
del 3DNow! è il Via Voice di IBM.
-- 


 affermazione sopra riportata: se eventualmente potessi migliorare
io ho parlato di algoritmo simile alle liste di python e questo è
assolutamente vero, in quanto non ho fatto nessun riferimento a std (questa
è una tua allusione non mia)
Per fare un confronto valido devi scrivere un classe per la gestione delle
liste simil-python che abbia le migliori prestazioni e non un algoritmo
generico per la gestioni di vettori generici.
Semmai avessi intenzione di rispondere per favore attieniti
all'argomento,leggere tutta quella roba è scocciante

 necessariamente, trasformato in codice macchina nativo.
La mia era solo una battuta. Il post iniziale puzzava tremendamente di troll
e sospettavo un proliferare di messaggi di risposta (come effettivamente sta
avvenendo).
Cmq sono d'accordo con te.
Ciao,
Enrico

 
Non e' convincente. Anche la maggior parte delle distibuzioni linux per 
il desktop richiedono sempre piu' risorse, anche se non quante ne 
richiede windows. Secondo voi sono tutti un'associazione per delinquere? 
Mi pare un po' forzata come cosa.
Ciao.
  -Ema-

 richiede windows. 
Appunto: non quanta, e soprattutto *per* *libera* *scelta* *dell'* *utente*. 
Che se vuole può ancora usare il suo fido P166... anche fosse solo a linea 
di comando. Hai la possibilità di usare liberamente adesso, chessò, Windows 
'95? <g>
Ciao!
-- 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.

 all'argomento,leggere tutta quella roba è scocciante
E tu non leggerla.  Ne tu, ne` alcun idiota della tua risma, potra`
mai impedirmi di postare tutte le informazioni che ritengo
interessante postare.
Comunque, adesso parto per uno dei soliti viaggi di lavoro quindi 
dubito che continuero` ulteriormente a mostrare che cretino sei,
anche perche` qualsiasi lettore con mezzo grano di sale in zucca
lo ha gia` capito.  Continua pure a sporcare questo NG a tuo piacere,
tanto non posso impedirtelo.  *PLONK!*, e buon resto della tua vita.
Alex

 Comunque, adesso parto per uno dei soliti viaggi di lavoro 
Olè, si scappa...
Ciauz!


 avvalgono del 3DNow! è il Via Voice di IBM.
Mi pare anche Winamp e alcuni motori 3D come Caligari e Virtue, ma
certamente i giochi (non so cosa intendi per "specifici", io penso
a cose come Unreal, Quake &c -- tieni presente che i giochi non
sono il mio campo!) saranno le applicazioni + tipiche (che altro
"pilota" l'adozione di schede grafiche sempre + super, ecc, ecc? i
giochi hanno ben altro mercato di massa delle applicazioni techniche 
o scientifiche che fanno visualizzazione 3D cosi` avanzata...).
Alex

E questa dove l'hai letta, su Topolino? <g>
No, non leggo le tue fonti ;) Togli la nuova grafica a WinXP e
otterrai le stesse richieste hardware di Win2000.
Ciao.
-- 
-=§§§=-
http://web.tiscali.it/mbsoftware
zrgny...@arzobarg.vg
[rot13]

 Olè, si scappa...
Da chi?  Da te e dagli scemi come te?  Ma per favore... "si va a
guadagnare la pagnotta" (e lo champagne da berci assieme), altro
che.  Vedi 
www.strakt.com
 per le belle cosette che stiamo facendo
(tutte in Python solo per farti rabbia).
Alex

 Mi pare un po' forzata come cosa.
Richiedono piu' risorse, ma hanno un tasso molto graduale di crescita, e
ti permettono comunque di usare soluzioni meno pesanti!!
KDE occupa troppo? puoi usare Gnome2. Oppure addirittura wmaker o xfce.
Il fatto che la configurazione di punta offra sempre di piu' e chieda di
piu' non e' un problema, fintanto che uno ha altre soluzioni.
Posso benissimo aggiornare kernel, compilatore, browser, ssh e altre
fole di sicurezza, e d'altra parte non caricare sulla GUI (e' quella che
ciuccia risorse!)
-- 
(setq RiK0 "Enrico Franchi")
(setq url "
www.anubics.org
")
(setq quote "Se mi prendo sul serio, 
 c'e' da mettersi a ridere." )

 non è poi così difficile...
Questo per avere una superba portabilita' suppongo. e poi ormai un
compilatore come il 3.3 e' piu' scaltro del 95 % dei programmatori come
pura ottimizzazione del codice dato.
Peraltro il 3.2 (e' noto) E' LENTO DI SUO.
non e' ottimizzato


 linguagigo lo implemento con la rispettiva libreria standard.
AAHAHAHHAAHHAHHA
Da oggi potremo confrontare meloni e cocomeri..
[snip] perche' sono stufo di leggere tante stupidate...
Dalle tue parole abbiamo capito questo..
1) C++ è inutile
2) Python è estremamente più veloce di C++
complimenti :))))
ops dimenticavo....
abbiamo anche capito che sei un "FANATICO" e maleducato,non rispetti le
opinioni di nessuno

 come nei recenti confronti Fortran/C su di un altro thread.
Scusate ma adesso vorreste farmi credere che sto benedetto C fa cosi'
schifo, nonostante lo usino poi ancora tutti o gran parte di tutti???
Secondo me si ha un po' il dente avvelenato, non so perche', ma posso
intuire che a discutere con i fanatici o li si mette nel kill file, o si
diventa fanatici in senso opposto e si va avanti a flame.
Pero' manteniamo l'obiettivita'.
Senza mettermi a sbandireare a questo e' meglio di quello...
Qualcuno che non sia uno dei crociati del C/C++ e' convinto che il C
vada bene ancora per qualcosa, oppure fa a tutti schifo.
Nel qualcaso, non e' che ve lo hanno fatto venire a schifo proprio i
crociati?


 wrote:
Non e' cosi' importante se favorisce solo Intel o favorisce Intel Amd e
chi fa RAM.
Il fatto e' che di sicuro non favorisce chi la compra!!!


 in C++ con std::pair idem)
Non conosco il Python (come continuo a ripetere.. ).
Ma di sicuro il C++ non ha *niente* di paragonabile alle liste del
Lisp...
Per simulare la costruzione delle funzioni primitive ricorsive in Lisp
e' un giochetto.. per farlo in C++ ci vuole un po' piu' di sangue, e
comunque se ne perde l'eleganza teorica.


 crociati?
Solo quelli che confondono C e C++ nell'ingannevole dizione "C/C++",
ma quelli sono crociati che valgono poco;-).  Gente come Abrahams o
Koenig puo` difendere il C++, o gente come Ritchie o Colvin il C,
con chiarezza e precisione, senza confonderli e senza "far venire
a schifo" cio` che difendono;-).
Alex

 comunque se ne perde l'eleganza teorica.
Nolo contendere sull'"eleganza teorica", C++ (come la maggior parte
dei linguaggi di successo) e` soprattutto un linguaggio _pragmatico_
(e di "eleganza" non lo accuserebbe nessuno;-).  Nella pratica
sospetto che il problema #1 sarebbe che la tipica implementazione
C++ non ottimizza la tail recursion (perche` non e` un idioma
tipico del linguaggio -- quindi _pragmaticamente_ non e` criticabile
il fatto di non trattarlo specificamente)...
Alex

 Il fatto e' che di sicuro non favorisce chi la compra!!!
Veramente si`, purche` chi compra la RAM e le CPU si guardi bene
dal farci girare su ambienti tipo Windows-XP;-).  Grazie in buona
parte agli enormi volumi venduti (l'indispensabile pompa dietro
alla legge di Moore: se non ci fossero i volumi non ci sarebbero
gli enormi investimenti, sempre crescenti, necessari perche` la
legge continui ad operare) al giorno d'oggi si possono avere, che
so, 512MB o 1GB di RAM a meno di quel che pochi anni fa costavano
4MB o 8MB.  Se io ci giro un kernel BSD (o Linux ben limato), e
li uso per calcoli di aritmetica combinatoria che richiedono la
stessa RAM oggi che richiedevano vent'anni fa, vado sul velluto;-).
Alex

 stessa RAM oggi che richiedevano vent'anni fa, vado sul velluto;-).
Verissimo, ed e' quello (+ o -) che faccio io... (non l'aritmetica
combinatoria). e la mia debian scheggia...
ma mi dispiace un po' per gli utontoloni che pagano e io che senza
pagare ne godo!
:-)))))))


 fare in 4 e 4 8...?
beh.. quello e' vero. anche se rimane il problema che il Lisp e' in
grado di creare codice che esegue automaticamente, passare parti di
codice come dati ecc...
si puo' fare anche in C++ certo... ma a mio avviso ha poco senso.
Il C++ ha un suo ambito di utilizzo, in cui eccelle (anche se a me sta
cominciando a piacere di piu' l'ObjC, per lo meno sotto MacOSX).
Il Lisp e' usato in altri campi, e in quelli e' imbattibiile...


 a schifo" cio` che difendono;-).
Se ti stai riferendo a me, io li ho messi in sieme semplicemente perche'
vengono sempre bastonati entrambi. Il tuo e' uno dei primi post
equilibrati che riconosce il loro intrinseco valore.
Confonderli e' abbastanza difficile. Piuttosto riconoscere che hanno
numerosi punti di contatto. Anche se magari in effetti sono meno di
quelli che si possa pensare.


 vada bene ancora per qualcosa, oppure fa a tutti schifo.
Per me il C e` un buon linguaggio di programmazione ma in quanto
tale ha dei domini di utilizzo piu` o meno sensati. Usarlo per tutto
e` stupido, usarlo quando deve essere usato e usarlo nel modo giusto
e` piu` che corretto.
Il punto e` che in quanto programmatori (e non utilizzatori di un
linguaggio) saremmo tenuti a valutare (e imparare) quando e come
usare un determinato linguaggio nell'ambito di certi domini.
Non come certa gente che vuole scrivere le CGI in C++
-- 
Lawrence "Rhymes" Oluyede
http://loluyede.blogspot.com
rhy...@NOSPAMmyself.com

 2) Python č estremamente piů veloce di C++
A me non sembra di aver letto questo comunque
direi di chiuderla qui perche` tutti sti flame inutili
sono appunto...inutili


 esiste perfino un assembler scritto... in bash
Sul serio? Puoi passarmi un link?


 sono appunto...inutili
noi stavamo discutendo in maniera moderata dovresti dirlo al tuo amico visto
che lo conosci bene
ciao :)

 Sul serio? Puoi passarmi un link?
qui e' dove ho sentito che ne parla.
e' OSIMPA
http://www.linuxassembly.org/howto/other.html
secondo me e' una cosa vecchiotta... link che ho trovato sono
http://compilers.iecc.com/comparch/article/01-07-148
solo che non sono riuscito a trovare eseguibili o sorgenti.... (beh...
direi nella fattispecie sorgenti, visto che sono script di shell)...
anche se da come ne parla nel secondo link, mi sa che le informazioni
contenute nel linuxassembly sono un po' fuorvianti (e che hanno
fuorviato pure me)
Il predecessore di osimpa si chiamava shasm (shell asm???)


 visto che lo conosci bene
E` piu` che in grado di difendersi da solo e Google Groups e` li apposta
(finche` MS non prendera` in mano tutta la baracca :)


 
Attenzione. Non ho detto che GNU/Linux e' uguale Windows. Non c'e' 
dubbio che i sistemi GNU/Linux e BSD abbiano una gamma di scelta 
estremamente superiore. Nel mio piccolo, nell'ultimo anno ho installato 
solo server Linux (ovviamente senza GUI) perche' sono convinto che le 
prestazioni siano decisamente superiori. Per i client, purtroppo, ad 
oggi non posso scegliere, sono costretto ad utilizzare quasi sempre MS, 
anche se quando posso uso sistemi GNU/Linux.
Quello che contesto e' l'affermazione che MS fa sistemi che richiedono 
sempre piu' risorse per fare un favore ad Intel o altri. In realta' 
quasi tutti fanno software che richiedono sempre piu' risorse. IBM, 
Oracle, gli stessi ambienti di sviluppo open source e commerciali hanno 
questa tendenza sia per ambienti MS che per altri ambienti. Non mi pare 
che sia solo MS. Mi risulta difficile pensare che siano tutti daccordo 
nel favorire Intel.
Ciao.
  -Ema-

 sempre piu' risorse per fare un favore ad Intel o altri. 
Non e' un'affermazione mia. Io personalmente sono propenso a
condividerla, e per lo meno non la vedo come assurda, ecco tutto.
O meglio, si', l'affermazione e' anche mia... dico solo che non mi
sembra fuori dal mondo, visto come vanno molte cose...


 E` piu` che in grado di difendersi da solo e Google Groups e` li apposta
ma di che stai parlando ?
ti ho solo detto che prima di parlare ocn alex si discuteva in maniera
moderata(visto che parlavi di flame,escluso il momento patetico di
discusisone sul  nick di altri frequentatori).
Non mi sembra così difficile da capire...

 Olè, si scappa...
[snipponi vari per il post su quello non scritto da azatont]
Complimenti per un post ricco di motivazioni tecniche.
A ben guardare ciccino sei tu quello che deve ancora uscire bene dalle
discussioni... Ma anche solo una volta basterebbe.
-- 
Valentino Volonghi, Regia SpA, Milan
Linux User #310274, Debian Sid Proud User

 crociati?
Amo il C/C++. E' vero sono diversi ma sono come padre e figlio, o padre 
e nipote... insomma appartengono alla stessa famiglia.
Sono linguaggi potenti, che danno un contatto con l'hardware come pochi 
altri riescono a fare. Per questo sono particolarmente adatti per 
realizzare SO, drivers, e tutte quelle applicazioni che hanno a che fare 
con l'harware ma non solo. Con il C/C++ si possono realizzare 
applicazioni di qualsiasi tipo con delle performance che difficilmente 
possono essere eguagliate. Ho detto pero' che si _possono_ realizzare. 
In linea _teorica_ con questi linguaggi si puo' fare tutto ma in pratica 
risulta conveniente e saggio utilizzarli solo in certi ambiti. Sta a noi 
scegliere di volta in volta, in base alle specifiche sui 
tempi/prestazioni/funzionalita' ed al budget del progetto decidere quali 
tecnologie utilizzare.
Ho sostenuto piu' o meno la stessa cosa qualche tempo fa':
http://groups.google.it/groups?hl=it&lr=&ie=UTF-8&oe=UTF-8&threadm=slrnblm970.n9.-%3DM%3DM%3D-%40spartacus.merznet&rnum=1&prev=/groups%3Fq%3D%2522A%2Bdire%2Bil%2Bvero%2Bnon%2Bmi%2Bdispiacerebbe%2Bdarti%2Bragione%2522%26hl%3Dit%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26selm%3Dslrnblm970.n9.-%253DM%253DM%253D-%2540spartacus.merznet%26rnum%3D1
Ciao.
  -Ema-

 direi nella fattispecie sorgenti, visto che sono script di shell)...
Scusa e questo che e`? 
ftp://linux01.gwdg.de/pub/cLIeNUX/interim/osimpa.tgz


 Non mi sembra cosě difficile da capire...
Appunto, non comprendo come mai tu non abbia capito


 Appunto, non comprendo come mai tu non abbia capito
a me non è mai interessato leggere i contributi di alex se non di sfuggita
non vedo come facevo a capire questa tua frase criptica...
Dovresti prendere in considerazione il fatto che non tutti leggiamo le
stesse cose,non ti pare?

 stesse cose,non ti pare?
Leggi sopra.


 Scusa e questo che e`? 
ftp://linux01.gwdg.de/pub/cLIeNUX/interim/osimpa.tgz
quando ci avevo cliccato io (e' quello nella pagina che ti ho dato, no?)
non dava segni di vita alcuna e mi dava errore....


 non dava segni di vita alcuna e mi dava errore....
Eh eh ora a quanto pare l'hanno messo, se ti va di provarlo
al posto mio fammi sapere (anche in mail, usa quella
che trovi sul sito che e` mejo), io non ho molto
tempo in questo periodo.


 tempo in questo periodo.
Al momento ho qualche problemino a provarlo... sotto mano non ho x86...
comunque passati gli esami (nel senso passato il periodo esami) magari
ci lavoro sopra... 
poi ti faccio sapere... anche se secondo me e' comunque una cosa piu' di
principio che altro... voglio dire...
gas funziona strabene di suo!!!
e se a uno non je piace (piu' che altro e' comodo conoscerlo per
inlineare assembly) c'e' sempre il fido NASM...


 Certo certo, ora sono diventato un minorato mentale.
hai capito male quello che volevo dire.
Dicendo che non hai letto tutti i post di conseguenza non puoi capire...

 discussioni... Ma anche solo una volta basterebbe.
Vongolona... torna in mare, vah...
Bye.
-- 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.