Repository 32bit  Forum
Repository 64bit  Wiki

Perl, Ruby, Python.

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Perl, Ruby, Python.

Messaggioda boh » mer set 12, 2007 22:56

Oltre alla potentissima shell, vedo spesso questi tre linguaggi che ho citato nel titolo; volevo sapere come vostra opinione, quale può essere classficato come il più potente?
O semplicemente il più utile?
O sarebbe buona cosa conoscerli tutti e tre?
"Be yourself. Everyone else is already taken." ~ Oscar Wilde
Avatar utente
boh
Linux 2.6
Linux 2.6
 
Messaggi: 946
Iscritto il: gio set 15, 2005 23:00
Località: Milano
Slackware: 14.1 (x64)
Kernel: 3.10.17
Desktop: KDE 4.10.5

Messaggioda lamarozzo » mer set 12, 2007 23:15

Ciao,
premetto che dei tre linguaggi mastico un po' solo il Python.
Python è un linguaggio interpretato di tipo dinamico che sta avendo molto successo per diverse ragioni

* semplice da apprendere
* dispone di numerosissime librerie
* si integra bene con il C da cui eredita moltissimi moduli
* molto ben documentato

e si potrebbe andare avanti a lungo.

Il Perl è un po' come la Slackware dei linguaggi di scripting. Decisamente geek, molto potente ma anche più difficile di Python. Inoltre ultimamente, IMO, sta perdendo terreno. Le stesse cose possono essere fatte in milioni di modi e per un newbie è molto disorienteante. Uno dei punti di forza di Perl sono le espressioni regolari, che in Python sono imbarazzantemente astruse.
In compenso in Python costruisci un'interfaccia grafica in dieci righe, fai tu!

Ruby è il più giovane dei tre linguaggi e si sta affermando grazie all'eccellente (a quanto si dice) framework web, da cui Ruby on Rails. Dovrebbe avere molti punti in comune con Python, soprattutto la semplicità. Sicuramente è un'ottima scelta, anche se non è un linguaggio maturo e completo come Python.

Non si possono stilare classifiche, il linguaggio vincente è quello che uno
riesce a padroneggiare meglio. Non serve sapere tutti e tre i linguaggi, a meno che la cosa non ti appassioni ovviamente.
Avatar utente
lamarozzo
Linux 2.6
Linux 2.6
 
Messaggi: 732
Iscritto il: mer lug 13, 2005 23:00
Località: Roma
Desktop: xfce
Distribuzione: archlinux

Messaggioda dapuzz » mer set 12, 2007 23:30

Più potente? Perl
Più utile? Perl
Più obsoleto? Python
Più innovativo? Ruby
Più divertente? Ruby
Più 'Ancor più divertente' ma per il web 3.0? Ruby on Rails ;)


pps: mi sono permesso di dare dell'obsoleto a python solo perchè amarok ha iniziato la conversione da un bel po', non per altro. Perl è senz'altro molto più vecchio e si utilizza ancora. Certo solo per fare determinate cose, però si utilizza.
Avatar utente
dapuzz
Linux 3.x
Linux 3.x
 
Messaggi: 1136
Iscritto il: mar mag 16, 2006 10:09

Messaggioda Gilmo » gio set 13, 2007 0:02

io dei suddetti me la cavicchio solo con il perl e devo dire che ci fai di tutto, poi è l'ideale(come diceva lamarozzo) per le espressioni regolari, insomma col perl non mi viene voglia di provare gli altri :lol:
Avatar utente
Gilmo
Linux 2.0
Linux 2.0
 
Messaggi: 171
Iscritto il: gio gen 18, 2007 15:44
Località: Cavalese(TN)
Slackware: 12

Messaggioda cymon » gio set 13, 2007 0:55

dapuzz ha scritto:Più potente? Perl
Più utile? Perl
Perl è senz'altro molto più vecchio e si utilizza ancora. Certo solo per fare determinate cose, però si utilizza.


8)
Perl è un linguaggio bastardo. Sii un programmatore disortinato e Perl ti punirà, sii un programmatore che non conosce gli strumenti che sta usando e Perl ti punirà.
Ma, se al contrario, sei pronto a farti da solo tutte le cose organizzative e razionali che Perl da solo non imponte, allora ti accorgi di trovarti di fronte a un linguaggio onnipotente, di una grandissima maturità e scalabile per qualsiasi situazione.
AH, finissi il mio progetto di un motore MUD completamente in perl... :roll:

