
poppu-2

eddinberg sarvakalaashaalayile robin poppu lestonum rooad barstalum 1970ll vikasippichedutha oru prograaming bhaashayaan poppu-2 (poppu 2 ennum ariyappedunnu). lisp, algol 60 ennee bhashakalil ninnum peettar jeey. yill ninnulla saidhaanthika ashayangalil ninnum ithu verukal uruthirinju. landin. ithu oru incremental compiler upayogichu, ithu oru vyaakhyaanikkappetta bhaashayude kurachu vazhakkam nalki, rann timil puthiya function nirvachanangal anuvadikkunnathum oru prograam pravartthikkumbol function nirvachanangalude parishkkaranavum (iva randum dynamic kampaileshante savisheshathakalaan), oru vyaakhyaanikkappetta bhaashayude overhead illaathe.
vivaranam.
staakk.
poppu-2-nte vaakyaghadana algol poleyaayirunnu, assainmentukal marichaayirunnu ezhuthunnathinupakaram
 a: = 3;
oraal ezhuthi.
 3-> eiii;
ithinu kaaranam bhaashaykk oru "oopparand staakk" enna vyakthamaaya dhaarana undaayirunnu; athinaal, munbathe assainment rund vyathyastha prasthavanakalaayi ezhuthaam
 3;
athu 3 enna moolyam vilayiruthukayum athu staakkil vaykkukayum cheythu,
 -> eiii;
ithu staakkil ninnu ettavum uyarnna moolyam poppu cheyyukayum athu 'a' variabililekku nalkukayum cheythu. athupole, function kooll
 f (x, y, z);
ingane ezhuthaam
 x, y, z; f ();
(komakalum ardhaviraamangalum pradhaanamaayum parasparam maattaavunnavayaan) allengil
 x, y, z.eph;
allengil
 (x, y, z).eph;
staakk adisthaanamaakkiyulla maathruka kaaranam, "prasthaavanakalum" "padaprayogangalum" thammil verthirichariyenda aavashyamillaayirunnu; athinaal, rund nirmmithikalum
 eiii> bii aanenkil
 sii-> iii
 mattenthenkilum
 dii-> iii
 adaykkuka;
oppam
 eiii> bii aanenkil
 sii
 mattenthenkilum
 dii.
 adaykkuka-> iii;
avaa thulyamaayirunnu (kookk 1-nte upayogam shradhikkuka, kaaranam kookk 2 ithuvare oru saadhaarana end-oof-iff-closs notteshanaayi mariyittilla).
arekalum eratta functionukalum.
saadhaaranayaayi manassilaakkunnathupole arekalo record gadanakalo srishtikkunnathinu prathyeka bhasha nirmmithikalonnum undaayirunnilla pakaram, iva prathyeka bilttin functionukalude sahaayathodeyaanu srishtichathu, udha.jii. niyuware (eathu tharatthilulla inavum ulkkollaan kazhiyunna arekalkku), niyanthricha enangal srishtikkunnathinulla newanyare.
athinaal, shreni gadakavum record feeld aaksasarukalum oru "doublet functionte" prathyeka kesukalaayirunnu ithu oru assainmentinte reseaving sidil vilikkunna "updator" aayi gadippichirikkunna mattoru functionaayirunnu. athinaal, cockways _ 3 enna variable oru shreni undengil,
 3-> eiii (4);
thulyamaayirunnu
 updator (eiii) (3,4);
biltt inn function coxie _ 4 dabilttinte updator thirike nalkunnu. theerchayaayum, cockways _ 4 thanne oru doublet aayirunnu, ithu oru dabilttinte updator ghadakam maattaan upayogikkaam.
pravartthanangal.
phastt klaas objectukalaayirunna functionukal ulppede eathu tharatthilulla moolyangalum variabilukalkku kaivasham vaykkaam. athinaal, thaazhepparayunna nirmmithikal
 function paramavadhi xy; x> y aanenkil x allengil y closs end;
