Discussion:
[OT]: quale linguaggio di programmazione? era(R: Java ... che pes antezza ...)
(too old to reply)
Premoli, Roberto
2005-05-26 15:50:27 UTC
Permalink
Anche il Python che, guarda caso, occupa l'1% di Java a runtime.
Ipse dixit (http://www.tuxjournal.net/intervista2.html)
"11) Al di fuori di Python, quale linguaggio di programmazione
preferisci
per i tuoi lavori?
Java e C."
Guido Van Rossum :-)
rd (che "adora" e Java e python)
Dal tread precedente mi e' sorta la domanda:
che linguaggio mi consigliereste per linux?
Tenete conto che il mio back round e':
- assembrer Z80
- quick basic 4.5 dos
- visualbasic 5.0 win

Ho dato una occhiata a GAMBAS, ma non mi soddisfa ancora abbastanza
(infirme gestione degli array) per buttarmici sopra.

Le esigenze che ho sono di due tipi:

A - creare rutin di calcolo il piu veloci possibili (quindi non mi frega
della grafica), magari con la possibilita' di inserire "pezzi" di
assembler.

B - creare qualche applicazioncella con grafica

(i due tipi A e B sono disgiunti tra loro)

Per A, cosa consigliate? C, phyton, o altro?

Per B, oltre a GAMBAS, cosa c'e' disponibile?

Roberto
petdog
2005-05-26 17:07:05 UTC
Permalink
Post by Premoli, Roberto
che linguaggio mi consigliereste per linux?
[...]
Post by Premoli, Roberto
A - creare rutin di calcolo il piu veloci possibili (quindi non mi frega
della grafica), magari con la possibilita' di inserire "pezzi" di
assembler.
B - creare qualche applicazioncella con grafica
(i due tipi A e B sono disgiunti tra loro)
Per A, cosa consigliate? C, phyton, o altro?
Mmm... per routine di calcolo veloci python non è il più adatto, ma C
credo di sì!
Post by Premoli, Roberto
Per B, oltre a GAMBAS, cosa c'e' disponibile?
Qui invece python va benissimo...
GAMBAS non lo conosco, ma a quanto vedo è una specie di visual basic...
python è un altro mondo! :D
Vincenzo Ciancia
2005-05-26 19:45:42 UTC
Permalink
Post by Premoli, Roberto
A - creare rutin di calcolo il piu veloci possibili (quindi non mi frega
della grafica), magari con la possibilita' di inserire "pezzi" di
assembler.
B - creare qualche applicazioncella con grafica
(i due tipi A e B sono disgiunti tra loro)
Per A, cosa consigliate? C, phyton, o altro?
Per "A",se vuoi cambiare radicalmente approccio puoi provare ocaml, le
librerie a disposizione sono una marea ma il modo di programmare è
totalmente ad alto livello. Credo che come prestazioni sia *in genere* il
più veloce linguaggio garbage-collected ma no flame e prendere con le
pinze, è una ipotesi.

Altrimenti, se sei un incorreggibile "vecchia guardia" "voglio gestire la
memoria da solo, farmi del male ma capire tutto fino all'ultima istruzione"
"programmare ad alto livello non mi interessa", programma prima in C e poi
in C++: comunque vada è la cosa più complicata che tu possa studiare quindi
quella che ti farà imparare di più, e forse sono gli unici due linguaggi
che permettono di incorporare "snippets" in assembler. Per quanto se devi
programmare in assembler IMHO conviene che prendi nasm (apt-cache show
nasm) e fai delle funzioni separate da chiamare poi dal C.

Ocaml lo trovi a

http://caml.inria.fr

ma basta apt-get install ocaml-* :)

Per "B" invece le scelte sono tantissime, ocaml non va molto bene perchè ci
sono i binding per gtk ma non per libgnome, nè per qt. Per quanto si
potrebbe usare un renderer di interfacce XML tipo XUL, ma questa è ancora
"ricerca" più che una cosa usabile :)

