start on a lisp-based package for RNGs
[CommonLispStat.git] / README
blob3b81fbac04cd739ea0fda50886ec10ba39f71078
1 -*- mode: text -*-
4 For a fast start: 
6 Make the shared library liblispstat with an ANSI C compiler (only gcc
7 tested at this point):
9        cd lib
10        make
12 run a common lisp (SBCL, CMUCL, CLISP) starting in the current
13 directory.   We also assume that a recent version of CFFI has been
14 installed and is ASDF-loadable.  Probably should include a local copy
15 just in case.
17 Step through ls-demo.lisp for a range of examples that will become
18 part of the test suite.
20     
22 So basically ..   
23   
24 1. change directory into the CommonLispStat working directory.
25 2. start your lisp
26 3. follow the commands in the ls-demo.lisp file, i.e.
28    a. (load "init.lisp")
29    b. (in-package :ls-user)
30    c. (normal-rand 20)
31    d. (setf mytest (normal-rand 20))
34    and see if they work (basic CFFI functionality for external C
35    library, LIFT package for unit-testing framework to ensure run time
36    stability).
37   
38 4. Tell me ( <blindglobe@gmail.com> ) if there is any thing wrong (or
39    if anything happens to work.
41 CMUCL and SBCL work justfine at this stage.
43 CLISP is finicky regarding the problems that we have with CFFI
44 conversation.  In particular that we can not really do typing that we
45 need to take care of.
49 ===========
51 See Doc/README* for history and design considerations
52 See Doc/INSTALL for getting this to work and run
54 ===========
58 Working on this with git:
62     git clone git://repo.or.cz/CommonLispStat.git 
65 will pull the whole repository, and create a "master" branch to work
66 on.  Probably, you don't want to use the master branch, but more to
67 use a topic-centric branch, so you might:
69     git checkout -b myTopicBranch
71 and then work on myTopicBranch, pulling back to the master branch when
72 needed by
76     git checkout master
77     git pull . myTopicBranch
80 of course, perhaps you want to contribute to the mob branch.   For
81 that, after cloning the repository as above, you would:
84     git checkout -b mob remotes/origin/mob
86 <work, work, work... through a cycle of
88          <edit>
89          git add <files just edited>
90          git commit -m "what I just did"
92  ad-nauseum.  When ready to commit, then just >
94          git push git+ssh://mob@repo.or.cz/srv/git/CommonLispStat.git mob:mob
98 and it'll be put on the mob branch, as a proposal for merging.
100 Another approach would be to pull from the topic branch into the mob
101 branch before uploading.   Will work on a formal example soon.
104 (but the basic principle is that instead of the edit cycle on mob, do
105 something like:
107   git checkout mob
108   git pull . myTopicBranch
109   git push git+ssh://mob@repo.or.cz/srv/git/CommonLispStat.git mob:mob