Newsgroup: it.comp.os.linux.development
Titolo: Scelgo Perl o Python, o cos'altro?

Salve a tutti,
Ho la necessità di imparare ad usare un linguaggio di scripting da usarsi
dove le cose con gli scripts bash diventano complicate e inefficenti, mentre
la programmazione di più basso livello non è necessaria.
In particolare mi interessano le possibilità avanzate di manipolazione dei
testi e il facile utilizzo nell'amministrazione di sistema che mi sembrano
essere proprie di Perl e (per quanto ne so) di Python.
Mi piacerebbe avere dei consigli o magari dei links per approfondire
velocemente le caratteristiche generali e le diversità tra i due in modo da
decidere subito quale dei due studiare, tenendo conto di:
1) Programmo in C,C++ e Ada ( e preferisco quest'ultimo ); quale dei due può
essere più facilmente e velocemente compreso e utilizzato con profitto da
chi conosce i sopra elencati? Considerate che ho anche poco tempo per
imparare...
2) Quale dei due è più diffuso in ambiente linux, come numero e importanza
delle applicazioni open source?
3) Quale ha le migliori(!?) interfacce verso le API dell'OS Linux?
4) Cosa mi dite sui bindings verso C o altri linguaggi?
5) Quale gestisce con più facilità il trattamento dei testi, per fare ad
esempio cose realizzabili con sed e awk (che non conosco)?
Grazie in anticipo a chiunque voglia indirizzarmi nella scelta, magari
rispondendo ad uno o più dei punti precedenti.
Ciao,
Fabio.
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ad esempio cose realizzabili con sed e awk (che non conosco)?
Perl è nato come rimpiazzo dei due programmi citati e sembra esserci
riuscito abbastanza ;). Anche nella programmazione ad oggetti Perl non è
male.
Per maggiori info ti consiglio:
 
www.perl.it
 
learn.perl.org
 
www.perlmonks.org
Ciao,
-- 
+--------+ | ASCII ribbon campaign ( ) | 
www.autistici.org/kral
|  kral  | |  - against HTML email  X  |
+--------+ |              & vCards / \ | my gpg id = 0x7C946947

 rispondendo ad uno o più dei punti precedenti.
Personalmente ti consiglio Python.
-- 
Andrea Bergia - studente              Linux Registered User #281550

 Inline::C) sia utilizzare il Perl all'interno di codice C.
Inline::C può essere usato, ma, per quanto mi riguarda, non lo consiglio
a meno che non si sappia *esattamente* cosa si sta facendo.
Se devo scrivi un wrapper intorno ad una libreria in C, preferisco di
gran lunga usare XS. Approccio più lungo in fase di realizzazione,
probabilmente, ma che da risultati migliori.
Ciao,
 Emmanuele.
-- 
Emmanuele Bassi (Zefram)                 [ 
http://www.emmanuelebassi.net
 ]
GnuPG Key fingerprint = 4DD0 C90D 4070 F071 5738  08BD 8ECC DB8F A432 0FF4

 esempio cose realizzabili con sed e awk (che non conosco)?
Il Perl è nato per processare testi.


 
anche io

esempio cose realizzabili con sed e awk (che non conosco)?
tutti diranno perl, io dico ruby :) 
In realtà anche in python è facilissimo, solo che magari è meno
orientato agli one-liner.
Di fondo tutti e tre hanno sistemi di regexp molto potenti, e il
grosso del text processing è quello :) 
[1]
per python è qui:
http://starship.python.net/crew/theller/ctypes/
per ruby è incluso nella distribuzione dell'interprete

 probabilmente, ma che da risultati migliori.
Concordo, ma se si necessita del C *solo* per alcune fasi dello script,
come ad esempio ottimizzare qualche routine, allora l'uso di Inline::C
mi sembra meno complesso ed immediato che l'uso degli XS. Poi, come dice
lei, se uno deve scrivere un wrapper per una libreria sono logicamente
meglio gli XS.
Non ho tanta esperienza in questo campo, cmq! :)
Saluti,


Io darei un'occhiata ad esempi di codice in tutti e tre, poi decidere...
Fatto: scelgo Python.
Python mi sembra molto più chiaro ed esteticamente pulito. Ho sempre
preferito Ada al C/C++ proprio per la grande facilità di lettura del codice,
a costo di maggiore tempo di battitura a tastiera (che con gli IDE non ha
più importanza), che ti permette di manutenere facilmente programmi scritti
da altra gente anche se con pochissimi commenti.
In più ho letto che Python utilizza la programmazione orientata agli
oggetti, che anche se non mi serve immediatamente per ciò che devo scrivere,
è un potente strumento (e qui dovrei ripetermi a proposito della mia
preferenza di Ada e anche C++ sullo C).
Grazie ancora a tutti,
Fabio De Francesco.


 oggetti,
Non solo.
Python è un liguaggio multiparadigma. È nato come linguaggio imperativo
classico, e ha adottato un approccio (pulito, a differenza del Perl)
all'object orientation col tempo, offrendo entrambi i paradigmi; in più,
ha anche un tocco di linguaggio funzionale.


 in Perl (con i binding per le GTK 2.x).
Vabbuò, allora io rilancio Python ricordandovi che i tool
d'amministrazione di RedHat ed il cuore di Google usano il Pitone ;-)
-- 
Discoveries are made by not following the instructions.
 |\ |       |HomePage   : 
http://nem01.altervista.org
 | \|emesis |XPN (my nr): 
http://xpn.altervista.org

 importanza delle applicazioni open source?
e abbiamo risposto... non vorrei che si aprisse l'ennesimo flame
perl/python! :)


 d'amministrazione di RedHat
Questo l'ho scritto in un altro articolo nello stesso thread. ;-)


 la programmazione di più basso livello non è necessaria.
Ruby.
Un linguaggio è come un'automobile... assicurati di averlo `guidato'
per qualche ora prima di sceglierlo.
-- 
Dagli errori di Windows 98:
 277 0x0115 Il file con la tabella degli attributi estesi è pieno.
1070 0x042E Dopo l'avvio, il servizio si è sospeso in uno stato di attesa.
1440 0x05A0 Schermo già bloccato.

 Questo l'ho scritto in un altro articolo nello stesso thread. ;-)
L'ho letto solo dopo aver inviato il mio articolo. ;-)
That's Usenet ;-)
-- 
BREAKFAST.COM
 Halted... Cereal Port Not Responding.


 perl/python! :)
Figurati, non avevo alcuna intenzione di lanciare flame, la mia era solo
una precisazione scherzosa :-)
-- 
Don't hate yourself in the morning - sleep till noon.
