|
From: | root |
Subject: | Re: [Axiom-developer] RE: algebra Makefiles with explicit dependencies, bootstrap, fixed-points etc. |
Date: | Fri, 7 Jan 2005 23:54:44 -0500 |
The lisp code in the BOOTSTRAP files (for the most part) has been pretty-printed. Since the NRLIB .lsp files are not normally read by humans they are not pretty-printed. In some cases the BOOTSTRAP code has been hand-formatted. The intention was that it would correctly tex and fit on the page. Both of these reasons will keep you from diffing the file. You'd need to use a lisp routine to (prettyprint (read them before diffing. I did receive your email that contained the differences but since all of my email comes into an emacs RMAIL buffer it generally looks like: H4sICF5L3kEAA2ZpeGVkUG9pbnQubG9nAOw9a1fbyJKfN79CY/iAJ8ON3rLC7LlDwBDvEENsk9m7 X+4RtgCfGJsryyScox+/VdUtqVtqCRnIa+IcAnp0V1VXVddLrdb+5+niRjuafg4n2tliOo+1N6vp bPLi119/7cVhFMTTxRyONePF7u6uBvdfBbOr8CIKXr3p9Y96J91/zJa3/zW6Xmn/E8w1zdVM8zX8 OI5m6rrz4uXLl8pO/cFJ782r8WISlvpbr3X/tWWy/n/8oe0a1m+e9pJ+//HHC+2FtnPYPTrvawkH .... that is, base64. I have to decode it by hand to see what it is and I failed to do that. re: propagation When you write out a domain in Axiom it contains a large vector which describes all of the domain. Some of those vector elements are functions and some are variables in the domain. When you use a function from domain A in domain B the domain vector for B will contain an index into the domain vector for A to get at the function. So if you inspect the domain vector for B you'll see hard-coded integers which are indexes into the domain vector for A. If A changes then the domain vector will be reshaped and the slot index for functions will get renumbered. If B depends on A then it will get recompiled and have a new slot number. So changes to A don't propagate quite the way I think you mean. What you will find is that a bunch of magic integers have changed. Tim
[Prev in Thread] | Current Thread | [Next in Thread] |