[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [Babel] [Bug] Cache
From: |
Sebastien Vauban |
Subject: |
Re: [O] [Babel] [Bug] Cache |
Date: |
Fri, 06 Dec 2013 21:04:48 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (windows-nt) |
Achim Gratz wrote:
> Eric Schulte writes:
>> In that thread we agreed that the expansion of no-web references
>> *should* be included in code blocks for hashing, but no-one has had the
>> time to implement this.
>
> I think we may have discussed this before, but if you make the hashes
> dependent on the possibly recursive noweb expansions this would require
> that all expansions be re-computed all the time
I did not think at recursive Noweb expansions. But, yes, that problem could
come up as well.
> or you would need to discern which of the expansions are "pure" (i.e. depend
> only on their arguments, functional-style), which have session semantics and
> which of the ones that have session semantics should possibly not be
> re-evaluated. I'm not sure that opening this can of worms is worth the
> trouble.
Maybe a solution to avoid recomputing too much things (in number, and in taken
time to do that) would be to only compute the hash for "static" expansions --
the ones without parameters, where it's simply a copy/paste of text in multiple
spots.
If even that is not done/doable, then some error should be triggered when one
uses both the "cache" and the "noweb" header arguments. Because, in the current
situation, we think that the graphs (or, in a general way, the results) are
up-to-date while it's wrong -- you've changed some piece of code somewhere, and
the cached results are still used.
Best regards,
Seb
--
Sebastien Vauban