O tej polemiki sem moral napisati prispevek objavljeno v LWN. In to je, da prevajalnik LLVM / Clang začne skrbi na poštnih seznamih GNU.
Nekoč je obstajal prevajalnik z imenom GCC, ki s svojimi več kot 25 leti obstoja še naprej zelo spoštuje svojo brezplačno licenco in licenco copyleft, pa tudi prevajalnik, ki ga uporablja jedro linux in do nedavnega FreeBSD. Kdor se je želel naučiti razvijati v C ali C ++, je zagotovo uporabljal GCC ne glede na arhitekturo svojega stroja. Vendar je GCC trpel zaradi nekaterih tajnost, delno zaradi filozofije tistih, ki so jo ustvarili, deloma pa tudi zaradi katedralnega razvoja, kjer je bil močan nadzor nad dogajanjem v GCC in kaj ne (zdaj ne toliko, ampak še vedno obstaja), kar je odprlo način za gradnjo čelnih koncev in druge funkcije, ki jih je GCC sčasoma sprejel. Če želite izvedeti več o kratki zgodovini EGCS, Pustim to povezavo.
Medtem je na Univerzi v Illinoisu v Urbana-Champaign približno leta 2002 raziskovalni projekt privedel do oblikovanja modulatorja, ki je bil ustvarjen na modularni način, tako da so njegovi posamezni elementi, kot so front-end, generatorji kod in optimizatorji. Pokličejo ga LLVM ker je bil sprva navidezni stroj na nizki ravni, na koncu pa je bil več kot to. In licencirali so ga z njegovo lastno licenco, kar je bilo podobno kot BSD (brezplačno, brez kopiranja, skladno z GPL). Leta kasneje se je Apple zanimal za LLVM in ga sprejel za svoje operacijske sisteme iOS in OS X, pa tudi za gradnjo (in izdajo pod isto brezplačno licenco kot LLVM) poklican vaš lastni front-end Zvok, za C in cilj C. Slaba stran je možnost vključitve LLVM / Clang v lastniških programihTak primer je prevajalnik CUDA iz NVIDIA in IDE XCode iz Applea.
Toda nekega dne pred nekaj tedni na poštnem seznamu emacs, sredi razprave o načinu samodokončanja, zasnovanem za Clang, Dimitrij Gutov Pravi: "Že zdavnaj so mi rekli, da Richard Stallman tako sovražil Clang-a ki je nasprotoval vključevanju kode, ki jo uporablja v emacs. " To je kasneje pripeljalo do nove razprave o klanju in prosti programski opremi Richard sam pojasni: «Naš pravilnik je, da ne sprejemamo sprememb nobenega paketa GNU, ki lahko deluje s Clangom, ne pa tudi z GCC. Emacs ne bo spodbudil ljudi, da bi se oddaljili od GCC. Ko bomo imeli priložnost, bomo spodbujali uporabo GCC nad Clangom. "
Kmalu zatem se pojavi Eric Raymond (znan po ustvarjanju katedrale in bazarja, skupaj z definicijo odprtokodne kode), ki je na pol prepeval tekmo pol trolling, gre in reče da je bil LLVM / Clang odgovor na odpor projekta GCC, da bi bil bolj interoperabilen, poleg tega pa je Clang v več tehničnih ukrepih presegel GCC. Po njegovem (in prikazuje video iz predavanja Chandler Carruth), so razvijalci Clang Stallmana vprašali, ali obstaja razlog, zakaj čelnih koncev GCC ni mogoče spremeniti v dinamične knjižnice, ki jih lahko poveže kateri koli program, ki želi razčleniti izvorno kodo. Stallman je odgovoril, da je en cilj GCC izognili lastniške programe za uporabo katerega koli njegovega dela, zato so se namerno izogibali raznim stvarem, ki poiblemente bi olajšali takšno uporabo ... ... kar so menili koristen odgovor. Želeli so ustvariti IDE-je in druga orodja, ki si delijo kodo prevajalnika in jim GCC tega ne dovoli, zato ustvariti Clang in poslati GCC na / dev / null. Razvijalci GCC skočili so na njega kurba ker ni bil v celoti obveščen (s tem, da Clang v več tehničnih ukrepih presega GCC). Sredi kurbe se pojavi Stallman, ki to govori LLVM je grozno vračanje, ne iz tehničnih razlogov, ampak samo zaradi licence, ki nima avtorske pravice, kar koristi podjetju Apple.
Nato članek LWN posveča dolge odstavke o modularnosti GCC in ukrepih, ki so jih namerno vključili, da bi otežili uporabo njegove notranje zastopanosti z lastniškimi programi, o Izjema izvajalne knjižnice GCC ki rešuje vprašanje, ali naj GCC sestavi lastniško kodo. Dodal bi tudi primer FreeBSD (nedavno izdana različica 10, nadomešča GCC z LLVM / Clang kot glavnim prevajalnikom). Najnovejšo različico GCC, ki so jo uporabili je bila 4.2.1 (najnovejši z licenco GPLv2) in niti nor nameravali so ga posodobiti na različico z GPLv3 (samo hočejo BSD brez GPL), zato LLVM / Clang pride k njim kot rokavico.
Skratka, še ena bitka večne vojne GPL proti BSD.
Ni zanimivo, pustimo, da se razvijalci ubijajo.
In tako imamo še enega nezadovoljnega delavca, ki bo delal v Microsoftu in Appleu.
Prav imate, podpiram, da je programska oprema vedno brezplačna, tako da jo lahko prebere Kdorkoli človek (to je edini razlog, zakaj podpiram in uporabljam Linux), vendar imajo na koncu zadnjo besedo programerji.
Dober članek, članki o diazepanu so mi vedno všeč, nenavadni so.
Resnica je, da gre za zelo neumno misel tistih, ki gcc, bolj je takrat, ko je ustvarjalec LLVM ponudil kodo tistim gcc in so jo zavrnili, CLang zasnovan tako, da lahko IDE preverijo kodo pravočasno, ki ne koristi samo zasebnim aplikacijam, temveč tudi odprtokodnim, kot sta KDevelop ali QtCreator, razen naprednih urejevalnikov, kot so Vim, Kate, emacs itd. Predvidevam, da se bo nekaj podobnega zgodilo z egcs-ji in bodo to prevzeli pod licenco gpl, takoj ko bo z njim mogoče sestaviti linux, kot se je zgodilo z egcs
Če ne bodo mogli izboljšati sistema EGCS in / ali ga bodo najbolje zamenjali za CLang, se odpravim na CLang in LLVM.
Neumno? Jaz pa ne mislim tako. Dejstvo, da GCC ni mogoče uporabiti za ustvarjanje lastniške programske opreme, je način, kako dati prednost razvoju brezplačne programske opreme in je ne izkoristiti za razvoj lastniške programske opreme. To je način za zaščito proste programske opreme, zato jo je treba podpirati. Gospod Stallman ima popolnoma prav, to je korak nazaj. Poleg tega bodo podjetja, kot je Apple, kot je omenjeno v članku, imela koristi od LLVM / Clang, ne da bi popolnoma prispevala k skupnosti in ne dajala zaslug projektu.
Na zdravje ljudje!
Tako GCC kot LLVM / CLANG lahko sestavljata lastniško programsko opremo, kar pa ni mogoče spremeniti, je GCC in teh sprememb ne da na znanje. LLVM / CLANG je mogoče znova licencirati kot gpl, največja razlika med njimi pa je, da morajo za LLVM / CLANG uporabljati C ++, tisti iz GCC pa ga do nedavnega niso želeli videti ali barvati. Z mojega vidika bi morali namesto prepisovanja GCC na C ++, kot to počnejo zdaj, prenesti arhitekture, ki jih podpira GCC, LLVM / CLANG pa ne, in jezike na slednje ter imeti čistejšo kodo in vzdrževati lastne razvojna veja.
Mislim, da je vaše mnenje neutemeljeno, nad tehničnimi težavami je prosta programska oprema. To je tisto, kar najbolj zadeva gospoda Stallmana. Kar se mi zdi najbolje za vas, je tehnični del in imate prav, toda ko ne boste imeli izbire, ker je podjetje prevzelo vašo tehnologijo, boste dvakrat premislili.
Po drugi strani pa lahko z GCC kodo preverite sproti, kot ponavljam, vaše mnenje ni utemeljeno.
1-Če GCC forkne LLVM / CLANG in podjetje ter ga znova licencira kot GPL, bo vsa koda, vključena v omenjene vilice, pod GPL in LLVM bodo morali zahtevati dovoljenje za njeno nadaljnjo licenco in jo vključiti v svoj repo. Obveščam vas, da je vrsta licence MIT (XORG, WAYLAND, ...) ali BSD (FreeBSD, ...) dovoljena kot LLVM
2 - Z GCC ne morete izvajati samodejnega dokončanja kode ali preveritelja kode v realnem času prek knjižnice, ki jo ponuja za razliko od CLANG
3 - LLVM je vrhunska rešitev za GCC, ne samo tehnična, ampak tudi po učinkovitosti. Binoma LLVM / CLANG potrebuje polovico časa za sestavljanje
Živela GNU in GPL!
Preverite, ali si lahko sami ustvarijo CLang z alkoholom, igrami na srečo in kurbami.
kajne?
Ne, Richard. Dejstvo, da je SELinux delo NSA, še ne pomeni, da katero koli drugo orodje, ki nima dovoljenja GPL (na primer LLVM / CLang), prihaja iz iste matrike.
Resno sem mislil, da je bil za to povsem racionalen motiv, vendar vidim, da so FSF bolj konzervativni kot Satoru Iwata ali kateri koli član MAFIAA.
Vidno je, da niste prebrali poštnega seznama in ste med vrsticami ostali pri tem, kar piše v članku.
Navedeni so bili racionalni argumenti, tudi tehnične možnosti, a vseeno je zelo pogosto prebrati naslov in skočiti naravnost v komentarje.
Ñuhhhh GCC + Emacs. Če želite preživeti, me primite za roko
Puritanci me bodo oprostili, vendar moram reči: Stallman mi ni bil nikoli všeč in se zdi, da je tako do konca svojih dni.
Ne moreš biti tako zaprt. Zdi se kot fanatik, nor, in ja, toliko spoštovanja, kot si zasluži za svoje dosežke in to, za kar se zavzema, ga ne maram.
Strinjam se. Sprva mi je bil zelo všeč, zdaj pa se mi zdi preveč skrajno ...
Ekstremist ... nor ... fanatik ... ja, odvisno od tega, kako gledaš na to. Zame je gospod Richard Stallman oseba z veliko socialno vestjo. Smisel njegovega življenja je bil in je izboljšati družbo, ne programske opreme. Razlika med brezplačno in odprtokodno programsko opremo je v tem, da prva obravnava socialna vprašanja, druga pa tehnična vprašanja.
Elav kolega, ni vprašanje biti puritanec ali ne. Prosta programska oprema se je rodila kot družbeno gibanje in to je tisto, kar gospod Stallman zagovarja, tako kot mnogi.
Ne moreš biti tako zaprt. Zdi se kot fanatik, nor, in ja, ne glede na to, koliko spoštovanja si zasluži za svoje dosežke in za kar se zavzema, ga ne maram. »
Pravzaprav je ravno obratno. Cilj je, da lahko vsakdo prosto dostopa do programske opreme, ne da bi kdo omejeval njeno uporabo z lastniškimi spremembami, in kot sem rekel v prejšnjem komentarju, dajejo prednost in poudarjajo razvoj brezplačne programske opreme.
Mislim, da fanatizem zamenjujete z drugim izrazom. Fanatizem ubija, kot je dobro pokazala zgodovina. Izraz, ki ga iščete, je lahko radikalen, vendar brez tega radikalizma prosta programska oprema in gibanje GNU / linux ne bi obstajali, vsaj kot ga poznamo danes. Glede nore stvari se ne bom prepiral s tabo, toda potem, ko sem videl, kar sem videl v teh nekaj letih, nori ljudje niso tako nori.
S tem odstavkom želim povedati, da gibanje proste programske opreme ni le računalniško, ampak tudi družbeno gibanje in ga je treba zagovarjati. In če Elav, moraš biti radikalen do družbenega. Podjetja, kot sta Apple ali Microsoft, ne bodo oklevala izkoristiti okoliščin. Ozavestiti moramo o pravicah uporabnikov in ljudi na splošno.
PS Imenujem Elava, ker mu odgovarjam, vendar je komentar namenjen vsem GNU / linuxerjem.
Na zdravje, ljudje!
@Xlash: GOSPOD! ... Hvala! To sem moral prebrati. +1
Kopiral vas bom, natisnil in dal stran od Biblije. (Za zapis: ne v njem ali na vrhu).
Na koncu se zahvaljujoč tej potezi in trudu Linusa in skupnosti doseže nekaj, kar je spremenilo svet:
"Obstaja prej Linux in ZDAJ z LINUX."
+10
E @Elav:
Ne opravičujem se, vendar sem moral reči:
Nekaterim tvojim prejšnjim objavam sem bil všeč, ne pa tudi tej ... in če bodo nadaljevali tako: morda bo tako tudi do konca mojih dni.
Ne bodite zaprti. Zdiš se fanatično, noro in spoštuješ toliko, kot si zaslužijo tvoji dosežki (ta forum) in to, kar zaslužiš ... Ne maram (tvoj komentar).
😀 - hehe! zdaj lahko (malo) doživite enako kot RMS. Enostavno morate imeti enako difuzijsko pot kot on in počutiti se skoraj popolnoma enako.
Lep pozdrav cuñao!
Ne razumem, zakaj je Stallman tako zaprt. Tvegam, da mislim, da je LLVM še bolj svoboden kot GCC, saj daje svobodo uporabe tudi v lastniških programih. Da, vem, da lahko omejitve v GCC pomagajo brezplačni programski opremi, vendar se mi zdi absurdno, da na tak način nasprotuje LLVM.
pozdrav
Stollman ni zaprt. Članek je zelo nagnjen k osebnim mnenjem avtorja.
V resnici so odločitve GCC v glavnem tehnične narave. V GCC želijo modularnost in to počnejo, vendar na drugačen način (izogibanje težavam, ki obstajajo v CLANG-u).
Za več informacij https://gcc.gnu.org/ml/gcc/2014-01/msg00176.html
Tako je zapisal raymond in obstajajo odgovori razvijalcev.
Zdi se mi, da vidim, kdo ima večjega ... Ego, seveda.
Oba prevajalnika sta odlična. Toda kot vsako orodje je odvisno od tega, kako ga uporabljate.
V C # lahko napišemo brezplačno kodo in naredimo raketo z Linuxom.
Mislim, da bi morali biti tukaj bolj pragmatični. Stollman bi moral imeti vizijo in se ne bi nehal izgubljati. Skrbi me, da sedanja skupnost ni razdrobljena, kar se tudi dogaja. Najbolj smiselno je, da čeprav licenca bsd omogoča uporabo v lastniških okoljih, če so avtorji prepoznani (in celo njihovi izpeljanki) uporabljajo isto logiko, vendar z gpl v2 ali novejšim.
Na srečo stojnika že dolgo skorajda nismo slišali. Drugi, računalniški program ali prevajalnik, nikoli ne bo socialna težava, poleg tega pa so vedno obstajale alternative, ki niso brezplačne! če pa brezplačno.
Glede llvm clang polemika ni smiselna, saj bo vir vedno bil, izdan je pod licenco bsd, torej je brezplačna programska oprema, ki jo lahko podjetje uporablja za svoje temne namene, ne pomeni, da vi ne more več dostopati do izvirne kode, vendar vidim, da tukaj nihče nima pojma, razen 2 ali 3.
"Računalniški program ali prevajalnik ne bo nikoli družbeno vprašanje"
Kako ne? Spoštujem, da ne zagovarjate gibanja proste programske opreme kot mnogi drugi, toda zanikanje tega, kar predstavlja brezplačna programska oprema, se zdi nespoštljivo do ljudi, ki v njeno obrambo in ustvarjanje vlagajo veliko časa, denarja in truda.
Seveda je llvm brezplačna programska oprema, vendar to ne pomeni, da so njene spremembe in izpeljave. Ideja ni le prost dostop do izvirne programske opreme, temveč tudi do njenih sprememb. Če razvijem program in ga dam v skupno rabo z vami, bi rad, da to storite tudi za ljudi, katerim bi dali kopijo spremenjene različice. To je tisto, kar zagovarjata brezplačna programska oprema in copyleft, zato gre za socialno vprašanje.
"Ampak vidim, tu nihče nima pojma, razen 2 ali 3."
Ne vem več, kako ste prišli do takšnega zaključka, ko se tukaj objavljeni komentarji nanašajo na filozofijo in svobodo programske opreme, ki primerja razlike med dvema vrstama licenc, četudi sta med seboj združljivi.
Kako vpliva na vsakdanje življenje računovodje, ki ne ve ničesar o programiranju z uporabo računovodskega programa, ki je bil sestavljen s takim prevajalnikom?
Sploh ne, dokler sem prosta. Toda tema, ki jo obravnavam v komentarjih, je druga, Diazepan. Govorim o uporabi prevajalnika X za prevajanje lastniške programske opreme, o licencah, ki jih uporablja vsak prevajalnik, in njihovih razlikah, omenjam tudi prednost GLP pred BSD, vedno z vidika svobode seveda.
LOL, trditev, da nihče nima ideje, je zelo močna beseda za nekoga, ki pravi, da programska oprema ni socialno vprašanje.
Biti moraš slep ali vsaj nekoliko kratkoviden, da ga ne vidiš, ko obstajajo celo države, ki migrirajo (v večjem ali manjšem odstotku) na brezplačno programsko opremo, ko pa vsi mednarodni mediji odmevajo, kako je lastniška programska oprema orodje za vohunjenje v velikem obsegu, ko je najbogatejši človek na svetu natančno posvečen operacijskemu sistemu.
Kaj je za prebrati.
... Želim si, da bi se slišalo več stojnic in manj pandev ...
Članek je nekoliko tendenciozen, za začetek z naslovom, kajti tisti, ki bi ga morali vprašati, ali "se malo znorijo", je LLVM, saj se oni tisti, ki se grenko pritožujejo.
In na tej temi lahko vidite hinavščino tistih, ki se najprej spoprimejo s tem, kar imenujejo "razdrobljenost", in kako grozno je za brezplačno programsko opremo.
Ko pa nekdo, ki je skladen s tem, kar govori in počne, sledi njegovi vrstici in se ne strinja, da brezplačni prevajalnik postane platforma za neskončnost lastniških prevajalnikov, potem ja, Živeli vsi, da ustvarite vilice!
Prosta programska oprema je po definiciji družbeno gibanje od rojstva.
Glede GPL vs BSD:
»Freedom 3 vključuje svobodo objavljanja spremenjenih različic kot brezplačne programske opreme. Brezplačna licenca lahko dovoli tudi druge oblike objave; z drugimi besedami, ni nujno, da gre za licenco copyleft. Vendar licence, ki zahteva, da so spremenjene različice nesvobodne, ni mogoče šteti za brezplačno. "
»Copyleft (zelo na kratko opredeljeno) je pravilo, na podlagi katerega pri prerazporeditvi programa ne morete dodati omejitev, da bi drugim zavrnili glavne svoboščine. To pravilo ni v nasprotju z glavnimi svoboščinami, temveč jih varuje. "
Kot lahko vidite, copyleft, čeprav kratkoročno jemlje nekaj svobode, dolgoročno pa ga varuje. Zato gospod Stallman zagovarja GPL: "Moje delo na področju proste programske opreme je motivirano z idealističnim ciljem: širiti svobodo in sodelovanje."
http://www.gnu.org/philosophy/open-source-misses-the-point.html
»Odprtokodna je programska metodologija, prosta programska oprema je družbeno gibanje. Za gibanje proste programske opreme je prosta programska oprema etični imperativ, bistveno spoštovanje svobode uporabnikov. Nasprotno pa odprtokodna filozofija postavlja vprašanja v smislu, kako "izboljšati" programsko opremo v zgolj praktičnem smislu. Trdi, da lastniška programska oprema ni optimalna rešitev za praktične probleme, ki jih je treba rešiti. V večini primerov se pri razpravi o "odprtokodni kodi" ne upošteva dobro in zlo, temveč le priljubljenost in uspeh. "
Že nekajkrat sem to komentiral in ponavljam, linux mi je na splošno zelo všeč, če pa v Linuxu kaj sovražim, je to skupnost. Ko lahko skočite s pečine, da nadaljujete z ideologijo, ki je tako zaprta kot "brezplačna programska oprema", potem spoznate, da je svet na glavo. Mislim, da je bila prosta programska oprema v svojih začetkih jasna, danes je zgodba drugačna.
Verjamem, da mnogim ni bilo jasno glede pogojev in namenov licence GPL. Licenca GPL je zelo dovoljena, vendar z omejitvijo, da ne dovoli dobička iz programov, licenciranih z njo. Strinjam se s Stallmanom, vendar ne skrajno izključno z uporabo brezplačne programske opreme. Za uporabnika, ki želi uporabljati LLvm / Clang, je njihova pravica, če pa bi SLF želel zamenjati GCC z LLVM / Clang, bi bilo to v nasprotju z načeli proste programske opreme.