C e C++ _io_ _personalmente_ (no flame) non li userei perchè penso che per
applicazioni complesse e potenzialmente multithreaded non valga la pena di
gestire la memoria a mano, puoi provare per esempio a installare kdevelop
con python e pyqt che è immediato da usare in quanto interpretato, e
integra il form designer. Oppure puoi provare eclipse e java con swt ma è
decisamente una cosa meno "immediata". Anche qui, se vuoi fare il "io
faccio tutto all'antica perchè una volta le cose funzionavano meglio" ti
prendi la documentazione di gtk o di qt, e programmi in C senza usare un
form designer, ma non so quanto ne valga la pena. Almeno converrebbe in
ogni caso usare i file XML (di glade o di qt-designer) per le interfacce
altrimenti si fa solo casino.

Mah, mi pare che a voler essere sintetici ti ho detto un po' tutto :)

V.
--
Please note that I do not read the e-mail address used in the from field but
I read vincenzo_ml at yahoo dot it
Attenzione: non leggo l'indirizzo di posta usato nel campo from, ma leggo
vincenzo_ml at yahoo dot it
int
2005-05-27 07:16:44 UTC
Permalink
Post by Vincenzo Ciancia
Post by Premoli, Roberto
A - creare rutin di calcolo il piu veloci possibili (quindi non mi frega
della grafica), magari con la possibilita' di inserire "pezzi" di
assembler.
Per "A",se vuoi cambiare radicalmente approccio puoi provare ocaml, le
librerie a disposizione sono una marea ma il modo di programmare è
totalmente ad alto livello. Credo che come prestazioni sia *in genere* il
più veloce linguaggio garbage-collected ma no flame e prendere con le
pinze, è una ipotesi.
La cosa interessante di ocaml rispetto a python e java è proprio il suo
sdk. Ha anche un compilatore *nativo* per varie cpu/sistemi operativi
che non è un compilatore bytecode che poi compila il bytecode in
assembler, ma compila *direttamente* in assembler dal sorgente, usando
sue calling convention, trasforma le chiamate ricorsive in loop
automaticamente laddove possibile, insomma sembra molto interessante.
Strano quel modo di gestire l'ultimo bit di un dato, ma dice che aiuta
l'efficenza :-)

http://merjis.com/developers/ocaml_tutorial/ch11

L'unico prodotto "famoso" che io conosca scritto in ocaml è MLDonkey.
--
To UNSUBSCRIBE, email to debian-italian-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Vincenzo Ciancia
2005-05-27 10:56:20 UTC
Permalink
Post by int
La cosa interessante di ocaml rispetto a python e java è proprio il suo
sdk.
E io che credevo che fossero il sistema di tipi, l'inferenza di tipi e
l'efficienza causata dal conoscere tutte le strutture dati a tempo di
compilazione :)

Cmq a giudicare da

http://caml.inria.fr/cgi-bin/hump.en.cgi?sort=0&browse=16

direi che "le altre due" applicazioni famose scritte in ocaml sono unison ed
hevea.

V.
--
Please note that I do not read the e-mail address used in the from field but
I read vincenzo_ml at yahoo dot it
Attenzione: non leggo l'indirizzo di posta usato nel campo from, ma leggo
vincenzo_ml at yahoo dot it
int
2005-05-27 13:39:01 UTC
Permalink
Post by Vincenzo Ciancia
Post by int
La cosa interessante di ocaml rispetto a python e java è proprio il
suo sdk.
E io che credevo che fossero il sistema di tipi, l'inferenza di tipi e
l'efficienza causata dal conoscere tutte le strutture dati a tempo di
compilazione :)
Capisco, è che io sono rimasto a quell'articolo :-)
Cmq un'altra applicazione forse non famosa ma bella è

http://www.polygen.org

da vedere!: Debiti/Pestilentiam contrahant
--
To UNSUBSCRIBE, email to debian-italian-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Vincenzo Ciancia
2005-05-27 14:01:17 UTC
Permalink
Post by int
Cmq un'altra applicazione forse non famosa ma bella è
http://www.polygen.org
Schiantato dalle risate :)

Chico [in posizione yoga]: La verita' e' che io non sono mia sorella, Paco.
Paco: Hai presente nostro figlio?
Chico: No.
Paco: Neanch'io.
Chico: E allora?
Paco: Tu errasti, Chico!
Chico: Ti piace la mia minorchia?
Paco: No.
Chico: Neanche a me.... accettami, Paco, rannicchiati cosi', non schiantare
tua nonna nel tuo intimo, non cigolare una cotrogna, non esistere un
meridiano nel tuo intimo, non affrustare nostro cugino nell'uomo, non
esistere un tucano, non approfittare Jordan Stangassinger, non approfittare
nell'uomo, non riflettere, non esistere nel cotrogno, non ricordare.

