LPC is a very old bytecode language, invented around 1990, specifically to implement multi user virtual environments on the internet. It is not the first of its kind, there have been MUDs and MOOs around before, but it was the first that used the stack machine principle, these days also known as byte code.

LPC can still be a very efficient choice for network server applications. Another very special feature about LPC is it's natural integration of object orientation without clumsy class syntax. Since every class is by definition in its own file, calling methods feels like "calling a function in an other file," thus tremendously intuitive.

In the mid 90s there was a reimplementation of LPC which now goes by the name of pike. This language has been quite successful with the web servers roxen and caudium, but at the same time developed even into the user desktop with Gtk support. So today, if you have no specific reason to work with LPC, give pike a shot.

LPC language documentation as provided with LDMUD online and for download. See also about:LPC. Für deutschsprachige: Geschichte der Programmiersprache LPC.

This technology is being used by hundreds of MUDs out there, but also for the psyced implementation of the Protocol for SYnchronous Conferencing. There even exists an integration solution to plug PSYC into a MUD, as a sort of next generation InterMUD. The LPC driver isn't very big and doesn't come with a huge library, so it's not like you're installing another large language to your system. It comes with bindings for a couple of important C libraries, and that's it. You can use Eclipse for LPC development.

psyclpc is available from the psyced files area but lately we have become lazy making new snapshots. It is more practical to update a git clone git://git.psyced.org/git/psyclpc. psyclpc is an LDMud with psyced patches and a libpsyc binding for native processing of PSYC. The installation script is tuned to use that, but if you tweak it, you might also be able to use the Lars Düning distribution of LDMUD, a derivate of amylaar LPMUD.