![]() |
|
News Overview Competition Language Gamemaster Gameserver Resources |
CMU Common Lisp Reference Player Source:This is a simple port of the MCL reference player to CMU's implementation of Common Lisp, CMUCL. player-cmucl.tar. This archive contains 5 Lisp source files:
This code has been tested and runs in CMUCL on an x86 Linux machine. Slight changes to the code were necessary to make it run in CMUCL, and a number of helper libraries must be loaded to provide Allegro Common Lisp compatibility (which made the port much easier). A "proper" port would have required taking out all MCL-specific network and process-control function calls, and replacing them with the corresponding CMUCL calls. Additional Files:The above files alone are not sufficient to get the reference player running! You must also have a number of Lisp libraries installed on your system that provide the ACL compatibility.
Installing/Using the Lisp Libraries:Not much is required to install the libraries. With either the source or binary packages, you will need to put them in a directory somewhere, and set your .cmucl-init.lisp file to point to those libraries. If you look at the sample .cmucl-init.lisp file, you can see how I set things up. Make sure that you load ASDF before the .asd files. If you are using the source files, you should compile them. Most of them provide instructions on how to do that, so I'll leave it up to you if you take the source packages. And finally, note what loader.lisp does before it loads the main GGP player code. Namely, it unlocks the default package set, so that certain global names can be replaced; also, it loads up acl-compat using ASDF's loader, which then proceeds to load up all dependencies. If you have compiled versions it will load those automatically; else, I believe it will compile the source files on-the-fly (but not store the compiled version). Contact:The Linux port was provided by David Haley (dhaley@cs.stanford.edu). This code is provided for convenience and the MCL code is the 'reference' reference player (as it were), and only limited support is available for the Linux code. That being said, any feedback or especially bug reports would be most appreciated; please send them to either David or info@games.stanford.edu. |