Wiki

Clone wiki

lispdev / Developer_notes

Developer Notes

At this point lispdev works only with sbcl 1.0.19 and included slime. The design is modular so it should not be too hard to change to other lisp implementations and newer versions of slime. This will be done before releasing lispdev to users.

Setting up the projects

  1. Make sure that you have Java 1.6 installed and that your Eclipse is running under Java 1.6.
  2. Clone the repository
  3. Import all projects from the repository into an Eclipse's workspace
  4. Import java formatting file sk-java-format.xml file (available in the repository) to make formatting to conform to the style that I have used
  5. Unpack lisp-sbcl1.0.19-win32.zip file in any place you want. The file contains the following folders: lisp-extensions, sbcl and slime. If your development system is not Win32, you will need to obtain sbcl 1.0.19 for you system and put it into any folder. You might still have problems due to incompatibilities of your system with included slime.
  6. Create Run Configuration by double clicking Eclipse Application in "Run Configurations" wizard and call it lispdev.
  7. Start lispdev Run Configuration.
  8. In new Eclipse window, switch to Lisp perspective.
  9. Go to Run Configurations and create new Local Lisp configuration and call it sbcl:
    1. Make sure that on main tab you specify complete path of lisp executable and folder where swank-loader.lisp is located. Set port to 4005 and make sure that Explicitly start repl thread is unchecked.
    2. On Environment tab create new environment variable SBCL_HOME and set its value to folder where lisp executable is located.
    3. Select Apply and Close.
  10. Next use new project wizard to create new lisp project. Uncheck "Use lisp-unit testing framework", since it is not included with lispdev at this moment.
  11. Once the project is created, select it and from context menu select "Load In -> sbcl". This should start lisp, load swank, connect lispdev to swank, start REPL, and, finally, load the project.

Running tests

TODO

How the code is structured

TODO

Updated