-Fine 7932a puntata-
--
Please note that I do not read the e-mail address used in the from field but
I read vincenzo_ml at yahoo dot it
Attenzione: non leggo l'indirizzo di posta usato nel campo from, ma leggo
vincenzo_ml at yahoo dot it
Davide Prina
2005-05-26 20:26:57 UTC
Permalink
Post by Premoli, Roberto
che linguaggio mi consigliereste per linux?
beh Linux è scritto in C, più alcuni pezzi in assembler ... quindi ...
O forse intendevi GNU/Linux?
Post by Premoli, Roberto
- assembrer Z80
- quick basic 4.5 dos
- visualbasic 5.0 win
anch'io ho iniziato con il quick-basic/basic, poi ho visto il pascal e
ho abbandonato il quick-basic, poi ho visto il C e ho abbandonato il
pascal, poi ho visto il C++ e fino ad ora non ho visto nulla di meglio.
Post by Premoli, Roberto
A - creare rutin di calcolo il piu veloci possibili (quindi non mi frega
della grafica), magari con la possibilita' di inserire "pezzi" di
assembler.
Ecco la mia opinione.

Se vuoi creare routine di calcolo ed ottimizzarle al massimo la scelta
ottimale secondo me è il C più eventuali parti in assembler e usando i
vari parametri di compilazione per ottenere ottimizzazioni varie.

Se quello che devi fare è abbastanza corposo io opterei per il C++.
Usare le classi rallenta un po' rispetto al C puro, ma con i parametri
di ottimizzazione corretti si possono ottenere prestazioni molto vicine
o equivalenti al C. La comodità del C++ è che ti permette di mantenere
una gran quantità di codice in modo più semplice e veloce. Inoltre,
secondo me, una grande potenzialità del C++ è che permette al
programmatore di decidere fin dove usare gli oggetti o dove non usarli
(usare una programmazione stile C).

Dalle tue conoscenze penso avrai pochi problemi con le parti in
assembler, ma probabilmente molti problemi all'inizio con C e
soprattutto C++ (programmazione ad oggetti).

In ogni caso tante volte è solo il 5-10% di un sorgente che grava sul
90-95% delle prestazioni ... quindi potresti farti una libreria in
assembler per migliorare queste parti ed usare per tutto il resto
qualsiasi altro linguaggio.
Per scoprire quali sono queste parti puoi usare un profiler.
Post by Premoli, Roberto
B - creare qualche applicazioncella con grafica
grafica? Intendi i caratteri alfanumerici stampati su terminale? ;-)

Qui non me ne intendo molto e poi penso dipenda molto che tipo di
grafica (statica/movimento) che tipo di prestazioni ti aspetti, ...

Ciao
Davide
--
Linux User: 302090: http://counter.li.org
Prodotti consigliati:
Sistema operativo: Debian: http://www.it.debian.org
Strumenti per l'ufficio: OpenOffice.org: http://it.openoffice.org
Database: PostgreSQL: http://www.postgres.org
Browser: FireFox: http://texturizer.net/firefox
Client di posta: Thunderbird: http://texturizer.net/thunderbird
Enciclopedia: wikipedia: http://it.wikipedia.org
--
Non autorizzo la memorizzazione del mio indirizzo di posta a chi usa
outlook: non voglio essere invaso da spam
Tarta Ruga
2005-05-27 10:27:42 UTC
Permalink
Post by Premoli, Roberto
B - creare qualche applicazioncella con grafica
dipende da cosa vuoi fare con la grafica.. io personalmente uso le SDL
programmate in C, c'è anche un noto programma di riproduzione video fatto co
sdl(ma ora mi sfugge il nome)..
Premoli, Roberto
2005-05-27 11:48:45 UTC
Permalink
Post by Tarta Ruga
Post by Premoli, Roberto
B - creare qualche applicazioncella con grafica
dipende da cosa vuoi fare con la grafica.. io personalmente uso le SDL
programmate in C, c'è anche un noto programma di riproduzione video fatto
co sdl(ma ora mi sfugge il nome)..
"grafica" nel senso di avere pulsanti, toolbox, caselle di inserzione dati,
menu, etc. Visualbasic, per intenderci.
Roberto
Continue reading on narkive:
Loading...