LPC programlama dili, başlangıçta bilgisayar oyunu gelişimi için tasarlanmış, nesne yönelimli bir bilgisayar dilidir. LPC kısaltması, yaratıcısı Lars Pensjö ve bunun türetildiği programlama dili olan C - dolayısıyla LPC anlamına gelir. İsveçli bir programcı olan Pensjö, birçok UNIX sistemi altındaki Çok Kullanıcılı Zindan ortamı olan LP-MUD için programlama dilini geliştirdi. ÇAM, oyuncuların oyundakilerle biraz doğal dilde komutlar yazarak etkileşime girmesine izin verir.
Temel sözdizimi, LPC'nin sözcüksel ve sözdizimsel çözümleyicilerini oluşturmak için kullanılan sistem, C diline karşılık gelir, ancak LPC'nin güçlü bir şekilde yazılan değişkenleri yoktur. Bu, LPC'nin öğeler yerine nesneler oluşturmak için kullanılmasına izin verir. Zindan ortamı için odalar, silahlar, canavarlar ve zırh nesnelerdir. LPC programlama dili, kullanıcıların bu nesneleri neredeyse seçtikleri herhangi bir şekilde oluşturmalarını, değiştirmelerini, silmelerini ve çoğaltmalarını sağlar.
LPC, prosedürel programlama, modüler programlama, yapısal programlama, nesne yönelimli programlama, tanımlanmış veri tipleriyle programlama ve zayıf değişken tipli programlamayı destekleyerek, kapsamlı ve her şeyi kapsayan bir bilgisayar dili yapar. Pensjö'nün LPC tasarımının önemli bir özelliği, içerik üreticileri tarafından yaygın olan programlama hatalarına karşı geçirimsizliğidir. Bir sunucunun genel kararlılığı artırılmıştır, yeni programcıların programlama mantığı ile birlikte tüketilmek yerine bir şeyler inşa etme görevine odaklanmalarına olanak sağlar.
Neredeyse her şey LPC'de bir nesne olmasına rağmen, sınıf kavramını kullanmaz. Bunun yerine, LPC'deki bir nesne bir plan nesnesi veya bir plan nesnesinin bir klonudur; Her ne kadar teknik olarak bir sınıftan farklı olsa da, bu planlar sıklıkla aynı şekilde ele alınabilir. Tüm nitelik ve yöntemlere, sınıf ve örnekle sınırlı olmalarını sağlayan diğer nesne yönelimli dillerden farklı olan LPC'deki örnek ve sınıf düzeylerinde erişilebilir.
LPC kodunda, ortak nesneler merkezi dosyalarda tanımlanır. Farklı oyunlar "odalar" yaratıldıkça, nesneleri merkezi dosyadan devralırlar; Bu dosyada yapılan değişiklik, o nesnenin kullanıldığı her kod parçasını etkiler. Bu, bu nesnelerin her birini kullanılan her yere kodlama gereksinimini ortadan kaldırarak kodun yazılmasını ve bakımını kolaylaştırır. Bu merkezileştirme, LPC kodlamasına özgü değildir, ancak bu programlama diliyle karmaşık oyunlar oluşturmayı mümkün kılan şeyin bir parçasıdır.
LPC'nin esnekliği, MUD oyununun yaratılmasından başka çeşitli amaçlarla kullanılmasına neden olmuştur. Aynı zamanda Pike programlama diline doğru evrimine yol açmıştır. Pike programlama dili, multimedya uygulamaları, sistem yönetimi görevleri ve İnternet sunucuları için kullanılır.


