timj / mn2e-bst

Monthly Notices of the Royal Astronomical Society bibtex style file
13 stars 5 forks source link

exceeding BibTeX's single function space 100 #11

Closed rokroskar closed 10 years ago

rokroskar commented 10 years ago

is there a fix for this apart from recompiling bibtex? That's what http://ctan.sharelatex.com/tex-archive/biblio/bibtex/contrib/doc/btxFAQ.pdf suggests, but I don't get this error using a different version of mn2e.bst. Thanks!

timj commented 10 years ago

I don't really know what "this" is. Maybe @nxg can shed some light on this. What version of mn2e.bst works for you?

rokroskar commented 10 years ago

oops sorry, "this" refers to the error:

"exceeding BibTeX's single function space 100"

Before, I was using Michael Williams' mn2e.bst from http://user.astro.columbia.edu/~williams/mn2ebst/

nxg commented 10 years ago

Yuk. It appears that we hit this limit when an individual function gets too long. I'll take a guess and say that this might be one or more of format.names, format.names.full or format.ed.names. I see some code in there which is nearly common, and which could probably be factored out. But it's not at all clear what the difference is between these functions, or whether the slight differences between them are significant, or just the result of one being adjusted (for some now-forgotten reason), and the others being left unchanged (I'm as guilty as others: when I made the last change here I think I only changed one of the functions and left the others well alone).

Is Keith alertable through this comment thread? Perhaps he can recall if the differences are significant.

I note, by the way, that when I do make test, the mn2e-test.blg file reports Reallocated singl_function (elt_size=4) to 150 items from 100. That seems to corroborate that this problem will appear in a BibTeX version which can't dynamically increase these limits.

timj commented 10 years ago

So we haven't noticed because we are using a newer bibtex? @rokroskar which version of bibtex do you use?

rokroskar commented 10 years ago

yes @timj must be the case I imagine:

[roskar@miniature tests]$ bibtex --version
BibTeX 0.99c (Web2C 7.5.6)
kpathsea version 3.5.6
...
timj commented 10 years ago

Compare with my version:

$ bibtex --version
BibTeX 0.99d (TeX Live 2013)
kpathsea version 6.1.1
Copyright 2013 Oren Patashnik.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the BibTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the BibTeX source.
Primary author of BibTeX: Oren Patashnik.
nxg commented 10 years ago

I'm using % bibtex --version BibTeX 0.99d (TeX Live 2013) kpathsea version 6.1.1 Copyright 2013 Oren Patashnik. [...] on OS X.

...as Tim is also, I see.

It would probably be good to fix this nonetheless.

@timj: is there some magic github way of pulling Keith into this thread, so he can comment on how much freedom we might have to change these functions. The differences do look pretty trivial, but that doesn't count for much in this context....

rokroskar commented 10 years ago

well clearly 0.99c --> 0.99d makes all the difference :) We're running some flavor of scientific linux here, which is why things are a bit outdated.

timj commented 10 years ago

@nxg I don't think Keith has a Github address.

nxg commented 10 years ago

I've mailed Keith (but it appears from his out-of-office reply that he's on leave).

I've also spotted one long function which may be causing at least part of the problem. Watch this space.

rokroskar commented 10 years ago

great, thanks for looking into it

nxg commented 10 years ago

@rokroskar, can you have a go with the mn2e.bst now in the repository. When I try with that, my bibtex implementation appears to report that it doesn't have to increase the relevant limit any more.

If that works, can you close this issue -- I thought I'd done so with the commit, but it seems not...

Keith is on leave until June. I'll mail him noting what's happened here.

nxg commented 10 years ago

Oh, and @rokroskar, can you say how old your Scientific Linux installation is? Do you have any idea whether subsequent versions have the bibtex 0.99d which, it appears, doesn't have this problem?

rokroskar commented 10 years ago

this now seems to work, thanks!

I'm not sure how old the scientific linux install is but can't be more than a year or so -- looks like we're running Red Hat 4.4.7-3