Home > GNU/Linux > La guerra contro Mono e i suoi effetti positivi

La guerra contro Mono e i suoi effetti positivi

Mi sono già espresso più volte sulla guerra contro Mono. Personalmente comprendo le forti preoccupazioni di Richard Stallman e di Fedora (che ha escluso Mono dalla sua installazione standard). Chi vive negli USA è (con buona ragione) terrorizzato dai brevetti e se poi questi brevetti li ha in mano la Microsoft la preoccupazione è ovviamente doppia. Se poi uno considera che il leader del progetto Mono ha saltato la staccionata e ha sposato il software proprietario… be’…

Comunque sia continuo a pensare che un’implementazione libera di .Net sia una buona cosa e che aiuti molti sviluppatori a passare su piattaforme libere.

Detto ciò, devo dire che questa guerra contro Mono ha avuto negli ultimi mesi degli effetti positivi:

  • si è accelerato lo sviluppo di Rhythmbox;
  • anche lo sviluppo di gthumb è ripreso e ora implementa varie funzioni di correzione delle foto;
  • Solang è un’altra alternativa a F-Spot;
  • Vala, un linguaggio simile a C# (con tanto di gestione della memoria, garbage collector compreso) ma che compila eseguibili nativi e quindi veloci, sta facendo progressi ogni giorno. Cheese, Gnome Scan, AllTray sono stati portati in Vala e questo linguaggio sembra candidato ad essere una seria alternativa a C# e Python per lo sviluppo di applicazioni su GNOME in modo rapido (tra l’altro può sfruttare anche monodevelop come IDE);
  • sempre parlando di Vala la software house Yorba (http://yorba.org/) sta sviluppando una serie di software multimediali interessanti in questo linguaggio, che, presi insieme, potrebbero essere una sorta di iLife per GNU/Linux. A parte il gestore di foto Shotwell, gli altri programmi sono ancora in fase alpha ma sembrano essere promettenti.

In tutti i casi si tratta di applicazioni native, quindi veloci, a differenza di quelle che girano in Mono.

Categorie:GNU/Linux Tag:, ,
  1. cobra78
    15 dicembre 2009 alle 16:49

    Ma lo sviluppo di Rhythmbox non era stato abbandonato???

    • telperion
      15 dicembre 2009 alle 17:09

      Il FLOSS è mobile, qual fiume al vento …
      LOL

  2. ju
    15 dicembre 2009 alle 17:07

    Fortunatamente sembra di no.

    • Cobra78
      15 dicembre 2009 alle 18:00

      Beh meglio, molto meglio🙂

  3. 15 dicembre 2009 alle 17:12

    Guiodic, sapresti indicarmi un buon IDE per creare applicazioni in Vala?

  4. ju
    15 dicembre 2009 alle 17:14

    M’è cascata la connessione, il commento era riferito a rhythmbox

  5. 15 dicembre 2009 alle 18:27

    Ben venga Vala se è realmente così valido, vorrà dire che i vari problemi che Mono ha fatto nascere in seno alla community hanno servito come catalizzatore per accelerare alternative valide.
    Siamo sicuri che rhythmbox sia di nuovo in fase di sviluppo? Dopo tutto non era stato escluso da Karmik proprio perchè abbandonato da tempo?

    • 15 dicembre 2009 alle 19:58

      ma ti risulta che karmic installi banshee? a me no. Rhythmbox è installato di default, come sempre.

  6. Ema90
    15 dicembre 2009 alle 19:12

    Che cosa si intende per applicazioni native?

    • 15 dicembre 2009 alle 20:00

      Programmi che girano in linguaggio macchina del processore. Viceversa i programmi non nativi girano in un interprete che li traduce al volo. Ad esempio Java, C#, Python sono linguaggi che fanno uso di interpreti (oggi si usa dire virtual machine o runtime environment) mentre C e C++ fanno uso di compilatori che convertono il programma in linguaggio macchina una volta e per sempre.

      • Freeman
        15 dicembre 2009 alle 21:12

        Python è un linguaggio interpretato, Java e C# no.
        Quest’ultimi vengono compilati “Just-In-Time”[1] al momento della compilazione.

        [1] http://it.wikipedia.org/wiki/Java_%28linguaggio%29#Compilazione_Just-In-Time

        • 15 dicembre 2009 alle 22:22

          Il concetto è lo stesso, non cambia nulla. La compilazione in questo caso trasforma il linguaggio di partenza in un linguaggio intermedio (bytecode) che poi viene interpretato da un software di esecuzione (per Java è JRE, per C# è Mono Runtime).
          E’ solo un passaggio in più per evitare che l’interprete debba perdere tempo nel parsing del sorgente, inoltre si può fare in modo che più linguaggi generino bytecode compatibili con l’interprete (è ad esempio il caso di .net/mono).
          Proprio in ragione dell’uso del bytecode si tende a chiamare questi interpreti “virtual machine” perché simulano una macchina che ha un suo assembly (il bytecode).

  7. IoProgrammoInGambas:D
    16 dicembre 2009 alle 5:50

    guiodic, grazie a te ho appena scoperto che vala ha un garbage collector!!!
    grazie, era da tempo che non mi facevo risate del genere!
    (ps. torna a studiare)

    • 16 dicembre 2009 alle 12:03

      Garbage collection è un termine generico che si riferisce alla gestione automatica della memoria e può essere implementato in modi differenti. Nel caso di Vala, il metodo si chiama contatore dei riferimenti.

      In computer science, reference counting is a technique of storing the number of references, pointers, or handles to a resource such as an object, block of memory, disk space or other resource. It may also refer, more specifically, to a garbage collection algorithm that uses these reference counts to deallocate objects which are no longer referenced.

      • 16 dicembre 2009 alle 12:14

        p.s. visto che conosco anche c#, cos’è la garbage collection lo so molto bene, quindi fai poco lo spiritoso.

        • IoProgrammoInGambas:D
          16 dicembre 2009 alle 17:04

          ASSOLUTAMENTE NO, la gestione automatica della memoria di vala (in fase di compilazione, anzi di traduzione in C nel caso di vala) e il garbage collector (che funziona al runtime) sono TOTALMENTE diversi.
          Ma come al solito continui a dire che hai ragione tu, quindi buon pro ti faccia.

          • 16 dicembre 2009 alle 17:31

            esiste una cosa chiamata “motore” e serve a muovere le macchine.
            Di motori ne esistono di vari tipi: a benzina, a gasolio, a vapore, ecc. Funzionano tutti in modo diverso (anche molto diverso) ma hanno lo stesso identico scopo e si chiamano tutti motori.

            Chiaro?

            La garbage collection non è solo quella a runtime.

          • IoProgrammoInGambas:D
            16 dicembre 2009 alle 18:21

            Come c***o fai ad accomunare la gestione (semi)automatica della memoria di vala ed la garbage collection solo perché entrambe usano la reference counting??? Nel primo caso è tutto, nel secondo è solo una misura di base!

            > Chiaro?

            Ma per cortesia, piantala con questi toni da insegnante, non solo dimostri di essere un ignorante di prima categoria, ma hai anche la faccia tosta di non ammettere che hai scritto una boiata.
            Un altro al posto tuo avrebbe corretto il post, tu invece continui per non dare agli altri segni di cedimento. Per caso sei parente del berlusca?
            Non solo, ma poi vai in giro per la rete a prendere per i fondelli gli altri, sperando di pizzicare qualcuno più ignorante di te.
            Non hai semplicemente vergogna!!

            PS hai anche disattivato la possibilità di replica… sto morendo dal ridere

          • 16 dicembre 2009 alle 20:31

            @ioprogrammo: guarda, tu sei un troll e il tuo stesso nick lo dice.

            Se non hai mai sentito parlare di garbage collection in fase di compilazione e per te la garbage collection è solo quella a run time, me ne farò una ragione. I testi di informatica non sono d’accordo con te.

            edit: non ho disabilitato proprio nulla, semplicemente c’è un limite ai livelli di replica… Ma te grande programmatore che conosce a puntino la garbage collection (magari scopriremo che sei l’autore di qualche JVM fra poco…) non sei riuscito a capirlo da solo.

          • IoProgrammoInGambas:D
            17 dicembre 2009 alle 5:23

            Già, sono un troll che ha maledettamente ragione. Da che pulpito viene la predica poi! TU che vai in giro a rompere le palle sui blog degli altri dai del troll a me!
            Tra l’altro se vuoi qualche testo di informatica te ne regalo a dozzine, così vedi come è fatto un garbage collector… si ne ho parecchi anche se non ho scritto nessuna JVM (aspetto di vedere la tua.)
            Poi cosa vuoi che mi importi di come è fatto il tuo blog da sfigato? Se ho pensato subito male è perché mi viene istintivo avendo a che fare con te.
            PS bello il tuo server HTTP! hahahaha

          • Paolo
            17 dicembre 2009 alle 14:29

            @IoProgrammoInGambas:D
            Guarda, lasciando perdere gli insulti, se proprio hai difficoltà con l’italiano c’è anche la versione italiana di wikipedia:
            http://it.wikipedia.org/wiki/Garbage_collection
            http://it.wikipedia.org/wiki/Reference_counting
            Magari con queste riesci a capire.
            Se non ti è chiara la metafora di Guido cerco di spiegartela meglio: stai sostenendo che una macchina elettrica non ha un motore. Più semplice di così non ci riesco: suggerirei a Guido di contattare un buon grafico e provare con i fumetti.

          • 17 dicembre 2009 alle 15:10

            grazie Paolo. Suggerisco anche una ricerca su Google: “compile-time garbage collection”. Tra i risultati (tutti testi universitari o di ricerca, uno addirittura sul sito della Nasa) c’è un trattato di 80 pagine particolarmente interessante: “Compile-time garbage collection using reference count” cioè esattamente quello che fa vala.

          • IoProgrammoInGambas:D
            17 dicembre 2009 alle 18:58

            > Guarda, lasciando perdere gli insulti […]
            Insulti? Quali? Ho soltanto riportato i fatti tali e quali. Se poi trovi che la realtà sia offensiva, fatti un po’ i conti…

            Sai che c’è, chi non riesce ad afferrare che un garbage collector ha come obiettivo quello di gestire la *memoria disponibile* in quanto risorsa gestibile quando e come vuoi e non quello di liberarla prima possibile (come fa vala) dovrebbe avere il pudore di evitare battute.

            > […] stai sostenendo che una macchina elettrica non ha un motore.
            No, sto sostenendo che non puoi mettere un motore nel c**o di un cammello perché non ha senso.

            Ad ogni modo buona fortuna, ne avrete bisogno.

          • 17 dicembre 2009 alle 20:00

            No, sto sostenendo che non puoi mettere un motore nel c**o di un cammello perché non ha senso.

            Scusa ma è così difficile da capire? Esiste la gc a run-time (più diffusa e matura) e quella in compile-time.

            Fai una ricerchina, google è tuo amico.

            Poi se non ti piace chiamarla così chiamala “gestione automatica della memoria in fase di compilazione”. Non ti spara nessuno.

            Che palle.

  8. Cobra78
    16 dicembre 2009 alle 6:55

    @IoProgrammoInGambas:D

    Meglio essere ignoranti e sparare qualche cazzata che essere dei grandissimi villani maleducati facendo commenti come il tuo🙂

  9. Alessandro
    16 dicembre 2009 alle 10:15

    Beh considerando che se qualcuno fa un errore Guido è il primo a farlo notare stavolta glielo hanno fatto notare a lui, non ci vedo niente di male, anzi a volte i toni di Guido son peggiori di quelli di “Io programma”, specie su Gilean.

    Vediamo ora la risposta di Guido che son sicuro non mancherà ;D

    • Alessandro
      16 dicembre 2009 alle 14:37

      Come volevasi dimostrare Guido ha risposto e.. beh che dire è un grande ;D

      Se non altro le competenze tecniche le ha. Guido ma le tue conoscenze derivano più da studi all’ università o più per passione?

      • 16 dicembre 2009 alle 16:04

        Entrambe le cose.

        • Alessandro
          16 dicembre 2009 alle 16:15

          consiglieresti informatica pura od ingegneria all’ università?

  10. 16 dicembre 2009 alle 16:17

    Ora, pur non sapendo un tubo di programmazione, questo Vala mi ricorda tanto Genie. Sono diversi solo a livello di sintassi?

  11. Shishimaru
    16 dicembre 2009 alle 20:46

    mi dispiace che ubuntu un giorno avrà banshee come ci dicono. è così pesante quando lo si usa…!

    • 16 dicembre 2009 alle 21:02

      “ci dicono” chi?
      se ne era parlato per Karmic ma la proposta è stata bocciata quasi subito.

  12. SuNjACk
    16 dicembre 2009 alle 23:46

    Mi fa piacere che si sia ripreso lo sviluppo di rhytmbox, anche se non lo uso😀 , ma perchè si era fermato?

    Seconda cosa se non vi dispiace: cos’è meglio tra gthuma e solang?

    • pinzia
      17 dicembre 2009 alle 0:46

      il secondo è ancora agli inizi e manca di alcune funzionalità, il primo sta venendo riscritto quindi ad oggi gthumb 0.10 va bene ma .11 sarà migliore ma attualmente è in sviluppo come solang.

  13. 17 dicembre 2009 alle 19:07

    Evviva le figure di cacca dei troll. xD Non so se è una cosa generale… ma dei garbage-collector per linguaggi compilati me ne hanno parlato all’università in Fondamenti di Informatica… xDD

    • IoProgrammoInGambas:D
      17 dicembre 2009 alle 19:49

      si può sapere ora cosa centra? ho forse detto che fare un garbage collector per un linguaggio compilato è un crimine?
      guarda libgc fatto per c++: scansiona *periodicamente* (cioè quando la memoria disponibile si sta esaurendo) l’heap di processo, cosa possibile solo al runtime, quindi è un garbage collector.
      adesso, figura di cacca, ti risulta che vala abbia un garbage collector??? NO!

    • 17 dicembre 2009 alle 19:50

      sì ma attenzione, un conto sono i gc per c e c++ che lavorano anch’essi a run-time, altro è la gc in fase di compilazione.

  14. 24 ottobre 2012 alle 13:09

    An interesting discussion is value comment. I think
    that you must write more on this topic, it may not be
    a taboo topic but generally persons are not enough to talk on such topics.
    To the next. Cheers

  15. 30 ottobre 2012 alle 2:10

    Hi there this is kind of of off topic but I was wondering if blogs use WYSIWYG editors or
    if you have to manually code with HTML. I’m starting a blog soon but have no coding know-how so I wanted to get advice from someone with experience. Any help would be greatly appreciated!

  16. 30 ottobre 2012 alle 7:21

    Thank you, I’ve recently been looking for info about this subject for a while and yours is the greatest I have discovered till now. However, what about the bottom line? Are you certain concerning the supply?

  1. No trackbacks yet.

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: