diff --git a/changelog b/changelog index 227a537..03fc2c8 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,5 @@ +20141201 tpd src/axiom-website/patches.html 20141201.01.tpd.patch +20141201 tpd readme: update the readme file to remove outdated comments 20141130 xyy src/axiom-website/patches.html 20141130.01.xyy.patch 20141130 xyy buglist: bug 7266: integration failure for 1/(sin(x)^4+1) 20141130 xyy readme: add Yanyang Xiao to credits diff --git a/patch b/patch index 5debcab..3be4d9a 100644 --- a/patch +++ b/patch @@ -1,9 +1,2 @@ -buglist: bug 7266: integration failure for 1/(sin(x)^4+1) +readme: update the readme file to remove outdated comments -f:=1/(sin(x)^4+1) -a:=integrate(f,x) -b:=differentiate(a,x,1) -draw(b,x=0..4) -draw(f,x=0..4) - -reported by Yanyang Xiao 30 Nov 2014 diff --git a/readme b/readme index 8e0cd54..1824994 100644 --- a/readme +++ b/readme @@ -12,8 +12,7 @@ You've unpacked the Axiom source code to some directory. In this document we'll call that directory /home/me/axiom. Note that the path -cannot contain uppercase characters or spaces. This is a porting -limitation as not all systems can handle dual case characters. +cannot contain spaces. ======================================================================= ================= MAKING AXIOM ======================================== @@ -34,8 +33,6 @@ export AXIOM=/home/me/axiom/mnt/SYSNAME << which axiom to build export PATH=$AXIOM/bin:$PATH make << build the system -A system build takes 2+ hours at 2Ghz machine. - A recent cause of likely build failures is SELinux. See the faq file for possible solutions. @@ -68,7 +65,7 @@ System" Springer-Verlag, NY, 1992, ISBN 0-387-97855-0 The book is automatically built as part of the make and lives in: -(yourpath)/axiom/mnt/linux/doc/book.dvi +(yourpath)/axiom/mnt/(sysname)/doc/bookvol0.pdf In general every directory will contain a Makefile.dvi file. These files document facts about how Axiom is built. @@ -80,7 +77,6 @@ topic has already been archived on the axiom-legal and axiom-developer mailing lists. The mail archives are available at the Axiom website: http://savannah.gnu.org/projects/axiom - Questions and comments should be sent to: axiom-developer@nongnu.org @@ -142,15 +138,15 @@ hopefully, become cleaner as more thought is applied. Scratchpad changed continuously while it was being used for research and we expect Axiom to do the same. -The language (spad and/or aldor) is designed to let you write -algorithms that are very close to the mathematics. However, the -algorithms as presented in the current system have never been shown or -proven (an important distinction) to be correct. It is vital that we -undertake the huge effort of verifying and validating the code. How -else can we trust the results and of what use is a system this complex -without trust? Somehow we have to extend the system to integrate -program proof techniques. That is, we have to make computational -mathematics hold to the same standard as the rest of mathematics. +The language (spad) is designed to let you write algorithms that are +very close to the mathematics. However, the algorithms as presented in +the current system have never been shown or proven (an important +distinction) to be correct. It is vital that we undertake the huge +effort of verifying and validating the code. How else can we trust the +results and of what use is a system this complex without trust? +Somehow we have to extend the system to integrate program proof +techniques. That is, we have to make computational mathematics hold +to the same standard as the rest of mathematics. All of which seems to integrate into a requirement for better documentation. The key change which developers of Axiom will find with @@ -342,63 +338,6 @@ mathematicians who hold you to high standards. Because if you can't explain it clearly maybe YOU don't understand it or it isn't as clear as you think it is. -Tools, tools, tools - -noweb, The Literate Programming Tool - -Literate programs are a combination of documentation and source code -kept in a pamphlet file. There have to be tools to deconstruct the -pamphlet into useable components. At the current time we are using a -system called noweb that was developed by Norman Ramsey. The source -code for noweb is in the zips directory. You can uncompress it, -compile it, and install it into the Axiom executable directory by -typing: - - make noweb - -By default, if the noweb directory does not exist it will -be built as needed simply typing: - - make - -Every directory contains a Makefile.pamphlet and typing: - - document Makefile - -will expand into the Makefile for that directory (note that we skip -the ``.pamphlet'' suffix). Thus you should never modify the Makefile -directly (nor any source file) as the document command will overwrite -the sources. The Makefile has four primary responsibilities. It needs -to explain everything about this directory and the files under its -control. It needs to set up target directories so the Makefiles in -the subdirectories can expect them. It needs to build all of the files -in the current directory into their target directories. It needs to -set up the environment and walk the subtree of directories beneath it -so they can do their job. - -The document command - -The document has the syntax: - - document [ -o redirect ] pamphlet - -where the redirect file can be any name where the output can go. The -pamphlet file is the name of the file without the .pamphlet -suffix. The document command supplies this. Thus to document -Makefile.pamphlet type: - - document Makefile - -ADVI, The DVI viewer - -The advi software is the result of the Active-DVI project. It -is intended to expand the abilities found in DVI files. It has -been adopted as the standard Axiom DVI viewer. - -The source code is in the zips directory. - -Future Tool Directions - Lets imagine that we'd like to receive a pamphlet file from a colleague. It contains a new theory and spiffy new algorithm. We'd like to be able to put the pamphlet file into the system and have @@ -430,9 +369,7 @@ look at the essential directories first. $AXIOM license lsp - CCL GCL - CMUCL src include lib @@ -510,24 +447,7 @@ individual package developers if problems arise. The lsp directory -Axiom lives on top of Common Lisp. There are 3 distributions of Common -Lisp that have had Axiom builds in the past. Axiom was initially built -on the CMUCL (Carnegie Mellon University Common Lisp) distribution but -was quickly moved to AKCL (Austin Kyoto Common Lisp), now GCL (GNU -Common Lisp). When Axiom became a commercial product it was -distributed on CCL (Codemist Common Lisp). We plan to build on each -of these three distributions for several reasons. First, it gives us -cleaner, more vanilla code as we get feedback from each -implementation. Second, it gives us better facilities on different -platforms. GCL, for example, has an MPI (Message Passing Interface) -extension for parallel processing. Third, it gives us portability (CCL -is byte-coded and runs everywhere). Fourth, it gives us performance -(CMUCL is known for its optimizations, GCL compiles to optimized C and -has special declarations). - -The lsp directory splits into 3 subdirectories, the CCL, GCL and CMUCL -directories. Each of these builds an executable into the final shipped -image (depending on which lisp is chosen at build time). +Axiom lives on top of Common Lisp, specifically Gnu Common Lisp (GCL) Steps to build Axiom @@ -539,16 +459,6 @@ The initial distribution contains several top level files. These are: This is the noweb source for the Makefile file. All changes to the Makefile should occur here and the - document Makefile - - command should be rerun to recreate the Makefile. This also - contains the detailed explanation of the files and directories as well as - some initial comments on how to put the system together. - -2) Makefile.dvi - This is the detailed explanation of the Makefile file. It will be - generated from the Makefile.pamphlet file when the build starts. - 3) Makefile This is the actual Makefile that will create Axiom. In general the distribution will contain the pamphlet files for each @@ -561,6 +471,7 @@ Steps in the build process The sequence of steps necessary to build a clean Axiom is simply: export AXIOM=(path-including-this-directory)/mnt/SYSNAME + export PATH=$AXIOM/bin:$PATH make If this fails check the FAQ for possible problems and their fixes. diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 90b720e..f819c55 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -4740,6 +4740,8 @@ src/interp/i-intern.lisp fix bug 7264: 2.7@DoubleFloat failed
projects a new file listing open project efforts
20141130.01.xyy.patch buglist: bug 7266: integration failure for 1/(sin(x)^4+1)
+20141201.01.tpd.patch +readme: update the readme file to remove outdated comments