From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aaron Sloman To: gsl-discuss@sources.redhat.com Subject: interfacing GSL Pop11/Poplog Date: Wed, 19 Dec 2001 13:20:00 -0000 Message-id: <200106021831.TAA17675@preston.cs.bham.ac.uk> X-SW-Source: 2001/msg00204.html I wrote to the GSL Authors about a proposal to interface Pop11 (the core language of Poplog, described below) to GSL, and Mark Galassi suggested I post to this email list. This message is mainly for information but I'll welcome comments or suggestions and references to any similar work in progress. On the news group comp.lang.pop (linked to email list pop-forum@cs.bham.ac.uk) I recently proposed that it would be a good idea to interface pop-11 (the core language of Poplog) to GSL, both as a way of enhancing Pop-11 and also as a way of making GSL facilities available in a rich interactive development environment designed for AI research and teaching. This has stirred up some interest and it seems likely that some Poplog users will follow up the suggestion. All the licensing conditions of GSL will be adhered to. Does anyone know of any similar effort to link GSL to an interactive AI language, e.g. Lisp? It would be very nice if something comparable in power to Matlab and as easy to use for interactive development, could be available completely free of charge with full sources. I am not an expert in scientific/numerical computation but my impression is that this could be achieved by making GSL procedures easy to invoke from Pop11 (as has alrady been done for other things written in C, e.g. a large number of X facilities, vision utilities, etc.). For anyone who has never heard of Poplog or Pop-11, information is available here http://www.cs.bham.ac.uk/research/poplog/poplog.info.html Summary: POPLOG, originally developed for teaching and research at Sussex university started being sold commercially around 1982. Until recently it was an expensive commercial product, sold by ISL (see www.isl.co.uk who used it for their very successful Clementine prodct) but now it is is available free, with full sources, for a number of unix/linux platforms and VMS, with a licence analogous to XFree86, at http://www.cs.bham.ac.uk/research/poplog/freepoplog.html It is a multi-language software development environment providing incremental compilers for a number of interactive programming languages, notably: Pop-11 The core language of Poplog, derived from Pop2, the Edinburgh AI language developed in the 60s and 70s and extended at Sussex University in the 80s and 90s. Incrementally compiled interactive language, very similar in power to Common Lisp but has a more familiar syntax and is preferred by some for AI and other applications although it has no interpreter. Relevant to GSL: pop-11 already supports integers, bigintegers, single and double decimals (floats), ratios, and complex numbers, as described in http://www.cs.bham.ac.uk/research/poplog/doc/popref/numbers Prolog Common Lisp Standard ML (Other languages added by individuals but not yet part of poplog, e.g. Scheme implemented by Robin Popplestone at umass Amherst) Apart from Pop-11, these languages are provided as optional additions, usually in the form of `saved images' ie. with the extensions precompiled. Any package made available in Pop-11 can then be invoked from the other languages as they all have interfaces to Pop-11. Poplog has a rich interface to the X window system and a powerful programmable editor Ved (written in Pop-11) which can run in the same process as poplog - partly, but not entirely similar to Emacs. Poplog can also be used with Emacs, with a very slight loss in functionality. There's an Emacs package for poplog at the poplog site. There is a windows/NT version of Poplog but without the graphics (unless an expensive X emulation is used.) There are various extensions to Poplog/Pop-11 available at the free poplog site, including graphical tools, an agent toolkit, a library with tools and teaching materials for work on vision, and various others. The proposal is that a "popgsl" package could also become available with documentation and interfaces to the GSL facilities including hand-coded or automatically generated wrappers. This is analogous to the way Pop-11 currently has access to all the X facilities, i.e. through Pop-11 procedures which invoke the C procedures. People using this popgsl package would probably obtain GSL separately, though there might be some benefit in providing pre-compiled saved images for some users (or making a stable version of GSL available at the Poplog site). I have no idea how much work this will involve! Obviously it could be done in stages. Anyhow, if you have any comments, suggestions, warnings, or pointers to similar work linking GSL to an AI or other interactive language, please let me know, and I'll pass them on to others who are interested in contributing to this. Or feel free to post comments to comp.lang.pop Incidentally if anyone is interested to know more you can get a feel for Pop-11 from my (incomplete) online primer: http://www.cs.bham.ac.uk/research/poplog/primer/ also available as http://www.cs.bham.ac.uk/research/poplog/pophtmlprimer.tar.gz 292916 bytes Best wishes. Aaron === Aaron Sloman, ( http://www.cs.bham.ac.uk/~axs/ ) Professor of Artificial Intelligence and Cognitive Science School of Computer Science, The University of Birmingham, B15 2TT, UK EMAIL A.Sloman@cs.bham.ac.uk PAPERS: http://www.cs.bham.ac.uk/research/cogaff/ TOOLS: http://www.cs.bham.ac.uk/research/poplog/freepoplog.html