oppam
 wars maiks;
 lamda x y; x> y aanenkil x allengil y closs end-> maiks;
avaa thulyamaayirunnu.
functionukalile rasakaramaaya oru pravartthanam "bhagika prayogam" aayirunnu (chilappol "curry" ennu vilikkunnu). bhagika prayogatthil functionte ettavum valath aargyumentukalude chila ennam (function ulppedunnathinu munbu staakkil sthaapicha avasaanatheth aayirikkum) kuranja aargyumentukalude oru puthiya function srishtikkunnathinaayi nalkiyirikkunna moolyangalilekku "freeze" cheythu, ithu yadhaartha functionte klosaraanu. udaaharanathinu, pothuvaaya second digri polynomialukal anakkukoottunnathinulla oru function pariganikkuka
 function poolii 2 x a b c; a * x * x + b * x + c end;
ithu bandhikkappedaam, udaaharanathinu
 1 chathurasrayil thaazheyulla vaarukal;
 poolii2 (% 1,-2,1%)-> 1 chathurasrayil kuravu;
aaa aavishkaaram
 chathurashra (3)
freezucheyta moonnu aargyumentukal upayogichu poolii 2 closser cheiyunnathu prayogikkunnu, aargyument 3 lake, (3-1) nte square thirike nalkunnu, athaayath 4. bhaagikamaayi prayogicha functionte prayogam freezucheyta moolyangal (eee saahacharyathil 1,2,1) staakkil ithinakam ullathilekku cherkkaan kaaranamaakunnu (eee saahacharyathil 3), athinusesham yadhaartha function poolii 2 vilikkunnu. athu staakkile mikacha naalu enangal upayogikkunnu, athe phalam nalkunnu
 poolii2 (3,1,-2,1)
aii.iii.
 1 * 3 * 3 + (-2) * 3 + 1
oopparettarude nirvachanam.
poppu-2ll puthiya pravartthanangale (aadhunika padangalil oopparettarmaar) nirvachikkaan kazhinju.
 vaar pravartthanam 3 + *;
 lamda x y; x * x + y * y avasaanam-> nonoopu +*