E poi, si dica quello che si dica, Wall owna la gran parte dei padri di linguaggi di programmazione di questo mondo ed è il più simpatico.
Avatar utente
cymon
Linux 2.4
Linux 2.4
 
Messaggi: 430
Iscritto il: ven gen 05, 2007 1:40
Località: Milano
Slackware: 13.1
Kernel: 2.6.33.4-smp
Desktop: Fluxbox

Messaggioda ZeD » gio set 13, 2007 7:21

Ti consiglio perl SOLO in due casi
1) sei un programmatore disciplinatissimo e non hai la minima intenzione di usare gli INNUMEREVOLI trucchi che il linguaggio ti mette a disposizione
2) hai intenzione di scrivere solo one-liner ^^;

perl soffre della sindrome di linguaggio "write only", nel senso che se poi leggi un sorgente perl dopo un po' di tempo che lo hai scritto, o, peggio, scritto da qualcunaltro, non ci capirai una mazza.

ruby nasce come un incrocio tra perl (l'autore di ruby e' un fan sfegatato di Larry Wall) e java, nel senso che comunque mantiene alcuni costrutti, o almeno intenzioni, di quest'ultimo (ferraginoso e brutto da vedersi, IMHO) linguaggio.
L'interprete e' un po' lento (a memoria, ricordavo che, in media, un algoritmo sviluppato in ruby era lento il doppio di un equivalente algoritmo scritto in python, e circa 3/4 volte del perl (soprattutto quando si parla di string crunching)
Il suo successo è legato a doppio filo da RubyOnRails, framework per lo sviluppo web.
Chiariamo, ne ha anche altri, e anche gli altri due ne hanno, ma RoR è diventato "mainstream", diciamo cosi'.

Python è il mio preferito :D
La sua sintassi è minimalissima e coerente al massimo.
L'idea dell'autore era di generare un linguaggio il piu' simile possibile agli pseudocodici a volte utilizzati per spiegare "l'idea che sta dietro all'algoritmo".
I suoi punti caratteristici sono che è un linguaggio multiparadigmatico, tipizzato dinamicamente (il compilatore capisce da solo che una variabile è un intero o una stringa dal suo valore, non serve dirglielo), in cui tutto e un oggetto, e le funzioni sono "first class citizen" (e' possibile passare le funzioni al volo da una parte all'altra, o assegnarle a variabili o cose cosi').
Ha una marea di librerie, per tutti gli usi, ed è usato veramente un po' per tutto... da calcoli matriciali (con interfacciamento a librerie scritte in c o in fortran) a grafica 3d, a GUI (pyQt, pyGTK, pyQUELCHEVUOI :D), a framework web (da Django a Twisted, un cosone enorme che da solo ti fa pure il caffè)
Se NON hai precedenti di programmazione (C? java? lisp?!?) IMHO ti troverai benissimo... se sei un programmatore java ci potranno essere due reazioni (almeno, queste ho visto, tra i tanti che ho convinto a passare a python)

1) Ti sembra di respirare
2) Ti senti privo di appoggi

nel senso che e' come se fino a quel momenti fossi vissuto in un cubicolo e solo ora ti si aprisse un mondo davanti :D


insomma, io la mia parte di "vota antonio" l'ho fatta :D
Avatar utente
ZeD
Linux 2.0
Linux 2.0
 
Messaggi: 112
Iscritto il: ven ott 28, 2005 11:30
Località: Terra
Slackware: 12.1

Messaggioda lamarozzo » gio set 13, 2007 8:53

Non c'è niente da fare, il Perl è una religione ma per fortuna sono ateo :lol:
Avatar utente
lamarozzo
Linux 2.6
Linux 2.6
 
Messaggi: 732
Iscritto il: mer lug 13, 2005 23:00
Località: Roma
Desktop: xfce
Distribuzione: archlinux

Messaggioda bit123 » gio set 13, 2007 11:35

Python obsoleto? Eppure la prima versione è del 1991!
bit123
Linux 2.4
Linux 2.4
 
Messaggi: 350
Iscritto il: dom nov 27, 2005 16:26
Località: Catania

Messaggioda bit123 » ven set 14, 2007 10:23

ZeD è stato molto chiaro!
bit123
Linux 2.4
Linux 2.4
 
Messaggi: 350
Iscritto il: dom nov 27, 2005 16:26
Località: Catania

Messaggioda boh » ven set 14, 2007 12:51

Ok, grazie! :D
Devo dedurre quindi che python sia la scelta più "conveniente".

