Java con licenza Open Source? Sun dice no

IBM ha chiesto un incontro a Sun per verificare la possibilità di rilasciare Java con licenza Open Source, ma Jonathan Schwartz alza gli scudi!
di Fabio Boneschi pubblicata il 14 Aprile 2004, alle 16:07 nel canale ProgrammiIBM
IBM ha recentemente chiesto a Sun un incontro per verificare la possibilità di rilasciare Java con licenza opensource; anche se non recentissima, ci sembra assai interessante proporvi questa news.
Jonathan Schwartz, vice presidente del software di Sun, risponde in modo assai
vigoroso e dice no!
Alla base della sua risposta negativa vi è la convinzione che la licenza
GPL esporrebbe Java a problemi di incompatibilità, sicuramente deleteri
per Java che tra i propri plus vanta proprio l'elevata compatibilità.
Queste le parole di Jonathan Schwartz, che sicuramente faranno discutere:
La licenza GPL, che regola la maggior parte delle applicazioni open source, incoraggia la divisione e la divergenza tra le varie versioni del software. Se la distribuzione Linux di Red Hat è riuscita a diventare lo standard de facto di mercato nel Nord America, il motivo è proprio questo. Java, viceversa, è l'antitesi della divisione. Java è stato progettato per essere compatibile. La compatibilità è alla base di questo linguaggio."
Il big di Sun ha fatto anche altri commenti per circostanziare meglio la sua
visione, affermando che la proposta attuale di IBM ricorda molto quanto avvenuto
con Microsoft qualche tempo fa, da cui poi scaturirono problemi di compatibilità
e ritardi nello sviluppo.
Jonathan Schwartz, pur mostrando di essere abbastanza prevenuto, non esclude la possibilità di un incontro con IBM; le prossime settimane porteranno sicuramente qualche novità per Java.
63 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoByezz
Se Java fosse Open Source vi sarebbero i pro ed i contro (come in tutte le cose):
pro: forse gli open developper potrebbero dare una mano nella manutenzione delle classi base che, è opinione di tutti i maggiori esperti di java, sono il maggior freno nelle prestazioni di un programma java. Infatti l'agognato 1:1,5 (rapporto tra applicazioni c++ e applicazioni java) con il Java HotSpot è stato solo avvicinato ma è ancora lontano da essere raggiunto.
contro: una frammentazione senza controllo di versioni diverse del java runtime environment.
Conoscendo i motivi che portano alla nascita di Java, i contro superano di molto i vantaggi.
IMHO
Se non ti piace una classe, la ridefinisci! (visto in modo molto semplicistico
Ridicoli
Onestamente le affermazioni sulla compatibilita'sono ridicole; soprattutto perche' ci sono
cosi' tante macchine virtuali Java rilasciate
da SUN, IBM, etc., che nemmeno loro sanno piu' starci dietro, per non parlare di tutte le incompatibilita
che sorgono usando le macchine virtuali di
SUN compilate con compilatori vecchi su distro
preistoriche, su kernel 2.6...
Altro che write once run everywhere: write
once, run nowhere e' la situazione attuale...
Credo che alla fin fine ci sono piu' release
di macchine virtuali SUN che applicazioni Java...
contro: una frammentazione senza controllo di versioni diverse del java runtime environment.
Mi fai un nome di un progetto OSS di una certa rilevanza dove questo accade?
64 disponibili grazie alla licenza di SUN?
Ci sono migliaia di progetti failure proof in GPL,
basti pensare al perl, al python, al PHP e
quindi spaventarsi di frammentazioni (laddove
di solito quando avvengono frammentazioni si
cambia anche il nome) mi sembra eccessivo, tanto
gia' la situazione attuale e' pessima (causa
macchine virtuali marce) e vede gia' Java inusabile
in applicazioni di una certa importanza...
vogliamo parlare delle implementazioni Java per Athlon
64 disponibili grazie alla licenza di SUN?
Ci sono migliaia di progetti failure proof in GPL,
basti pensare al perl, al python, al PHP e
quindi spaventarsi di frammentazioni (laddove
di solito quando avvengono frammentazioni si
cambia anche il nome) mi sembra eccessivo, tanto
gia' la situazione attuale e' pessima (causa
macchine virtuali marce) e vede gia' Java inusabile
in applicazioni di una certa importanza...
Dalle tue affermazioni si deduce che non hai proprio idea di come sia fatta una virtual machine...
Java viene compilato in bytecode che NON è un linguaggio macchina, ha quindi bisogno di un interprete che porti le istruzioni JVM a quelle della macchina. Questo vuol dire che ci deve essere una JVM per ogni architettura.
Aggiungi poi le chiamate alle funzioni del sistema operativo per le GUI o altro, e avrai una JVM per (quasi) ogni SO.
Quindi mi sembra lampante che ci debbano essere molte JVM diverse per avere compatibilità.
La JVM non è assolutamente marcia come dici tu, ha invece tecniche molto avanzate che migliorano di release in release (è un po' impossibile fare un software universale in una sola versione che vada bene con tutto...).
Java è interpretato: è logico che non vada bene per tutti i tipi di applicazioni... se vuoi prestazioni usa il C++.
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".