aadya varii munganana (munganana) 3 ulla oru puthiya pravartthanam + * prakhyaapikkunnu. randaamathe varii f (x, y) = x * x + y * y enna function srishtikkukayum puthuthayi prakhyaapicha pravarthanatthinu + * nalkukayum cheiyunnu.
charithram.
poppu-2-nte yadhaartha pathipp eddinberg sarvakalaashaalayile eliot 4130 computeril nadappilaakki (64 kebi raam maathram, 1972-ll 128 kbyayi erattiyaayi).
poppu-2 oru 1909 ll laankaastar sarvakalashaalayil 1968 ll joonn scott aii. sii. tii 1900 parambarayilekku portt cheythu.
1970kalude madhyathil poppu-2 besam-6 (poplan sisttam) lake portt cheythu.
pilkkala pathippukal sii. tii. ell modular vann, pii. dii. pii-10, aii. sii. ell 1900 seereesukal (jorjju operating sisttam pravarthippikkunnu) ennivaykkaayi nadappilaakki. edinbergil juuliyan davis poppu-2-nte vipuleekritha pathipp nadappilaakki, athine addeham pdp-10 computeril poppu-10 ennu vilichu. ithu poppu-2-nte aadya bhashayaayirunnu, ithu identifier namangalil kesine praadhaanyamullathaayi kanakkaakkukayum mikka sisttam identifierukalkkum lover cases upayogikkukayum 8-ll kooduthal pratheekangalulla neelamulla identifierukale pinthunaykkukayum cheythu.
athinusesham taamasiyaathe, dablyu poppu (vandarpoppinaayi) ennariyappedunna oru puthiya nadappaakkal roobert reyum allen ramse edinbergil oru gaveshana-kaunsil dhanasahaayathodeyulla padhathiyil nadappaakki. aaa pathipp koottil vilasam edangal, chila compile-time vaakyaghadana typing (udha.jii. poornnasamkhyakalkkum realukalkkum) athupole thanne vividha daatta-strectureukalumaayi upayogikkunnathinulla chila paatten matching nirmmithikalum.
sussex sarvakalaashaalayile aaa steevu hardic samaantharamaayi poppu-2-nte oru upavibhagam nadappaakki, athine addeham poppu-11 ennu vilichu, athu oru deck pdp-11/40 computeril pravartthikkunnu. adhyaapanathinaayi time share cheytha modil deck operating sisttamaaya arsx-11dii-yill pravarthippikkaanaanu ithu aadyam roopakalppana cheythathenkilum athu niravadhi prashnangalkk kaaranamayathinaal yuniksinte aadyakaala pathipp instaal cheyyukayum pakaram upayogikkukayum cheythu. poppu-11-nte aaa pathipp unix assembleril ezhuthukayum coode vardhichu oru intermediat baitt kodilekk samaharikkukayum cheythu. 1976ll poortthiyaaya aaa thuramukham athinte falamaayi poppu-11 pala sthalangalilum adhyaapanathinaayi upayogichu. athinte adhyapana pravartthanatthe pinthunaykkunnathinaayi poppu-2-nte vaakyaghadana savisheshathakalil palathum parishkkarichu, udha.jii. function maattisthaapikkuka... nirvvachikkuka ennathukondu avasanippikkuka... poppu-2 leeii ellah loopukalkkum closs upayogikkunathinupakaram clossing brackettukalumaayi poruthappedunna vidhathil vividatharam looping nirmmithikal end define cheyyukayum cherkkukayum cheyyuka. poppu-11 listt gadanakalkkaayi oru paatten matcher avatharippichu, ithu iai prograaming padippikkunnathu valare eluppamaakkunnu.
1980 oode poppu-11 oru vaaks-<aii. dii. 1> computerilekku steevu hardy joonn gibson chernnu portt cheyyukayum taamasiyaathe oru poornna incremental compiler (intermediat kodinu pakaram mesheen-coode nirmmikkunnu) upayogichu maattisthaapikkukayum cheythu. compilerinteyum rann timil athinte ellah subrutineukaludeyum nilanilpp maakrokalil saadhyamaayathinekkaal valare sambannamaaya bhasha vipuleekaranangale pinthunaykkaan saadhyamaakki, thalphalamaayi poppu-11 (steevu hardy, kriss melish, joonn gibson ennivar) prologinte staanderd vaakyaghadana upayogichu prologue nadappakkaan upayogichu, samyojitha samvidaanam poplogue ennariyappettu, athil kooman lisp staanderd emm. ell. yum pinneedu chertthu. eee pathipp pinneedu vividha mesheenukalilekkum operating sistangalilekkum portt cheyyappedukayum athinte falamaayi poppu-11 poppu-2-nte prabalamaaya bhashayaayi maarukayum athu ippozhum poplogue sisttathil labhyamavukayum cheythu.
1986ll oru puthiya iai kambani cognitive applications limittad.samyojitha graphics upayogichu apple mack computerukalil pravartthikkunna alphapop enna poppu-11nte oru vakabhedam nirmmikkaan sussex sarvakalaashaalayile amgangalumaayi sahakarichu. ithu niravadhi vaanijya padhathikalkkum niravadhi sarvakalaashaalakalil iai prograaming padippikkunnathinum upayogichu. sii yude aadyakaala bhashayil ithu nadappilaakkiyathum oru idiosynchratic compiler upayogichathum mack operating sisttathinte puthiya pathippukalilekku paripalikkunnathum upgraded cheiyunnathum valare budhimuttaakki. ithinupurame, uyarnna adrus bittukal vasthukkalude tharatthe soochippikkunnathinu "tagg bittukalayi" upayogichathinaal alphapop "32-bitt clean" aayirunnilla, ithu pinneedulla maakkintoshukalil 8 embic mukalilulla memory upayogavumaayi poruthappedunnilla.