Per quanto riguarda Perl non credevo che avesse la pecca del "write only", chiamiamola così.
Ruby invece da usarsi per web, con Ruby on rails.
"Be yourself. Everyone else is already taken." ~ Oscar Wilde
Avatar utente
boh
Linux 2.6
Linux 2.6
 
Messaggi: 946
Iscritto il: gio set 15, 2005 23:00
Località: Milano
Slackware: 14.1 (x64)
Kernel: 3.10.17
Desktop: KDE 4.10.5

Messaggioda cymon » ven set 14, 2007 13:00

boh ha scritto:Ok, grazie! :D
Per quanto riguarda Perl non credevo che avesse la pecca del "write only", chiamiamola così.


E' una pecca, ma è anche motivo di fascino, infatti trovi robette come questa:
http://perlgolf.sourceforge.net/
E comunque tutti i linguaggi sono write-only se si scrive codice schifoso. Il problema del perl è che TIMTOWTDI di scrivere codice schifoso :D
Avatar utente
cymon
Linux 2.4
Linux 2.4
 
Messaggi: 430
Iscritto il: ven gen 05, 2007 1:40
Località: Milano
Slackware: 13.1
Kernel: 2.6.33.4-smp
Desktop: Fluxbox

Perl e compagni

Messaggioda Mario Vanoni » ven set 14, 2007 14:41

Sempre linguaggi interpretati, con le macchine odierne nessun problema.

Nato nel 1941, sysadm dai tempi di AT&T UNIX SVR2,
continuo ad usare la shell (#!/bin/sh, non #!/bin/bash!) con
awk, bc, cut, expr, sed e cosi` via.
Seguo sempre la regola KISS di UNIX, keep it simple and small,
la versione Berkeley/BSD e` un po` piu` cattiva: keep it simple, stupid!

Le utilita` devono fare una cosa sola e bene!

Finche` il programma e` usato occasionalmente, oramai e` veloce,
un Intel Core2 con #GHz non e` come un WE32000/8MHz, 486DX50MHz ecc.

Se la velocita` e` importante, riscrivo il progamma in C (gcc ... -s -static ...).

Slackware 12.0, kernel 2.6.22.6, e tutto funziona perfettamente.

Mario Vanoni
Mario Vanoni
Iper Master
Iper Master
 
Messaggi: 3174
Iscritto il: lun set 03, 2007 20:20
Località: Cuasso al Monte (VA)
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey

Messaggioda DaD » ven set 14, 2007 14:55

Di questi tre linguaggi posso dire di usare solo ruby, mi trovo benissimo è un linguaggio funzionale, veloce e divertente da utilizzare, operazioni che in altri linguaggi richiederebbero ore di scervellamento in ruby si fanno con uno schiocco di dita e questo sinceramente io lo traduco in una potenza non indifferente :D
RoR non lo mai toccato ma credo che alla fine proverò anche questo :P

Python è molto simile a ruby a quanto mi è sembrato di vedere (la sintassi è identica in certi punti ...), anche se devo dirla tutta non mi piace molto e non credo che lo approfondirò mai :S

Perl? Considero il suo creatore un genio (Guardate la mia firma .), però nn programmo in perl. Sempliciemente perchè lo trovo troppo disordinato per i miei gusti :|:

Alla fine se vuoi iniziare con qualcosa ti consiglio ruby, anche perchè se hai un minimo di basi lo saprai utilizzare al meglio in poco più di una settiamana ;O;
Avatar utente
DaD
Linux 2.4
Linux 2.4
 
Messaggi: 371
Iscritto il: mer feb 07, 2007 18:19
Nome Cognome: Antonio Barra
Slackware: 13
Kernel: 3.0
Desktop: KDE 4
Distribuzione: Mac OS X

Messaggioda dapuzz » ven set 14, 2007 16:50

DaD ha scritto:Di questi tre linguaggi posso dire di usare solo ruby, mi trovo benissimo è un linguaggio funzionale, veloce e divertente da utilizzare,[---]
Alla fine se vuoi iniziare con qualcosa ti consiglio ruby, anche perchè se hai un minimo di basi lo saprai utilizzare al meglio in poco più di una settiamana
Siamo in due a dirti che ruby è divertente... Chissà come mai ha attirato così tanta simpatia. Forse è proprio il fatto di non richiedere un vero e proprio studio, ma si riescono a vedere i risultati già dopo poco?!
Avatar utente
dapuzz
Linux 3.x
Linux 3.x
 
Messaggi: 1136
Iscritto il: mar mag 16, 2006 10:09


Torna a Gnu/Linux in genere

Chi c’è in linea

Visitano il forum: Yahoo [Bot] e 2 ospiti