Fortran (nu foresight) Saga: lumină și întuneric

Fortran (nu foresight) Saga: lumină și întuneric

Această lucrare a fost publicată în Fortran Forum , Vol. 9 nr 2, octombrie 1990, pp. 23-32. Această versiune WWW a fost elaborat de autor din textul trimis spre publicare, și apare cu permisiunea deținătorului drepturilor de autor. Copyright © 1990 de către Asociația pentru Computing Machinery, Inc Apasati click aici pentru completă privind drepturile de autor ACM .

Fortran (nu foresight) Saga: lumină și întuneric

de Brian Meek  Computing Centru de  Kings College din  Strand  din Londra WC2R 2LS, Marea Britanie  [UDAA000@UK.AC.KCL.CC.HAZEL] Secțiuni Chief după introducerea: Oră de speranță (1978-1983) de acceptare lume (1978-1983) conștiința de bogat (1984) somn al rațiunii (1985-1986) vale de oase (1986) Carti fac furnizeze o Camere (1986-1987) de bărbați noi (1987-1988) regii temporare (1988) coridoarele puterii(1988-1989) auditive armonii secrete (1990) Ultimele lucruri (confirmările) Săptămână de săptămână am citit despre luptele corporative pentru acțiuni într-o piață, fie că este vorba de hardware, software sau servicii, despre manoeuvrings preluare și procurarea de, despre rivalul consorțiile doresc să domine domenii precum Unix sau de rețele. Fii aceste povestiri în curs de desfășurare, greu dacă acestea pot fi, uneori, să urmeze, avea complexitatea unei cărți Ladybird, comparativ cu saga de lungă durată 8X Fortran standard. Povestea a început imediat după finalizarea 77 Fortran standard, prin urmare, anterioară epocii Thatcher - și ar putea trăi mai mult decât încă o. Nu mai este "8X" poveste, desigur, SUA Fortran Comitetul de Standarde este acum numindu-l "Fortran 90", dar având în vedere că a început ca "82" și pentru o perioadă de zori fals a fost "88", nimeni nu care a supraviețuit până în prezent întreaga saga ar pune bani seriosi pe aceasta fiind denumirea finală. (Cu toate acestea, cei care aduc aminte de un roman numit "Limbo 90" poate considera ca nu nepotrivit.) Un zi cineva, probabil, se va înregistra istoria Fortran 82/8X/88/90 / ..., dar ea are nevoie de o Escher pentru a descrie aceasta sau un Borges să-l descrie. Într-adevăr, Borges, familia Borgia și Bizanțul venit în minte atunci când unul se uită la complexe, multi-stratificat interacțiunea forțelor care au contribuit. Cel mai bun care se poate face aici este de a indica diferitele forțe și interconexiunile lor, și să descrie pe scurt problemele și forțele implicate în luptele care au avut loc principalele. Principalele grupe de forțe sunt comitetele de standardizare, colectivități, instituții profesionale, și persoane fizice. Acestea au ele însele subgroupings și clasificări. Standarde Comitetele Comitetele standarde, precum și ca fiind "forțe", în sensul că au puterea și, prin urmare, sunt jucători în joc, de asemenea, oferă câmpurile de luptă, cel puțin pentru luptele set-buc. Alte bătălii s-au luptat în ședințele sunt publice, cum ar fi forumurile Fortran, care au fost detinute din timp în timp, mai ales in SUA si Marea Britanie, pentru a prezenta și discuta problemele și evoluțiile lor; în mass-media, cum ar fi publicate reviste săptămânale de calculator, tehnice, precum și newsletter-ul, de asemenea, numit Fortran Forum (a se vedea mai jos), iar în ultimii ani, prin intermediul rețelelor de poștă electronică și aviziere. Cele mai multe dintre luptele set-piese au fost luptat în, și, uneori, între, Fortran SUA Comitetul de Standarde X3J3, precum și standardele internaționale Fortran grup de lucru, ISO / IEC JTC1/SC22/WG5 ("WG5" pentru scurt) sau predecesorii săi. Structura Comitetului Internațional a suferit modificări substanțiale în cursul vieții de saga, dar nu în mod direct relevante; voi folosi denumirile actuale, și "WG5" sau "WG5-a-fi" pentru grupul de Fortran. X3J3 face lucrările tehnice de a produce standard (atât ca un cetățean american și un standard internațional); WG5 coordonatele comentariu internațională privind munca X3J3 este de a face și oferă sfaturi generale privind direcția în care dezvoltarea standardului ar trebui să fie poziția. WG5 rapoarte SC22, subcomitetului ISO responsabil pentru limbaje de programare, ca un întreg. SC22, la rândul său JTC1, Comitetul Tehnic Comun al Organizației Internaționale de Standardizare (ISO) și al Comisiei Electrotehnice Internaționale (IEC), responsabilă de standardele de tehnologie a informației, în general. Structura organizatorică în cadrul Statele Unite ale Americii este destul de diferită, și X3J3 rapoarte la X3, un organism acreditat de Comitetul de Standarde American National Standards Institute (ANSI), care este organism membru al ISO SUA, mai degrabă ca British Standards Institution (BSI) este membru din Marea Britanie organism. În scopul de a explica saga Fortran, X3 este aproximativ la același nivel ca JTC1 deși nu absolut echivalente. Prin urmare, nu există nici un nivel intermediar în echivalent Statele Unite ale Americii de a SC22, deși există o etichetă SC22 (Technical Advisory Group), al cărui scop este de a consilia pe X3 legătura cu corpul ISO. Delegația Statelor Unite a WG5 este numit de către (și extrase din) X3J3. Unii membri non-americane ale WG5 sunt, de asemenea, membri ai X3J3, inclusiv unele din Marea Britanie. Corporate Organisme Persoanele juridice pot fi împărțite în furnizori (furnizori) și a utilizatorilor, în acest caz, este suficient să se limiteze "furnizori", pentru cei care furnizează Fortran compilatoare. Utilizatorii corporate pot pentru anumite scopuri să fie împărțită în sectorul public și sectorul privat, sau chiar comercial, industrial, academic, și de guvern. Atât pe furnizor si pe partea de utilizator aceste organisme variază foarte mult în dimensiune și în atitudine. Instituții profesionale Cele două instituții profesionale, care au jucat un rol de sprijin în saga au fost British Computer Society (BCS) și omologul său american Asociatia pentru Computing Machinery (ACM). La un moment dat, cu excepția rolul ACM a fost în principal unul pasiv de a distribui informații prin publicarea Forumului newsletter-ul Fortran. BCS, prin Grupul său Specialist Fortran (FSG) a fost mai activ, primirea rapoartelor de progres X3J3 la reuniunile sale, sponsorizarea reuniunilor publice (forumuri Fortran), în Marea Britanie, și punerea la dispoziție, la un cost mai mic decât ar fi fost altfel cazul , copii ale proiectelor de standarde pentru revizuire și comentarii. Cei mai mulți membri din Regatul Unit de WG5 sunt membri ai FSG BCS. Persoane fizice La un nivel, oamenii individuale sunt cel mai puțin important dintre grupări. Ele nu sunt forțe economice majore în calitate de furnizori sau utilizatori, acestea nu pot nominaliza reprezentanții fi alte grupuri pot. Cu toate acestea, persoanele juridice, instituționale și standardele sunt compuse din indivizi, este faptul că indivizii recomanda politica, scrie documente de poziție, susțin, discuta, și voturile exprimate. Ca și în majoritatea activităților umane, personalități joacă un rol important. Chiar lăsând la o parte afilieri, taxe și loialități, taxonomie a diferitelor persoane interesate de standardizare cu Fortran merită aproape o disertație mic proprie. Două clasificări trebuie să se constate de la bun început. Una dintre ele este între tradiționaliști și revizioniștii (altfel conservatori și radicali, sensibles și irresponsibles, backwoodsmen și progresiști, în funcție de atitudinea). Cele mai multe (nu toate) pot fi ferm plasate pe o parte sau alta a acestui decalaj. Altă clasificare este între featurists și generaliști - cei al căror interes primar este în anumite caracteristici, și cele privind limba ca un întreg. Cele featurists de curs trebuie să fie divizată în grupuri de interese diferite - de prelucrare a vectorului, procesul de control și așa mai departe. Acest lucru poate include suport pentru extensii specifice distribuitorului la Fortran 77. Ideea este că liniile de luptă sunt redesenate și categoriile rearanja, în funcție de ceea ce apare problema, modul în care aceasta vine, iar contextul actual. De exemplu, un featurist care este, de asemenea, un tradiționalist poate sprijini, în general, se mută pentru "a reduce dimensiunea limbii" (un apel unirea recurentă în întreaga saga), dar se va schimba părți în cazul propunerii este de a elimina o facilitate dorit-pentru. Un featurist care este, de asemenea, un revizionist poate, totuși, să fie reticenți în a susține o propunere pentru o instalație dorit-pentru dacă este făcut într-un mod care contravine miscari generale pentru modernizarea limbii. Acesta nu este deloc surprinzător, cu o astfel de combinație deplasare a intereselor, că este greu pentru a ajunge la un consens pe nimic. Schimbările treptate ale statutului de membru individual al comisiilor și organizațiilor peste atât de mult timp o perioadă de timp, plus modificările continue în tehnologie și piață, înseamnă că orice consens are nevoie de revigorare continuă și reafirmare. Oricine care a fost cu privire la orice comitet standardele știe sentimentul obosit atunci când un membru al recent recrutat aduce o problemă sau un argument care a fost dezbătută pe larg și tratate cu ani înainte. Cu toate acestea, oamenii se întreabă de ce ia atat de mult standardele să fie de acord. E de mirare este, mai degrabă, că ei se vreodată de acord deloc. Este o măsură de importanța crucială a standardelor (chiar dacă nu în mod adecvat recunoscut de toata lumea), pe care oamenii continuă totuși să soldat pe. Să ne întoarcem acum la unele dintre cele mai importante din saga. Sunt recunoscător CP Snow și Powell Anthony pentru furnizarea de mine, fara sa stie, cu titlurile secțiunilor și (cu John Galsworthy) ale piesei ca un întreg. Timp de speranță În această saga de lumină și întuneric, la început a fost lumina. Fortran 77, lăsați-l să nu fi uitat (deși de multe ori aceasta este), a fost mai degrabă o chestiune spatchcock, a fost de acord că oamenii au convenit că trebuie să producă ceva, chiar dacă nu au putut conveni asupra a ceea ce ar trebui să fie. Ideea de "Fortran 82" a fost, bine că e din cale acum să o facem corect. Punctul de plecare a fost de a fi un "nucleu plus modulele" arhitectură capabil de a găzdui featurists și generaliști, tradiționaliști și revizioniștii. Pentru un timp, lucrurile au mers bine. Prima întâlnire oficială, la Londra, în 1978, a ceea ce avea să devină WG5 (a existat o discuție de grup ad-hoc de anul precedent, la reuniunea de programare limbajul ISO comisiei de la Haga) a discutat constructiv natura "de bază, plus module" și ceea ce ar trebui să fie modulele. La sfârșitul anului 1979 Walt Brainerd de X3J3 (atunci și încă) descris proiectul în acest fel: "Nu a fost o schimbare semnificativă de atitudine în ceea ce privește obiectivele de standardizare Fortran. Un motiv pentru aceasta a fost înțelegerea faptului că limba este de a deveni prea mare prin adăugarea de noi caracteristici și aproape niciodată nu scoate nici pe cele vechi ...."X3J3 a răspuns la aceste provocări, propunând o arhitectură limbă constând dintr-un" miez "limbaj", plus modulele "de bază este de a fi un limbaj de programare complet general, scop,. Dar nu va conține caracteristici care sunt redundante sau învechite doar pentru că acestea sunt în Fortran 77 .... "Una dintre aceste module va conține toate caracteristicile în Fortran 77, care nu sunt în miezul Acest lucru este important, în scopul de a sprijini programele de investiții uriașe în Fortran scrise folosind aceste caracteristici.". [1] Frumusețea de bază-plus-module a fost că aceasta ar putea conține luptele din zone foarte mici. Slăbiciunea sa a fost că crucial depindea de atingerea unui consens asupra a două aspecte, ce ar trebui să fie în centrul, și ceea ce ar trebui să fie în ceea ce a devenit cunoscut sub numele de "învechit caracteristici" modulul - partile care nu Fortran 77 în miez. Aceasta sa dezvoltat într-o bătălie între revizioniști / generaliști, și tradiționaliștii aliat pentru a revizioniste / featurists care, deși nu se opune core-plus-module sau la conceptul de uzură morală, nu a putut accepta faptul că caracteristici prețuite ar trebui să fie excluse din miezul - sau, mai rău, considerate "depășite". După o îndelungată angajament, aproape exclusiv în cadrul X3J3, core-plus-module a fost abandonat, deschizând astfel câmpul de luptă toată nimanui. Fortran "82" a devenit de aceasta data Fortran "8X". Într-o actualizare privind discuția lui mai devreme, în februarie 1983, Walt Brainerd a fost scris: "Comitetul părea să fi respins ideea unui nucleu elegante mici, pare a fi problema veche, care o comisie pur si simplu nu se poate proiecta ceva mic și elegant; jabou unei persoane este caracteristica altuia esențială, și, pentru unii motiv, o comisie aproape întotdeauna pare. să voteze pentru a include lucrurile din această categorie, mai degrabă decât să le excludă. După ce totul altceva este făcut, încă poate fi posibilă identificarea unui mic "nucleu" ". [2] El a fost să fie dezamăgit. Acceptarea lume În această perioadă, grupul internațional a observat, a comentat, îngrijorarea exprimată ocazional, dar, în general, tolerat în ceea ce se întâmplă în X3J3. Atât Fortran 77 și predecesorul său, de acum cunoscut sub numele de Fortran 66, au fost aprobate standardele ANSI de ISO. Singurele grupuri organizate de ajuns pentru a oferi comentariu internațională substanțială în proiectul de Fortran 77 a fost FSG BCS si un grup în Țările de Jos. Chiar schimbarea de statut in 1983 la un grup de lucru formale ISO părea la prima vedere pentru a face mica schimbare. Conștiința bogați Cu toate acestea, la reuniunea de la Geneva din WG5-a-fi în primăvara anului 1984, o problemă care a venit cu beneficiul înțelegerii ulterioare poate fi perceput ca paie în vînt. După ce a fost acum la locul de muncă pentru mai mult de șase ani, dar cu un standard proiectul de la vedere, X3J3 simțit că feedback-ul publicului asupra a ceea ce a fost făcut până acum ar fi util, și a propus publicarea de X3 a unui "Buletinului Informativ Fortran". Această propunere a fost discutată, de asemenea, de la Grupul de lucru ISO și sa convenit că un FIB ("un acronim nefericit", am scris în Computer Weekly , la acel moment) se publică pe plan internațional, precum și, cu text identic. Când a venit la acest X3 pentru aprobare, cu toate acestea, votul a fost de 40 în favoarea și 2 împotrivă -, dar două au fost DEC si IBM. Decembrie a obiectat cu excepția cazului în care au fost făcute schimbări (am scris la acel moment) "ar fi subminat ... toată munca pe care a fost realizat pe Fortran 8X". IBM nu-i păsa de publicare, dar numai în cazul în care obiecțiile sale și cele ale altora au fost publicate în FIB, ca parte a documentului. Primul mare set de piese luptă a început, câmpul de luptă X3, doi furnizori majori împotriva majorității X3J3. X3 a întrebat X3J3 în cazul în care ar accepta astfel de condiții. Deoarece scopul FIB fost pur și simplu să prezinte stadiul actual de dezvoltare pe 8X, atât X3J3 și WG5-a-fi spus că acest lucru a fost inacceptabil ca o chestiune de principiu. FIB a fost un document de fapt, nu, propagandă, iar cei care-l citesc ar trebui să fie liberi să facă până mintea lor proprii. Aceste opinii au fost raportate înapoi la X3, care a decis (în ciuda marea majoritate) de a nu aproba publicarea. Toate comitetele de standardizare au datoria de a încerca să ajungă la un consens. În cazul în care acordul nu poate fi atins, cu toate acestea, un vot de mărimea de la 40 la 2 este, de obicei, destul de socotit. În mod evident, pe X3 unele voturi au fost mai egali decât alții. Cu toate acestea, lupta nu a fost destul de peste. Pentru prima dată și până în prezent doar în saga, ACM a jucat un rol activ, deși ca o extensie naturală a rolului său obișnuit de a face disponibile informații. O problemă specială comună a Fortec Forumului (acum Fortran Forum ) și Buletin informativ SIGNUM (SIGNUM este Interest Group ACM specială în matematică numerice) a publicat un raport tehnic - care sa întâmplat să conțină toate aceleași cuvinte ca și FIB (în afară de capacul frontal ), dar nu include modificările decembrie sau obiecțiile IBM. Asociația Marines Computing la salvare? Cele paie "în vânt"? De lumină a început să dea drumul la intuneric; doi furnizori majori au demonstrat că ei au fost dispuși să meargă la lungimi considerabile pentru a bloca progresul în direcția majoritatea a vrut să meargă, și de backup X3J3, ISO a grupului de lucru slab a început să se a se vedea că a avut putere un pic mai mult de propriile sale decât doar puterea de a comenta - în cazul în care a ales să-l folosească. Somnul rațiunii Raportul a aparut ACM, comentarii venit, X3J3 a continuat activitatea. Prin reuniunii de la Bonn a WG5-a-fi în vara anului 1985, a fost clar ca timpul a fost în cele din urmă se apropie atunci când un proiect de standard ar putea fi produse, iar întâlnirea a adoptat o rezoluție apreciind munca X3J3 ca "satisfacerea în general nevoilor Fortran comunitate la nivel mondial ". Cu toate acestea, în cazul în care forma și dimensiunea 8X emergente a fost din ce în ce clar, a fost, de asemenea, evident că se mută în mișcare au fost de a mobiliza forțele pentru a se opune tendința generală. Principalele grupuri care se suprapun, au fost de furnizori, condus de IBM și DEC, dar acum au alăturat de către alții (deși nicidecum pe toate), și, tradiționaliști ambele companii și persoane fizice de utilizator. Grupul principal furnizor de obiectat la dimensiunea limbii, gruparea tradiționalistă la unele caracteristici noi și, de asemenea, conceptul de "depreciate" caracteristici (de acum termenul pentru slăbit "învechit"). După câteva luptele interne (din moment ce toate diferitele facțiuni au fost reprezentate), reuniunii de la Bonn adăugat la aprobarea generală a 8X curent o declarație în sensul că orice majoră "revizuirea în sens descendent" ar fi "în detrimentul intereselor utilizatorilor Fortran". Acest lucru a fost prin intermediul un foc de avertizare, de-a lungul arcuri ale grupului vânzător, în special. Acesta a fost, de asemenea, cu toate că, în sine, nu mai mult de consolidarea de aprobare a ceea ce a făcut X3J3, de departe cel mai puternic declarația făcută de către orice grup ISO de până la acel moment de direcția în care ar dori să continue activitatea în viitor. De câteva luni, progresul a continuat, până când un proiect a fost produs, care a mers pentru vot internă a membrilor grupurilor de SUA și ISO de aprobare pentru publicare ca un proiect de revizuire publică. În ambele grupuri, au existat oameni care au simțit că deficiențe minore au rămas prea multe pentru a face publicabile în acest stadiu, dar votul ISO a fost destul de favorabilă. În Statele Unite, cu toate acestea, a existat un grup puternic de contestatari din SUA, plângându-se că limba era prea mare și ar trebui să fie tăiat în jos, și a adus mai mult în conformitate cu "practica existentă" (care, fiind tradus, a însemnat ceea ce vânzătorii deja furnizate ). Acesta a fost în acest moment că evenimentul a avut loc, care a escaladat disputele Fortran 8X într-un "război de fotografiere", și a modificat esențial relația dintre X3J3 și WG5. Prima consecință a fost clar la timp; acest lucru nu este retrospectiv. Al doilea a luat mai mult pentru a deveni evidente, dar poate fi în cele din urmă a fost văzut de importanță pe termen mai lung. Raspuns normal la faptul că nu a atinge un nivel adecvat de sprijin în astfel de situații este de a revizui obiecțiile și să caute să le rezolve, dacă este posibil în moduri care nu va înstrăina sprijin printre cei în favoarea propunerilor actuale. Cu toate acestea, răspunsul a fost X3J3 (ca mai mult de un observator a declarat la momentul respectiv) "pentru a intra în modul de panica". În ciuda rezoluției ISO grup la Bonn, bucăți pentru vânzare angro s-au făcut, iar rezultatul a fost numit "plan de compromis". Secțiuni mari de proiectul de standard au fost transferate la un apendice al "extensii" propuse sau șterse cu totul. Structura care a fost atât de migală construită de-a lungul ultimilor ani a avut, practic peste noapte, redus la ceva mult mai limitat în sfera de aplicare, și lipsite de facilități de acum, în care mulți au investit timp de ore în proiectarea și promovarea, precum și în altele convingătoare ale lor tehnice merită. Multe inconsecvențe au fost dezvăluite în cazul în care consecințele acestei intervenții chirurgicale (sau Macelarie, așa cum unii ar avea) au fost examinate. În retrospectivă, este greu de înțeles de ce arhitecții compromis nu a putut vedea că consecința inevitabilă nu ar fi de a accelera un acord privind eventuala standardul, ci să-l întârzie. Vale de oase În afara X3J3 (și unul adună într-o oarecare măsură, în cadrul acesteia), reacția inițială a "plan de compromis", a fost de neincredere șocat, a urmat, în multe cazuri prin ultraj. Revizioniști, desigur, care în ansamblu nu a susținut că a fost 8X prea mare, s-au îngrozit la dimensiunea reducerilor. Featurists proprii ale caror animale de companie facilități au căzut sub securea au fost, de asemenea, enervat. Cu toate acestea, a devenit clar faptul că principala sursă a obiecțiilor cu orice structură organizatorică pentru a exprima aceasta a fost WG5 (care grupul de ISO în cele din urmă a fost acum). Sursa de resentimente nu a fost doar reducerile sine, deși, probabil, o majoritate pe WG5 au fost de tendință revizionistă. În plus, mulți dintre cei care ar fi putut acceptat majoritatea sau chiar unele dintre reducerile ofensați de modul în care acesta a fost făcut, fără consultare cu comunitatea internațională. Chiar și fără rezoluțiile de la Bonn a anului precedent, aceasta ar fi fost cazul. Declarația de avertizare la Bonn împotriva revizuirii în jos substanțială a asumat acum o importanță majoră, fiind nu doar un stick de readymade, dar având în vedere greutatea in plus, deoarece X3J3 a ales să-l ignore. În vara anului 1986, arhitecții "plan de compromis", a continuat să curețe proiectul de 8X, în formă redusă, dar a devenit clar faptul că prea mulți privit planul ca o capitulare, mai degrabă decât un compromis, pentru că niciodată să ajungă la un consens , doar pentru singurul scop util de compromis. Ori de câte ori un compromis pune, în cazul în care pune oriunde, nu era aici. La Halifax (Nova Scotia), reuniunea de WG5 în vara anului 1986, unul sau doi dintre delegația SUA a încercat să argumenteze că "compromis" nu a fost cu adevărat o revizuire substanțială în sens descendent, dar majoritatea membrilor X3J3 părea gata să admită că atât a fost, și că ar trebui să WG5 au fost consultate. Revizioniștii - rîndurile lor sporite de featurists nedreptățiți, asigurat de sprijin substanțial de la o comunitate internațională ce în ce mai fermă a drepturilor sale - lins ranile lor, regrupat, și a început termen lung înapoi. Luna de luna, a fost terenul pierdut treptat recăpătat - nu toate, dar suficient pentru a atinge, probabil, un consens evaziv. Cărți face furnizeze o cameră Reuniunea Halifax a WG5 au trecut, printr-o majoritate adecvat, dar nu copleșitoare, că reducerile de pe scara propus au fost admisibil numai în cazul în care acest a servit pentru a accelera apariția standardului. Chiar si atunci, era destul de clar că aceasta a fost o speranță deznădăjduit. "Compromis" si-a redus consens, nu a crescut. Cu toate acestea, a existat un acord mult mai mult faptul că lucrurile nu puteau continua asa, si ca cea mai bună speranță de progres ar fi pentru a obține un document de afară pentru comentarii publice, în speranța că feedback-ul rezultat ar trebui să rezolve cel puțin o parte din probleme. Chiar și faptul că a fost destul de greu de realizat. Prin restul din 1986 și 1987, versiunile succesive ale proiectului de s-au produs, și X3J3 membrii și observatorii s-au obișnuit, la fiecare câteva săptămâni, la un alt pachet de voluminoase ajunge pentru a adăuga la gramada în continuă creștere. Caracteristici au fost revizuite, unele restabilit, unii. Modificat pentru a arata mai mult ca "practica existentă" (adică ceea ce vânzătorii deja furnizate), într-o încercare de a realiza un compromis autentic De Liverpool WG5 întâlnirea în august 1987 documentul a ajuns la stadiul de a fi transmise la X3 si SC22 pentru distribuire ca un proiect propus ca standard. Prin acest timp, destul de remediere și de lucrările de reconstrucție au fost efectuate pe odinioară "compromis", plan care acest lucru din nou, în X3 atras voturile negative din interese de furnizor. Cu toate acestea, WG5 avut încă o listă de cumpărături scurtă de caracteristici necesare. Legate de procesarea datelor la nivel de bit, un tipic featurist cerință minoritate care a căzut victimă "compromis", și cred că aceasta sau nu au reușit să câștige în mod similar acceptarea de peste un deceniu mai devreme pentru Fortran 77 One. O altă sursă a fost gratuit codul formularului, un alt accident dar de acum aproape piatra de încercare a revizionismului. Bărbații noi În timp ce revizioniștii au fost greu la locul de muncă terenul recuperarea pierdere, tradiționaliștii nu au fost inactiv. Poștă electronică și rapoartele de întâlnire transporta probe de încercări de a-si atrage opoziție la 8X, în urma eșecului de "plan de compromis", pentru a obține efectul dorit. Sperie povesti vehiculate despre 8X nu sunt compatibile cu Fortran 77, în ciuda faptului că fiind un obiectiv explicit de proiectare. O sursă de prim știri senzaționale, de exemplu, a fost conceptul de asociere "peiorativ" de stocare. O altă poveste gând a fost că forma a rundă sursă liberă ar invalida "milioane de linii" de cod existente. Faptul că aceste crize au avut nici un fundament, nu a contat: ca marele Dr. Goebbels ne-a învățat, astfel de povești nu câștige credibilitate în rândul persoanelor care nu deranjeaza pentru a verifica faptele. Dacă cineva crede că scopul scuză mijloacele, tradiționaliștii responsabile pentru răspândirea ei au fost capabili, la sfârșitul anului 1989 pentru a găsi justificarea lor. Deși dovezi greu este mult mai dificil de găsit, există, de asemenea, un motiv pentru a suspecta că oamenii Alarmat de aceste povestiri au fost încurajate să se alăture X3J3 a-și apăra interesele lor. (Norme X3 face relativ ușor să facă acest lucru și de a obține în curând drepturi depline de vot, cu condiția compania este dispusă să plătească o mică taxă anuală, în prezent, $ 250). Dar, pentru orice motiv, în ultima parte a anilor 1980 X3J3 crescut semnificativ în dimensiuni, iar cele mai multe dintre noi membri au fost de tendința tradiționalist - un factor de importanță acordată cerinței lui X3 unei majorități de două treimi - și, de asemenea, cea mai mare parte reprezentând furnizori. Acești membri noi, precum și nu atât de mult pe partea de sus de aspecte tehnice, precum cele care au fost de lucru pe 8X pentru un deceniu sau mai mult - ușor de înțeles și scuzabil în sine - au fost, de asemenea, în general, nu cunosc sau indiferenți față de dimensiunea internațională, de asemenea, un factor de pentru a dovedi de importanță. X3J3 a constat întotdeauna atât din membri (din toate taberele, trebuie spus), care au fost pe plan internațional la minte și care au participat, în general, WG5, și din membri care nu au fost. Bărbații noi afectat atât echilibrul revizionist / tradiționalist și echilibrul internaționalist / naționalist. Rezultatul internațională a revizuirii proiectului publicului prima a fost că au existat mai multe voturi negative din partea țărilor membre ale SC22, cea mai mare parte din cauza deficiențelor, dintre care unele au fost deja identificate de către WG5. Comentariile individuale a fugit în mai multe sute, atât în Statele Unite ale Americii și în afara. Majoritatea dintre acestea au fost negative, pe un simplu "vot" numărătoare, un fapt imediat confiscat de către unii dintre tabăra tradiționalistă ca arata ca "X3J3 au înțeles greșit". De fapt, negative "voturi" a constat din cele featurist ("caracteristica mea pentru animale de companie a fost lăsat pe dinafară"), cele revizioniste ("posibilitate a fost ratată de a rezolva această deficiență") și cele tehnice ("această propunere nu va funcționa, deoarece ... "), precum și cele tradiționaliste (" limba este prea mare / prea revoluționar / nu practica existentă / ... "). Din răspunsurile tradiționaliste, mulți au fost de forma pătură "limbaj prea mare" sau similare, fără a susține argumente, iar unele au fost, practic, copii sau de fapt exactă de scrisori de protest propuse distribuite de către unii dintre tradiționaliști. Lucrurile nu au îmbunătățit atunci când a ajuns la X3J3 în considerare observațiile publicului de revizuire și cum să răspundă la ele. Diviziile părea să fie aprofundarea, și pozițiile devenim. La un moment dat, voturile s-au desfășurat în cinci domenii majore, care dintre ele ar fi rezolvat cele mai multe voturi internaționale negative. Fiecare a câștigat majoritatea necesară separat, dar când pachet ca un întreg a fost invocat, acesta a fost votat în jos. Elevii de metodele de votare nu vor fi surprinși de acest lucru - coaliții diferite au fost implicate de fiecare dată. Acesta este un exemplu de Condorcet "paradoxul votului", care, în forma sa cea mai simplă permite, în lupte drepte, de la A la B bate, bate B la C, și C să bată A. consecință, cu toate acestea, a fost consternarea și dezordine, și indivizi și grupuri a plecat pentru a încerca să vină cu propuneri de pachete complete. Ca vara anului 1988 a purtat pe, numeroase planuri au fost avansate și a considerat, până la patru rămas. Doi au fost tradiționalist, și ușor revizioniste unul. Al patrulea, produs de cinci dintre membrii cei mai experimentați ai X3J3, a fost cel care sa apropiat cel mai satisfacerea comentariu internațională. Cu toate acestea, la ultima sa reuniune înainte de WG5 la Paris, în septembrie 1988, au votat în jos X3J3 acest plan prea. În acest moment, X3J3 în sine a fost aproape de a ajunge la o soluție internă, în sensul unei majorități adecvat, deși în nici un caz un consens. Prețul unei astfel de soluție a fost eșecul de a aborda multe dintre preocupările internaționale. Deși este posibil ca mulți membri ai trecut cu vederea faptul că au X3J3 aspect în manoeuvrings pentru a construi o majoritate, la sfârșitul acestei reuniuni a fost clar că aceasta a fost o decizie conștientă a comisiei. Este chiar în mod explicit faptul că au votat planul patra menționate mai sus nu a fost să fie prezentat spre examinare WG5, in ciuda protestelor care X3J3 nu au dreptul de a stabili ordinea de zi WG5 lui. Regi temporare Deci, WG5 întâlnit la Paris, în septembrie 1988, a prezentat cu trei planuri alternative pentru a satisface comentariile de la controlul public primul 8X, dintre care niciunul nu a venit aproape de îndeplinirea de punctul de interes din voturile internaționale negative. Membrii WG5-au plâns anterior pe ocazie că X3J3 acordat o atenție pentru a nu mai poziției naționale considerat de un organism membru SC22 (de multe ori, la fel ca în Marea Britanie, după ample consultări publice), decât într-o scrisoare de la Harvey P. Digweed din Backwater, Iowa . Acesta a devenit rapid clar că WG5 nu a fost în starea de spirit pentru a juca acest joc orice mai mult. În primul rând, WG5 a decis să ia în considerare planul de a patra, care X3J3 au votat nu ar trebui să fie prezentate WG5, apoi a avut prezentari de toate patru, după care a decis să nu pierdem timpul mai mult pe doi (cei doi "tradiționaliste" planuri). Arhitecții celelalte două planuri au fost rugati sa se adune pentru a produce un plan pentru a rezolva combinat de voturi internaționale negative. În timp ce WG5 avut în opiniile exprimate în ultimile privind aspectele tehnice, acesta nu a angajat înainte pe munca în mod specific tehnic, considerate anterior ca prerogativele X3J3 lui. Cu toate acestea, starea de spirit părea să fie, "în cazul în care nu se poate rezolva X3J3 voturile negative, este de până la noi să-l facem". Până la sfârșitul unei săptămâni intense, WG5 a produs cadrul unui standard 8X nou, care a fost probabil pentru a obține sprijinul tuturor țărilor membre (cu excepția, eventual, Statele Unite ale Americii); au stabilit un calendar pentru realizarea de progrese în viitor la o revizuire publică al doilea; și a declarat că revizuit Fortran 8X ar fi numit "Fortran 88". Aceasta ultima a fost în principal o afirmație simbolică că "destul este de ajuns", deși secvența de Fortran 66, 77, 88 a fost atrăgătoare în sine. Mai mult de doi ani au trecut de când "plan de compromis", 1986, și de această dată a fost rândul celor tradiționaliști de a se retrage din câmpul de luptă shell-șocat. De recuperare nu a fost ajutat de SC22 în general favorabil cu ceea ce a făcut WG5, și X3 emiterea unei directive a X3J3 (exista doar un singur vot disidentă), care ar trebui să depună eforturi în vederea unei național unic și standard internațional - "că este, un document". Această frază trecut a fost să-și asume o semnificație adăugată un an mai târziu. Reuniunea din Boston X3J3 în noiembrie 1988 a fost o capitulare aproape complet la aceste presiuni, precum și locul de muncă față de un proiect de a doua sa desfășurat, în principal, dacă nu în întregime pe liniile prevăzute de WG5. Starea de spirit a fost unul aparent mai anti-tradiționalismului decât internaționalismului pozitivă, deși efectul a fost același. Pe de altă parte, unele explicite anti-internaționaliste sentimentele au început să fie deschis exprimată printr-un număr mic de membri X3J3. Valul mare de pre-eminența WG5 poate fi acum văzut ca schimbarea părți ale IBM, care la începutul anului 1989 a anunțat că a fost pregătit să renunțe la opoziția sa față de Fortran 8X, în interesul de realizare a acordului general. Calendarul WG5 alunecat, dar care este atât de familiar un fenomen în standardele de luare, controversate sau nu, că a fost greu remarcat. Reuniunea iulie WG5 în nordul Italiei a fost o afacere low-cheie cu rezoluția cea mai critică a X3J3 doar le îndeamnă să mergem mai departe și să termin treaba. Coridoarele puterii Acesta a fost Liniștea dinaintea furtunii următoare, astfel cum saga Fortran a luat încă o poftă de mâncare. Primul indiciu a ceea ce avea să vină a apărut săptămână după întâlnirea WG5. Acesta trebuie să fi fost cunoscut săptămâna anterioară, iar unii au considerat că a semnificativ faptul că acesta nu a fost menționat la WG5. Normele X3 permite întâlniri ocazionale ale comisiilor sale în afara continent american, si mai mult de o dată pe X3J3 a deținut astfel de reuniuni imediat după WG5. De data aceasta a fost la Viena, și acolo sa aflat că un reprezentant furnizor pe X3J3, care a fost, de asemenea, un membru al X3, a înaintat o propunere de politica lui X3 Standarde și Comitetul Cerințe (SPARC), care Statele Unite ale Americii schimba termenii de referință ai internă ANSI proiectului 8X de la a fi o revizuire a Fortran 77 la un standard de garanție - "extins" Fortran - păstrând în același timp Fortran 77. Acum, începând din 1977, politica internațională, și-a reafirmat și întărit în 1985, a fost faptul că obiectivul de standardizare limbaj de programare ar trebui să fie un standard unic la nivel mondial pentru fiecare limbă. Această mișcare a fost văzută pe scară largă - de mulți în X3J3, precum și WG5 - pentru a rula în contradicție cu cel puțin spiritul acestui acord internațional, la care au subscris Statele Unite ale Americii, și, eventual, chiar la scrisoarea de ea. Fie că a fost scrisoarea, precum și spiritul, a depins ca de atâtea ori în interpretare. În cazul în care ISO a avut un standard, dar Statele Unite ale Americii doi, a fost aceasta o încălcare a acordului în SC22 să caute "un standard unic la nivel mondial" - sau, așa cum l-au pus X3 anul precedent, "un document"? Înainte de standard a fost în cele din urmă a fost de acord, ar exista o diferență de statut al proiectului 8X - un standard revizuit în ISO, un standard garanții în ANSI. Ar fi faptul că reprezintă o încălcare a acordului? Toate acestea, cel puțin a sugerat că ar trebui să recomande consultarea SPARC cu SC22 și WG5 peste propunere de schimbare a statutului - care, în ISO ar trebui, de asemenea, aprobarea JTC1 au fost invocate ea acolo. Cu toate acestea, SPARC a ales sa nu vadă în acest fel. Cu un singur disident, comisia a votat pentru a recomanda schimbarea statutului, care a fost, prin urmare, transmisă X3 pentru aprobare. Deși SPARC este punct de vedere tehnic doar un comitet consultativ, este foarte mult lui X3 "cabinetului interioară" și recomandările sale sunt rareori răsturnate. Se pare convins de argumentul că un organism important de utilizatori din SUA (și unele în afara), nu a vrut Fortran 8X, X3 a aprobat propunerea - coincidență, chiar înainte de vot închiderea reuniunii de la Berlin din SC22 în septembrie 1989. Acesta a fost, fără îndoială, adevărat că există un corp de utilizatori care pur și simplu a vrut să păstreze investițiile existente în Fortran cod, dar a văzut viitorul lor are nevoie de altă parte - C, Ada sau orice altceva. Grupul tradiționalist / furnizor a fost asiduă în găsirea unor astfel de utilizatori și stimularea lor de a se opune 8X - în cazul în care numai prin copierea unui "scrisoare de formă". În timpul revizuirii publice secunde, o mers atât de departe încât să îndemne oamenii "nu trebuie să cumpere un exemplar din proiectul de standard obiect, tu nici măcar nu trebuie să-l citesc ..." Acest lucru a determinat un răspuns nimicitor pe rețeaua electronică de la un membru al X3J3 - un reprezentant furnizor, de altfel - remarcând privind standardele de profesionalism și a codurilor de conduită, care ar trebui să fie observate în lume standarde. Cu toate acestea, nici una dintre aceste nevoi a însemnat că a trebuit Fortran 77 pentru a fi păstrate ca un standard - continuarea lungă de sprijin pentru Cobol 74 și chiar 68 Cobol după apariția Cobol 85 a fost o dovadă de asta. În timp ce obligația de a rămas, vânzătorii continuă să sprijine Fortran 77 ar găsi o piață. Nici nu a fost păstrarea Fortran 77 singura opțiune. Posibilitatea de a stipula în cadrul standard, un subset de Fortran 8X de putere mai limitată a fost ridicată din timp în timp mai devreme, și, deși opinia generală în X3J3 și WG5 a fost că au fost subseturi nedorite (un drum lung, au fost parcursă de la core-plus -module), cu toate acestea, WG5 la Paris 1988 a fost de acord că acestea ar putea fi luată în considerare dacă toate celelalte nu au reușit să ajungă la un consens. Momentan nu sunt motive puternice pentru a crede că adevărata motivație pentru mutare - care, deși pretind a fi pe numele utilizatorilor, a fost promovat de un grup de furnizori - a fost că SUA achizițiilor federale se bazează în mod normal pe conformitatea cu standardele, în cazul în care există standarde .Implicația clară a fost că vânzătorii ar avea drept scop de a obține achiziții pentru a specifica "Fortran", dar lăsându-le cu alegerea pe care dintre cele două Fortrans de a furniza. Normele conformității ale Fortran 77 sunt atât de slabe încât vânzătorii ar putea furniza apoi Fortran 77 implementari cu vendor-specific extensii care erau incompatibile cu Fortran 8X. Rezultatul net ar fi de a distruge toate post-Fortran 77 de standardizare. La Berlin, SC22 solicitat persoanelor interesate să lucreze pentru a încerca să reconcilieze pozițiile conflictuale privind statutul 8X și păstrarea Fortran 77. Delegația Statelor Unite, cu toate acestea, lipit de "linia partidului", că aceasta a fost o chestiune pur internă din SUA, și că, dacă 8X a fost aceeași în ISO și ANSI (deși diferit numit și de statut diferit), atunci organismul american și-a îndeplinit standardele de obligațiile internaționale. Din punct de vedere strict juridic, retenție de Fortran 77 era într-adevăr o problemă internă, Statele Unite ale Americii sau în orice altă țară a avut dreptul să facă acest lucru. În lumea reală a interdependenței internaționale, existența continuă a Fortran 77 ca standard SUA, a avut mai mult de implicații interne americane. Aceste manoeuvrings stârnit resentimente mai mult chiar decat "plan de compromis" nefast din 1986. Un factor a fost că acest lucru ar trebui să se întâmple atunci când un acord final părea cel puțin în vedere. Un altul a fost că 1985 "compromis" au fost cel puțin elaborate în interiorul comunității Fortran, și tratate cu acolo - întrucât acum, un membru al comunității, în imposibilitatea de a convinge colegii sai de la X3J3 și WG5, au încercat să-i influențată de mai mare (și mai bine informați) autoritate, și indiferent de consecințe internaționale. După SC22 în Berlin exista încă unele speranța că X3 ar putea revizui opiniile sale - nu a fost suficient pentru a disidenței menținerea Fortran 77 pentru a cere un "reconsiderare" vot, și având în vedere preocupările exprimate internaționale se spera ca ar exista două gânduri, cel puțin pentru a da timp pentru negocieri. Nu a fost să fie. Când X3 întâlnit să-și reconsidere, atitudinea față de consultanta X3J3 părea a fi un amestec de "noi știm ce gândește X3J3" și "noi suntem responsabili". Dimensiunea internațională a fost respinsă prin repetarea că era o chestiune pur națională, indiferent dovezi clare de interes internațional și alarmă. Când a fost întrebat care credea că Fortran 77 era un subset de Fortran 8X, doar patru mâini s-au majorat. Unul dintre cei patru, o veche X3J3 membru, a încercat să explice, dar altcineva a spus "tot ce am auzit sugerează că Fortran 77 nu este un subset adecvată a Fortran 8X" și că a fost sfârșitul discuției. X3 a reafirmat decizia sa. În mod ironic, un al treilea membru X3J3 și X3, care a fost prezent încheia ulterior un răspuns de lungă durată la torent de plângeri electronice cu "toate X3 a fost spus că Fortran 77 va rămâne un subset adecvată a Fortran 8X și numai în SUA" (sublinierea mea) . Orice s-ar face din această inconsecvență, ceea ce a fost ca X3 crezut ca a fost faci este alături de punct. Ceea ce contează este faptul că, în timp ce Fortran 77 este un subset al Fortran 8X, implementari furnizori de Fortran 77 sunt, în general, foarte mult, nu implementari subset de Fortran 8X, și nici nu există multe dovezi că au intenția de a le face acest lucru. Disconfortului cu X3, precum și X3J3 membrii care au ingineria această lovitură, a fost considerabilă în comunitate Fortran, chiar și printre membrii X3J3 în afara taberei revizioniste. Inversare completă a atitudinii de X3 din anul precedent, în valoare practic într-o 180 de grade U-turn, nu a fost încă explicate în mod satisfăcător. Audierea armonii secrete Atmosfera de întrunire suplimentară specială a WG5 a avut loc la Londra în martie 1990 la revizuiască situația a fost una de determinare, mai degrabă decât recriminare. Ca la Paris, optsprezece luni mai devreme, aceasta suflecat mânecile sale colective și a plecat să lucreze la proiectul de, care a fost numit acum "Fortran 90". Mai degrabă decât doar revizuirea și solicitând X3J3 de a face modificări, a făcut schimbări - în vigoare spun la X3J3 "aici e ceea ce ISO Fortran 90 standard va fi, vă rugăm să verificați-l pentru exactitatea" pleacă X3J3 pentru a aduce ANSI extinsă Fortran standard în linie. Pentru a fi siguri, nu a fost pus la fel de stringentă ca, și unele aspecte rămase nerezolvate la sfârșitul săptămânii au fost menționate la X3J3 pentru a face față. Cu toate acestea, a fost destul de clar că WG5 (care, ține minte, conține o bună parte dintre X3J3 membri, care, la această întâlnire au luat conducerea în activitatea tehnică) ar avea o vedere foarte slabă, dacă X3J3 nu a acceptat în principiu ceea ce a fost făcut. Ca acest lucru este scris (iunie 1990) X3J3 a finalizat într-adevăr, un proiect final și acest lucru este în ultimele etape de a fi pregătite pentru publicare de la sediul central ISO, la Geneva, ca proiectul de standard internațional (DIS) - după care conținutul tehnic este efectiv înghețată cu modificările limitate la corectarea erorilor tipografice și alte. Fortran 90 nu par a fi pe cale sa - deși supravietuitorii pe termen lung ale acestei saga va fi în continuare de trecere degetele lor. Deci, sunt probleme de peste? Cu greu, există prea multe probleme nerezolvate:
  • Va Fortran SUA 90 (ANS Extended Fortran) să fie identic cu standardul ISO Fortran 90 în afară de denumire? [Se crede și, cu siguranță au sperat astfel, însă în această singură zonă a învățat că nimic nu ar trebui să fie luate pentru acordate.]
  • Va tabăra tradiționalistă, cu această lovitură sub centura lor, da acum Fortran 90 o rulare clar? [Se pare că până acum, dar ne-am gândit înainte de lovitura de stat care la necazurile s-au terminat.]
  • Care sunt intențiile tradiționaliste / furnizor cu privire la viitorul Fortran 77? [Au existat asigurări, dar, de asemenea, zvonuri urât, și o mulțime de neliniște.]
  • Care va fi impactul acestei decuplare unilaterală a standardelor naționale și internaționale, precum și diferența de statut de Fortran 90 dintre ANSI si ISO, în afara comunității Fortran, și ar putea fi acolo implicatii negative pentru proiecte de standardizare alte? [Cel puțin, aceasta ar putea duce la un alt comentariu este de problema națională Raport standardelor internaționale.]
