Se vi neniam aŭdis pri Alan Kay, vi almenaŭ aŭdis liajn famajn citaĵojn. Ekzemple, ĉi tiu citaĵo de 1971:
La plej bona maniero antaŭdiri la estontecon estas elpensi ĝin.
La plej bona maniero antaŭdiri la estontecon estas elpensi ĝin.
Alan havas tre buntan karieron en komputiko. Li ricevis
En nia
Pri programaro-disvolviĝo
Alan Kay opinias, ke la komputila revolucio ankoraŭ estas venonta (
la problemo estas malforta, malbone skaleblaj ideoj kaj iloj, maldiligento, manko de scio, ktp.
Bone priskribas ĉi tiun situacion
Kion Andy donas, Bill forprenas
Andy donis, Bill prenis
Andy Grove, Ĉefoficisto de Intel, kaj Bill Gates, tiam Ĉefoficisto de Mikrosofto.
Plibonigi la nunan evoluan staton estis la celo de la esplorprojekto
En lia okulmalferma raporto
Alan konsideras la Interreton, TCP/IP-protokolojn, LISP-interpretistojn,
Li nomas la Interreton (TCP/IP) unu el la malmultaj grandskalaj softvarprojektoj kiuj estis desegnitaj ĝuste, kaj ĝia nivelo de komplekseco estas en ekvilibro kun la nivelo de komplekseco (komplikaĵo kontraŭ komplekseco). Kun malpli ol 20 linioj de kodo, la projekto funkcias kiel vivanta, dinamika sistemo kapabla je subteno de miliardoj da nodoj, kaj neniam iris senkonekta ekde sia komenca lanĉo en septembro 1969. Ni simple ĉesis konsideri la Interreton kiel normala programaro projekto kreita de homoj:
Interreto estas tiel bone evoluinta, ke multaj homoj traktas ĝin kiel naturan rimedon, kiel la Pacifikon, prefere ol produkton de homa laboro. Kiam la lastan fojon ni vidis tian stabilan, klaran, seneraran teknologion? Kompare, la Reto estas sensencaĵo. La reto estis kreita de amatoroj.
Pri objekt-orientita programado
La unua afero, kiu interesis min, estis lia
Mi pensis pri objektoj kiel biologiaj ĉeloj, kaj/aŭ individuaj komputiloj en reto, kiu povus komuniki nur per mesaĝoj.
kaj sperto en matematiko:
Mia sperto pri matematiko igis min kompreni ke ĉiu objekto povas havi plurajn algebrojn, ili povas esti kombinitaj en familiojn, kaj tio povas esti tre utila.
Ideoj por malfrua ligado kaj potencaj meta-trajtoj de LISPa:
La dua fazo komprenas LISPa kaj uzas tiun komprenon por krei pli facilajn, pli malgrandajn, pli potencajn strukturojn kaj pli postan ligadon.
Kaj baldaŭ Alan komencis subteni la ideon, ke dinamikaj lingvoj estas
Malfrua ligado permesas ideojn kiuj venis poste en la evoluprocezo esti integrigitaj en la projekton kun malpli fortostreĉo (kompare kun pli fruaj ligitaj sistemoj kiel C, C++, Java, ktp.)
Kaj la potencialo por ŝanĝoj sur la flugo kaj pli rapidaj ripetoj:
Unu el la ĉefaj ideoj estas, ke la sistemo devas daŭre funkcii dum testado, precipe dum ŝanĝoj estas faritaj. Eĉ gravaj ŝanĝoj devus esti laŭgradaj kaj daŭri ne pli ol divison de sekundo.
kiu mankas en
Se vi uzas fruajn ligajn lingvojn, kiel la plej multaj homoj faras, tiam vi enŝlosas vin en tion, kion vi jam skribis. Ne plu eblos facile reformuli ĝin.
Surprize, liaj pensoj pri OOP estis limigitaj al ĉi tio:
OOP por mi estas mesaĝoj, loka tenado kaj protekto, ŝtata kaŝado kaj malfrua ligado de ĉio. Ĉi tio povas esti farita en Smalltalk kaj en LISP.
Kaj nenio pri heredo. Ĉi tio ne estas la OOP
Mi dezirus, ke mi uzis la terminon "objekto" por ĉi tiu temo antaŭ longe ĉar ĝi kaŭzas multajn homojn koncentriĝi pri la malpli granda el la ideoj.
La granda ideo, ke modernaj statike tajpitaj OO-lingvoj mankas:
La granda ideo estas "mesaĝoj"
Li kredas je fokuso sur mesaĝoj, loza kuplado, kaj modulinteragoj prefere ol sur la internaĵoj de objekto:
La ŝlosilo por krei bonajn skaleblajn sistemojn estas ellabori la komunikajn mekanismojn inter moduloj, kaj ne ellabori iliajn internajn trajtojn kaj konduton.
Statike tajpitaj lingvoj ŝajnas al li
Mi ne estas kontraŭ tipoj, sed mi ne konas iun tipsistemon kiu ne kaŭzas doloron. Do mi ankoraŭ ŝatas dinamikan tajpadon.
Iuj popularaj lingvoj hodiaŭ uzas la mesaĝon de Smalltalk pasigante ideojn, malfruan ligadon, kaj
Detruu ĉion kaj kreu ion pli bonan
Alan havas interesan teorion pri la evoluo de komputiko:
Ŝajnas al mi, ke ekzistas nur unu speco de komputiko, kaj tiu scienco estas kiel konstrui pontojn. Iu konstruas pontojn, kaj iu detruas ilin kaj kreas novajn teoriojn. Kaj ni devas daŭre konstrui pontojn.
Pri LISP
Alan Kay kredas Lisp
plej bona programlingvo de ĉiuj tempoj
Kaj ke ĉiu diplomiĝinto pri komputilscienco devus studi ĝin:
Plej multaj homoj studantaj gradojn en CS ne komprenas la gravecon de Lisp. Lisp estas la plej grava ideo en komputiko.
Pri la ĝusta etoso kaj kunteksto
Li ofte memoras la unikan atmosferon en
Vidpunkto valoras 80 IQ-poentojn.
Alan Kay diras:
La ARPA/PARC-rakonto montras kiel kombinaĵo de vizio, modesta financado, la ĝusta kunteksto kaj procezo povas magie naskiĝi novajn teknologiojn, kiuj ne nur influas civilizacion sed ankaŭ kreas grandegan valoron por socio.
Kaj ĝi estas vera.
- Laseraj presiloj
- Objekt-Orientita Programado / Smalltalk
- Personaj komputiloj
- Ethernet / distribuita komputado
- GUI / komputila muso / WYSIWYG
Kaj en
PS
fonto: www.habr.com