New: You can build a virtual machine with everything LSW needs using docker. Short version: Clone the repository and make the image. ``` git clone https://github.com/alanruttenberg/lsw2-virtual-machine.git cd lsw2-virtual-machine make docker-lsw ``` Run LSW2 ``` docker run -it lsw/lisp ``` More documentation at https://github.com/alanruttenberg/lsw2-virtual-machine ---- In the below, <lsw2 trunk> is the checked out trunk directory for lsw2 <repositories> is the directory where you keep checked out working copies I assume you are using emacs. These instructions were only tested on OSX and are intended for developers familiar with JAVA, ABCL. As of 2019-10-11 they may be out of date due to upgrade in versions of MacOSX. To get going: - Set up ABCL: -- Have Java 8 -- Get a recent Armed Bear Common Lisp, git clone http://github.com/alanruttenberg/abcl Note: LSW currently assumes that abcl and lsw2 ("<lsw2 trunk>" below) directories have the same parent directory. Some people put them both in ~ to satisfy that requirement. -- Build ABCL "all in one" jar by running: ant abcl-aio.jar in the abcl directory Check out the current version of slime from github cd <repositories> git clone https://github.com/alanruttenberg/slime.git Then add to your .emacs (add-to-list 'load-path "<repositories>/slime") (set-language-environment "UTF-8") (setq slime-net-coding-system 'utf-8-unix) (require 'slime-autoloads) (setq slime-contribs '(slime-repl slime-fancy slime-asdf)) (setq slime-lisp-implementations '((lsw ("<lsw2 trunk>/bin/lsw") :init slime-init-command) (abcl ("<lsw2 trunk>/bin/abcl --noinit") :init slime-init-command))) The slime contribs settings are documented at http://common-lisp.net/project/slime/doc/html/Loading-Contribs.html To start LSW, start emacs and then M-x slime <ret> You should be placed into a buffer where you can execute code. To verify the kit's working do (show-classtree "http://purl.obolibrary.org/obo/bfo.owl") You should get a window with an interactive treemap explorer to wander around the BFO ontology. Click on one of the labels. To develop, you'll probably want to read about slime: http://common-lisp.net/project/slime/doc/html/index.html, which is your emacs-based IDE. Lisp code I author is licensed with the 3 clause BSD license. https://opensource.org/licenses/BSD-3-Clause License information for other's code used in this project is documented in that code.
alanruttenberg/lsw2
OWL and Semantic Web toolkit for Common Lisp, used for construction and reasoning over ontologies and ontology-structured data
JavaScript