Romania Armonizarea și comun este obiectivul de standardizare internaționale. În timp ce diferențele de statut și atitudine față de Fortran 90, și pentru care contează Fortran 77, rămân între Statele Unite și restul lumii, atunci acest scop nu vor în mod corespunzător au fost îndeplinite. Reverberatiile va continua până la care anomalia a fost rezolvat - de exemplu, prin revizuirea SUA Fortran 77 de iarnă, nu în conținutul său, ci în normele sale de a conformității, astfel încât să nu extensii la Fortran 77 sunt permise cu excepția cazului compatibile cu standardul Fortran 90. Acesta este un substitut slab pentru ceea ce ar fi trebuit să se fi întâmplat, dar mai bine decat nimic. Cu toate acestea, există puține dovezi cu privire la orice dorinta de a face acest lucru, și motive bune pentru temându-se că orice indiciu de revizuire Fortran 77 vor fi confiscate de către unele interese de a submina, mai degrabă decât de sprijin Fortran 90. În timp ce această stare de lucruri continuă nefericit, dacă există armonii de a fi audiate, acestea sunt într-adevăr cele secrete. Ultimele lucruri Acest cont de saga Fortran a fost scris din punctul de vedere al unui membru din Marea Britanie al WG5 și a unui revizioniste unreconstructed și necenzurată. Fără îndoială că a fost evident! Deoarece autorul este nici o Borges, saga este mult simplificată, dar se speră că evenimentele principale au fost acoperite, chiar dacă nu toată lumea va fi de acord cu interpretările și opiniile exprimate - care sunt proprii autorului și nu reflectă în mod necesar pe cele ale Regatului Unit la WG5 și SC22 nivel. David Muxworthy, Lawrie Schonfelder iar Loren Meissner a prezentat observații valoroase și corecțiile de erori factuale cu privire la versiunile anterioare, care sunt primite cu recunostinta, dar ele ar trebui în niciun caz să fie tras la răspundere pentru opiniile exprimate, nici pentru orice alte erori, care sunt proprie autorului. Un articol bazat pe un material elaborat de la o versiune anterioară a apărut în Computer Weekly , la 3 mai 1990. Referinte [1] WS Brainerd, în capitolul 2 ( Fortran ) din standardizare a unui limbaj de programare , ed. ID-ul Hill și BL Meek, Ellis Horwood 1980, p.. 34 [2] WS Brainerd, limbaj de programare scena standarde II: Fortran , Calculatoare și Standarde Vol. 2 nr 2-3, 1983, p.. 76 Copyright © 1990 de către Asociația pentru Computing Machinery, Inc Apasati click aici pentru completă privind drepturile de autor ACM . Notă a adăugat în 1995 : în ciuda pesimismul se arată în secret de auditor armonii pasaj, Fortran 90 a fost, într-adevăr publicată în 1991 ca ISO / IEC 1539:1991, standardul american este aceeași, și se mută sunt în curs de a se retrage paralel standard pentru SUA Fortran 77. Inițial, la http://www.fortran.com/fortran/forsaga.html La pagina principală
Sciencespaces
© 2014 Created with the assistance of Roman Pashkeev. All rights protected.