LPC yra kompiuterių programavimo kalba, daugiausia naudojama žaidimuose, tačiau ji taip pat turi programų kituose nustatymuose, bene labiausiai kaip Pike kalbos pagrindas. Jį sukūrė švedų kompiuterių mokslininkas Larsas Pensjö, ir iš čia kilusi pavadinimo dalis „LP“. „C“ kilęs iš C kalbos, iš kurios jis buvo kilęs. C yra viena iš labiausiai paplitusių programavimo kalbų, o jos gale sukurta daug įvairių platformų ir programų. Pensjö sukūrė savo programą, bent iš dalies, siekdamas efektyviau kurti objektus ir brėžinius kelių naudotojų požemiuose (MUD), kurie yra kelių internetinių žaidimų platformų aspektas. Viena iš svarbiausių šios kalbos savybių yra ta, kad ji leidžia žaidėjams įvesti komandas su daugiau ar mažiau natūralia formuluote, o daugybė skirtingų žaidimų platformų naudoja pagrindinę jos sintaksę ir specifikacijas. Nors jis dažniausiai yra populiariausias žaidimų bendruomenėje, jis taip pat buvo naudojamas kitur atvirojo kodo kodavimo pasaulyje.
Pradžia ir pradinis tikslas
MUD yra populiarios kelių skirtingų pagrindinių internetinių žaidimų platformų dalys. Žaidėjai iš bet kurios pasaulio vietos – bet kur, kur yra interneto ryšys, tai yra – gali susitikti, dažniausiai kaip avataras, ir keistis informacija, kovoti ar kurti objektus vieni su kitais naudodami užkoduotus valdiklius. Kiekvienam, žaidžiančiam tokį kelių naudotojų žaidimą, kaip šis, norint įsitraukti, paprastai reikia bent jau išmanyti kodavimą ir komandų sintaksę. Paprastesnis C pagrįstas formatas pirmiausia buvo sukurtas tam, kad ta žaidimo dalis būtų lengviau pasiekiama.
Pagrindinė sintaksė
Pagrindinė bet kurios kodavimo kalbos sintaksė yra sistema, naudojama leksiniams ir sintaksiniams analizatoriams generuoti. Paprasčiau tariant, tai yra veržlės ir varžtai, nurodantys, kaip kodavimas vyksta, yra parašytas ir priimamas kompiuterių. Daugeliu pagrindinių atžvilgių LPC atspindi kalbą C, tačiau joje nėra stipriai įvestų kintamųjų. Tai leidžia jį naudoti kuriant objektus, o ne elementus. Pavyzdžiui, požemio aplinkoje kambariai, ginklai, monstrai ir šarvai yra objektai. Programavimo kalba leidžia vartotojams kurti, keisti, ištrinti ir atkurti šiuos objektus beveik bet kokiu pasirinktu būdu.
Programavimo specifikacijos
Apskritai kalba palaiko daugybę skirtingų programavimo tipų, įskaitant procedūrinius, modulinius, struktūrinius, į objektus orientuotus, apibrėžtus duomenis ir silpnus kintamuosius, todėl ji yra išsami ir visa apimanti kompiuterių kalba. Vienas iš pagrindinių Pensjö dizaino bruožų yra santykinis atsparumas įprastoms turinio kūrėjų programavimo klaidoms. Bendras serverio stabilumas beveik visada pagerinamas naudojant šią kalbą, todėl nauji programuotojai gali sutelkti dėmesį į dalykų kūrimo užduotį, o ne būti vartojami su pačia programavimo logika.
Brėžinių vaidmuo
Nors LPC beveik viskas yra objektas, jame nenaudojama klasių sąvoka. Vietoj to, šio parametro objektas yra brėžinio objektas arba projekto objekto klonas; nors techniškai skiriasi nuo klasės, šie brėžiniai dažnai gali būti traktuojami taip pat. Šia kalba galima pasiekti visus atributus ir metodus egzempliorių ir klasių lygiais, o tai ne visada būna kitose objektinėse kalbose, leidžiančiose juos apriboti klase ir egzemplioriais.
Objektų ryšys su centrine byla
LPC kode bendri objektai apibrėžiami centralizuotuose failuose. Kai kuriami skirtingi žaidimų „kambariai“, jie paveldi objektus iš centrinio failo, todėl to failo pakeitimas taip pat turės įtakos kiekvienai kodo daliai, kurioje tas objektas naudojamas. Tai neleidžia koduoti kiekvieno iš šių objektų į kiekvieną vietą, todėl kodą lengviau rašyti ir prižiūrėti. Ši centralizacija nėra unikali, bet yra dalis to, kas leidžia kurti sudėtingus žaidimus naudojant šią programavimo kalbą.
Lankstumas ir kiti panaudojimai
Dėl viso kodo lankstumo jis buvo naudojamas įvairiems tikslams, išskyrus MUD žaidimo kūrimą. Platus panaudojimas apima Pike programavimo kalbos kūrimą, kuri beveik visiškai pagrįsta Pensjö modeliu. „Pike“ plačiai naudojama daugialypės terpės programoms, sistemos administravimo užduotims ir interneto serveriams.