LPC Basics Written by Descartes of Borg 23 april 1993



This manual, how to use it, and its terms

I have seen a lot of requests lately on USENET for LPC manuals. In addition, the immortals on my mud have been telling how good the building documentation of Nightmare is, but that there was just no adequate explanation of the LPC programming language. So I decided to try my hand at writing a manual. Some things you should keep in mind. LPC is a very easy programming language to learn, and it has real value in that place most of us know as the real world. I began playing muds in 1991, and in the space of a month created an unimpressive area and musician's guild on the original Bates College MUD called Orlith. After that, I moved to Los Angeles for a year and had no contact with mudding or computers. In June of 1992, I was back on the internet and a wizard of Igor. In September of 1992 I began coding the Nightmare mudlib for our use, and then later decided to distribute it due to there not being any mudlibs for MudOS at the time that a person could just throw up a running mud with (now, that of course is not the case :)). So, I have been doing serious coding for less than a year. As a Philosophy major in a world of Computer Science majors, I just want to make clear that it is not at all required that you have ever done anything with your computer than log into a mud in order for you to really come to understand LPC coding. This manual makes the following assumptions: Someone has taught you basic UNIX commands like ls, cd, mkdir, mv, rm, etc. You know how to enter your mud's editor and write a file. No other assumptions are made. If you know C, you are handicapped in that LPC looks a lot like C, but it is not C. Your preconceptions about modular programming development will be a hinderence you will have to overcome. If you have never heard of the C programming language (like me in May of 1991), then you are only missing an understanding of the simple constructs of C like the flow of program execution and logical operators and such. So a C guru has no real advantage over you, since what they know from C which is applicable to LPC is easy to pick up. The stuff they know about C which makes them a guru is irrelevant to LPC.

The chapters of this manual are meant to be read in order. Starting with the introduction, going sequentially through the chapter numbers as ordered in the contents file. Each chapter begins with a paragraph or two explaining what you should have come to understand by that point in your studies. After those introductory paragraphs, the chapter then begins to discuss its subject matter in nauseating detail. At the end of the chapter is a briefly worded summary of what you should understand from that chapter if I have been successful. Following that may or may not be some sidenotes relevant to the subject at hand, but not necessary to its understanding.

If at any time you get to a chapter intro, and you have read the preceeding chapters thoroughly and you do not understand what it says you should understand by that point, please mail me! Clearly, I have failed at that point and I need to know where it is I have gone wrong so I can revise it properly. Similarly, if you do not understand what the chapter summary says you should, please mail me. If your mumud is on the MudOS intermud system, mail descartes@nightmare. Otherwise mail borg@hebron.connected.com.

Some basic terms this manual uses:

Chapter 1

Good Luck! George Reese (Descartes of Borg) 12 july 1993 borg@hebron.connected.com