Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 31
  1. #1

    ma nessuno usa più Perl?

    Salve,

    conosco questo forum da 11 anni e l'ho frequentato molto spesso agli inizi del 2000 quando mi sono avventurato nel mondo dei CGI con linguaggio Perl. Andando anche oltre i CGI e scrivendo daemon e servizi per Linux (Mac) e Windows in Perl comprese piccole applicazione GUI per Windows. Per me Perl è un linguaggio imporantissimo insieme al C++ tuttavia non capisco come sia avvenuto questo scemare di interesse da parte dei programmatori e quindi anche della frequenza su questa sezione del forum, lo stesso vale per il mitico newsgroup it.comp.lang.perl mentre in USA va ancora alla grande. Trovo che sia un vero peccato. Capisco che Java e PHP oramai la fanno da padrone, ma penso che in Italia si preferisca seguire le "mode" e probabilmente Perl non va più di moda. Ancora oggi se mi trovo a dover programmare uno script che debba fare un lavoro in background oppure semplicemente eseguire un task oppure analizzare del testo oppure allacciarsi alle API del sistema che lo ospita oppure comunicare con un database oppure qualsiasi altra cosa...lo faccio in Perl che ritengo uno dei linguaggi più a 360 gradi che esista.

    Per i nuovi che si affacciano alla programmazione e vogliono provare l'esperienza del: "il programmatore Perl si riconosce dal sorriso che porta!" allora provate assolutamente questo linguaggio di programmazione che vi darà grandi soddisfazioni!!

    Saluti,

    http://www.theartofweb.net/
    Alla batteria dai retta ballA

  2. #2
    ciao,
    il discorso è abbastanza complesso e comunque interessante.

    Perl ha avuto il massimo del suo fulgore dal 1995 al 2000, forse al massimo fino al 2005.

    Lo vedi bene qui:
    http://www.tiobe.com/index.php/conte...pci/index.html

    Il successo era dovuto al fatto che il web stava iniziando il periodo d'oro (che si protrae tutt'ora) e il Perl, in quanto linguaggio orientato a manipolare stringhe, ben si adattava alla produzione di pagine web.
    In quel momento storico mancava un altro linguaggio che consentisse di fare le stesse cose.

    Nel frattempo sono nati altri linguaggi adatti proprio a fare web e una serie di fattori (dovuti al linguaggio stesso) hanno offuscato il prestigio del linguaggio.

    Tra questi inserirei prima di tutto il fatto che il supporto alla programmazione orientata agli oggetti è arrivata tardi, anzi tardissimo.
    Quindi se è vero che in Perl5 si poteva comunque utilizzare la programmazione ad oggetti, questa era faticosissima.
    Si può parlare di un vero supporto alla programmazione con oggetti solo con Moose, la cui prima versione stabile è - se non ricordo male - solo del 2010.

    Java nasce con il supporto alla programmazione ad oggetti, anche se costruire siti web con delle JSP non è così facile (soprattutto se i siti web sono semplici).

    Mentre la prima versione del "vero" PHP ad oggetti (il PHP5) è del 2003.

    Al ritardo del linguaggio nel supportare la programmazione ad oggetti, devi poi aggiungere il ritardo e la delusione nel vedere che la nuova versione di Perl (Perl6, che è di fatto un nuovo linguaggio) non è ancora stata realizzata in maniera definitiva: lo sviluppo sta durando addirittura 10 anni!

    A questo devi aggiungere una serie di valutazioni non proprio relative al linguaggio, ma alle preferenze dei webmaster:
    Perl è molto flessibile, ma anche "idiomatico" e "contestuale", cambia significato a seconda del contesto e molti costrutti hanno un significato mnemonico.
    Significa quindi che la curva di apprendimento è alta.
    Questo non è esattamente ciò che il programmatore medio desidera.

    Infine spesso la configurazione dei CGI, fatta dagli stessi webmatser, era insicura e si prestava a buchi di sicurezza: i webmaster attribuivano quindi la colpa delle loro manchevolezze (la corretta configurazione di un ambiente per supportare i CGI, il parsing dell'input, la gestione degli errori, ecc.) a delle debolezze del linguaggio. Cosa che invece è naturalmente errata.

    Oggi con un archivio di moduli (CPAN) molto ampio e un supporto completo alla programmazione ad oggetti (Moose) nella comunità Perl si parla oggi di "Rinascimento" (o "Rinascita") del Perl e di "Modern Perl" per indicare un utilizzo più maturo della versione 5 del Perl.

    C'è da dire che il Perl6 è ancora tutto da venire (c'è un'implementazione del linguaggio - "Rakudo Star" - che però non è ancora definitiva): si tratterebbe di un linguaggio moderno con moltissime caratteristiche.

    Nel frattempo PHP, Java, Python (scelto da Google!), Ruby e nel mondo Microsoft (e non) C# e Asp.net offrono delle allettantissime alternative con ottimi supporti di moduli e framework. Quindi la competizione è alta e il contesto che ho descritto non aiuta il Perl.

    Personalmente utilizzo ancora il Perl, perché è tra i linguaggi che più mi divertono, ma per lo più lo utilizzo quando si tratta di creare batch o programmazione testuale di vario tipo (anche se lo utilizzo ad oggetti, con Moose, e non in maniera procedurale).

    Per il web preferisco il PHP, mentre per i programmi standalone il Java.
    Ma è una questione tutta di gusti personali.

    ciao!

  3. #3
    Risposta un po' banale: semplicemente, nel corso degli si sono affacciati due linguaggi che risolvono gli stessi problemi che risolve perl (banalmente che ricoprono la stessa "fetta di mercato": ruby e python.
    Tale "fascia di mercato" è comune (molto simile) a tutti e 3 i linguaggi con la differenza che la sintassi di python e ruby è decisamente meno ostica di quella perl e in genere è più piacevole lavorarci.

    Ora, tu che conosci gia perl probabilmente non senti questo problema, ma se ti metti nei panni di uno che non conosce nessuno dei 3 non vedo perchè - ad oggi - dovrebbe orientarsi verso quello la cui sintassi è più ostica (senza apparente motivo, aggiungo).
    Rilasciata Python FTP Server library 0.5.1
    http://code.google.com/p/pyftpdlib/

    We'll be those who'll make the italian folks know how difficult can be defecating in Southern California without having the crap flying all around the house.

  4. #4
    Ultimamente sto lavorando presso una grande azienda internazionale (non facciamo nomi ) e la specifica del software che sto sviluppando è che tutta la parte di parsing sia fatta in perl. La mia impressione è che il perl sia ancora molto utilizzato nel caso si faccia grande uso di regex per parsing di report di macchine che emettono report in formati txt-like. Il vero problema è la lentezza con cui il perl si sta avvicinando al paradigma della programmazione ad oggetti, fondamentale ormai nella progettazione dei software aziendali di grandi dimensioni.

  5. #5
    Originariamente inviato da billiejoex
    Risposta un po' banale: semplicemente, nel corso degli si sono affacciati due linguaggi che risolvono gli stessi problemi che risolve perl (banalmente che ricoprono la stessa "fetta di mercato": ruby e python.

    Ora, tu che conosci gia perl probabilmente non senti questo problema, ma se ti metti nei panni di uno che non conosce nessuno dei 3 non vedo perchè - ad oggi - dovrebbe orientarsi verso quello la cui sintassi è più ostica (senza apparente motivo, aggiungo).
    Un linguaggio senza parentesi dove la posizione determina la sintassi non la ritengo comoda ne' piu' semplice (mi ricorda troppo le oscenità del COBOL), cmq si' sono 3 linguaggi dove in due si sono ispirati ad alcuni concetti del Perl che preesisteva agli altri due per risolverne alcune pecche.

    Nel frattempo pero' il Perl non e' stato fermo e si e' evoluto a sua volta (non mi riferisco al Perl 6).

    Ora Perl o Python o Ruby sono in buona sostanza equipollenti, la soggettività può farne preferire l'uno o l'altro, tuttavia il Perl nel suo insieme è più imitato e autocritico dunque anche più divertente da usare.


    Vieni al Perl Italian Workshop a Torino il 7 settembre per imparare a scrivere in Perl (in modo comprensibile e moderno) e se vuoi partecipa all'evento nei due giorni seguenti anche per conoscere la nostra comunità Perl sempre piu' europea e mondiale: arrivano ospiti e utenti da 13 diverse nazioni.

    http://www.perl.it/workshop


    Ciao, \ferz

  6. #6
    Utente di HTML.it L'avatar di Dark867
    Registrato dal
    Mar 2010
    Messaggi
    435
    Guarda, da newby di entrambi i linguaggio sn d'accordo e mi rispecchio con ciò ke ha detto billiejoex: con python mi sono trovato subito bene e con un buon IDE non ho fatto praticamente più caso alla mancanza di parentesi..dopo un paio d'orette già capivo e scrivevo programmi, ho dovuto solo esaminare un semplice script perl di 20 righe ultimamente e subito mi è stato antipatico come linguaggio!
    Niente di personale ma lo trovo inutilmente complesso e poco pratico (già il fatto che ho letto che una cosa in perl la si può fare in tanti modi diversi da fastidio!), inoltre cn php e python e le servlet/jsp nn vedo prp un motivo x usarlo lato server...

  7. #7
    Originariamente inviato da Dark867
    Niente di personale ma lo trovo inutilmente complesso e poco pratico
    Andiamo su esempi pratici:

    codice:
    from flask import Flask
    app = Flask(__name__)
    
    @app.route("/", methods=['GET'])
    def hello():
       return "Hello World!"
    
    if __name__ == "__main__":
       app.run();
    codice:
    use Dancer;
    
    get “/” => sub {
        “Hello, World!”
    };
    
    dance;
    I due sorgenti fanno la stessa cosa, il primo e' in python, il secondo in Perl.

    Quale dei due ti pare piu' leggibile e chiaro?

    Se poi trovo dei tuoi messaggi in altri thread che iniziano in questo modo:
    Originariamente inviato da Dark867
    Ciao, premetto che non so nulla di perl (nè sono particolarmente interessato a saperne..-.-)
    pare chiaro che tu sia semplicemente prevenuto e deciso ad ignorare questo linguaggio.

  8. #8
    Utente di HTML.it L'avatar di Dark867
    Registrato dal
    Mar 2010
    Messaggi
    435
    Si quello è il topic di aiuto che ho scritto dopo aver incontrato proprio l'altro ieri il mio primo script perl di cui ho parlato in questo topic, la frase tra parentesi è per l'appunto dovuta a questo mio primo impatto con perl ... è proprio dopo aver visto quello script e, per curiosità altri esempi perl, che sono diventato prevenuto come dici tu, infatti se potrò mai scegliere preferirò averci meno a che fare possibile!XD

    Guarda se non conoscessi nessuno dei 2 linguaggi ti direi effettivamente perl, ma dopo aver letto un breve tutorial di python e uno di perl non ho dubbi a dire che mi è più facile capire il primo, forse anche xkè conoscendo java riconosco facilmente i costrutti import e main ... e aggiungo che mentre il primo script che mostri pur sembrando all'apparenza + difficile almeno ha una sua struttura regolare e quindi posso aspettarmi che tutti gli script bene o male abbiano quello scheletro (importo ciò che mi serve, definisco funzioni, faccio un main in cui le uso), per il secondo...bè a me pare che ogni script perl sia una storia a sè, variando da programmatore a programmatore. cosa che mi da molto fastidio.

    Cmq è solo un mio parere, figurati, magari adesso posta un altro newby che dirà l'opposto ... che trova python orrido e ama a prima vista perl.
    Volevo solo far presente il mio punto di vista di utente che si ritrova a dover scegliere tra python e perl, tutto qua.
    ps. non sono un esperto nemmeno di python, lo conosco a un livello molto molto superficiale.

  9. #9
    Originariamente inviato da Dark867
    ... forse anche xkè conoscendo java riconosco facilmente i costrutti import e main ... e aggiungo che mentre il primo script che mostri pur sembrando all'apparenza + difficile almeno ha una sua struttura regolare e quindi posso aspettarmi che tutti gli script bene o male abbiano quello scheletro (importo ciò che mi serve, definisco funzioni, faccio un main in cui le uso),
    anche il secondo importa una libreria, definisce una funzione e la esegue.

    Forse e' il fatto che non si chiami "main" che ti sconcerta?

    a me pare che ogni script perl sia una storia a sè, variando da programmatore a programmatore. cosa che mi da molto fastidio.

    Mi verrebbe da risponderti, da uomo, che non conosci le donne
    Anche loro sono una diversa dall'altra, eppure la cosa non mi crea fastidio, anzi... curiosità. La stessa cosa per me vale con il Perl: a me intriga capire come altri affrontano la soluzione di un problema e considero "bello" che possano risolverlo in modi diversi esprimendosi come preferiscono.

    Ti diro' di piu': a me piace leggere sorgenti in altri linguaggi per lo stesso motivo.

    Questo non toglie che ci siano persone "brutte" che scrivono in modo orrendo perche' pensano in modo orrendo

    Immagina un sorgente scritto da La Russa o Calderoli, secondo me sarebbe contorto e probabilmente sbagliato in qualsiasi linguaggio, pure in Python.


    Ciao. \ferz

    PS: 'da donna', probabilmente quella battuta sarebbe speculare.

  10. #10

    Re: ma nessuno usa più Perl?

    Noi lo utilizziamo, da anni e probabilmente per molti anni ancora fino a quando non ci sarà di meglio da utilizzare.

    Con Perl abbiamo realizzato applicazioni di datawarehouse, applicazioni gestionali, CGI, automazione industriale e persino un Windows Service.

    I pregi che maggiormente abbiamo apprezzato sono stati la compatibilità garantita nel tempo (15 anni) tra versioni diverse dello stesso sistema operativo e tra diversi sistemi operativi, la stabilità, la gestione degli errori e non per ultima la vasta disponibilità di librerie (CPAN).

    Non dico che questi risultati non si possano raggiungere anche con altri "attrezzi" ma per chi avesse iniziato più di un decennio fa, non saprei ...

    Alla fine del vecchio secolo feci un tentativo con PHP con l'allora versione 2 che abbandonai rapidamente per la scarsa se non del tutto assente gestione delle eccezioni e per il fatto che lo si poteva usare praticamente solo per il Web.

    Java ad inizio di questo secolo fu valutato per una importante società manifatturiera (~300 impiegati) con un confronto serrato con Visual Basic e Perl/TK. I benchmark misuravano i tempi di startup e di editing su tabelle database MS-SQL. Java ne uscì con le ossa rotte per la lentezza inaccettabile, non solo allo startup ma anche nel passare da un record al successivo, mentre Perl/TK resse il confronto con Visual Basic.

    bye
    gdo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.