Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!ucsd!ucbvax!vax.oxford.ac.uk!POPX From: POPX@vax.oxford.ac.uk (Jocelyn Paine) Newsgroups: comp.ai Subject: Re: Repository of AI source code Message-ID: <9012131707.AA00863@ucbvax.Berkeley.EDU> Date: 13 Dec 90 16:42:00 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 125 Newsgroups: comp.ai Subject: Re: Repository of AI source code Summary: Expires: References: <11331@pt.cs.cmu.edu> Sender: Reply-To: popx@vax.ox.ac.uk (Jocelyn Paine) Followup-To: Distribution: Organization: Experimental Psychology, Oxford University, GB Keywords: In article <11331@pt.cs.cmu.edu> mnr@daisy.learning.cs.cmu.edu (Marc Ringuette) writes: >It would be extremely useful to have access to an archive of source code >for common AI problems. Such an archive could contain simple planners, >parsers, frame-based representations, and commonly used algorithms. This >would encourage sharing and discourage reinventing the wheel. > In 1987 I set up such a library for Prolog, for the very reasons you describe. I'd be willing to extend it to cover AI software in general. In fact, why don't I decide to do so now? So here's what I have to offer: ``I teach AI to psychology undergraduates, using Pop-11 and Prolog (the course used to be entirely Prolog, but I'm moving towards Pop-11). During the course, I talk about topics like scripts, mathematical creativity, planning, natural language analysis, and expert systems; I exemplify them by mentioning well-known programs like GPS, Sam, and AM. I hope before too long (May 1991) to integrate these into a computer-simulated animal. I would like my students to be able to run existing AI programs, from GPS to Mycin and up, and to investigate their mechanism and limitations. For students to incorporate into their own programs, I'd also like to provide a library of tools such as chart parsers, inference engines, search routines, and planners. Unfortunately, published descriptions of the famous programs give much less information than is necessary to re-implement them (it would be easier to re-implement cold fusion than the average AI program). As for the tools: some are reproduced in textbooks. But the published code has to be kept small to satisfy publishers, and it is often not available in machine-readable form. I therefore decided in 1987 to start up a library of Prolog code. I shall now extend it to cover any AI language in which people want to send programs. Sending contributions. ---------------------- Please E-mail them to user POPX at Janet address UK.AC.OX.VAX (the Vax-Cluster at Oxford University Computing Service). Only send text, not object or binary files (I will not accept programs in any form other than source text). If a file occupies more than a megabyte, please E-mail me about it first, but don't send the big file itself until I reply to request it. This will avoid the problem we sometimes have where our mailer rejects big files because there isn't room for them. I accept all entries on the understanding that they will be distributed to anyone who asks for them. I intend that the contents of the library be treated in the same way as proofs in the maths literature, and algorithms in computer science textbooks - publicly available ideas which everyone can experiment with, criticise, and improve. I'll try to put entries into the library within two weeks of arrival, and to test those entries for which I have a suitable language implementation. Catalogue. ---------- I keep a catalogue of entries. It contains for each entry: the name and geographical address of the entry's contributor (to prevent contributors receiving unwanted E-mail, I don't include their E-mail addresses unless they ask me to); a description of the entry, usually with examples of use; and an approximate size in kilobytes (to help those whose mailers can't receive large files easily). For those entries which I can run, I also include my evaluations of ease of use, portability, standardness, and documentation. Quality of entries. ------------------- Any contribution may be useful to someone out there, so I'll accept anything. I'm not just looking for elegant code and declarative respectability. However, it would be nice if entries were to be adequately documented (with literature references if appropriate, plus respectable documentation for both the users and the programmers). Requesting entries. ------------------- It prefer to send by E-mail, and can do so into any network that's connected cost-free to the UK academic network Janet. I can also send files as DOS text on IBM-PC discs, or on VAX tapes. In this case, I will ask for you to send either media, or payment for media, in advance. We hope eventually to get a mail server running. You may request the catalogue, or a particular entry in it, or (for example) "all the expert system shells written in LISP you have". I'll try to answer all requests within two weeks. If you get no reply, please send a message by paper mail to my address. Give full details of where your E-mail was sent from, the time, etc.; this may help us trace lost messages. Jocelyn Paine, Experimental Psychology, South Parks Road, Oxford OX1 3UD. POPX @ UK.AC.OX.VAX ''