CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.4m 2022-06-10 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- - compatibility with miniltx (bugfix to resolve an infinite loop which appeared at 1.4l, but the situation was buggy even before). - documentation improvements, in particular each instance of a macro in the code source is linked to the place where it was first defined. Back and forth cross-references from the implementation to the user documentation are active in the file xint-all.pdf (not included, see README.md for the simple build instructions starting with xint.dtx). Some removals of long deprecated macros had been already acted when the miniltx compatibility bug surfaced so with hesitation I decided not to revert them. For details see CHANGES.html. -- This package is located at https://mirrors.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint CTAN is run entirely by volunteers and supported by TeX user groups Please join a user group or donate to one, see https://ctan.org/lugs Thanks for the upload. For the CTAN Team Ina Dau -- ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.4g 2021-05-25 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Breaking: - iterated powers (** or ^) computed from right to left - removal of deprecated single-character operators &, |, and = Deprecated: - old "typesetting" macros \xintFrac et al. have been renamed into \xintTeXFrac, etc... and former names will emit warnings New: - \xintTeXfromSci - new mechanism for error messages raised by exceptions; when in interactive mode, dialog with user in only one step, not three Bugfixes: - \xinteval{_4} caused an infinite loop - ... other bugfixes, see CHANGES.html for details -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Erik Braun CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint bundle. Version: 1.4e 2021-05-05 License: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- - Logarithms (natural and to the base 10), exponentials and powers now available up to 62 digits. - Trigonometric functions also available at high degree of accuracy up to 62 digits. - Special fast mode at 8 digits or less for the above mentioned functions, at a lowered accuracy standard (correct rounding perhaps only in about 95% of cases), but largely precise enough for tasks such as plots. Also taking this opportunity to announce xintsession which has been available for a few weeks. Try out "etex xintsession" or, if available, "rlwrap etex xintsession" on the command line. -- The package’s Catalogue entry can be viewed at https://ctan.org/pkg/xint The package’s files themselves can be inspected at https://mirrors.ctan.org/macros/generic/xint/ Thanks for the upload. For the CTAN Team Petra Rübe-Pugliese CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.4b 2020-02-25 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- 1.4b (2020/02/25) * Added: - functions zip() and flat() - chaining of comparison operators - customizability of the "e" separator of mantissas and exponents in output of \xintfloateval * Fixed: - \xintieval{[D]...} with a negative D (a 1.4a feature) used erroneously a catcode 12 "e" in output, which moreover was immune to customization * Announced: - long deprecated &, |, and = will be removed at next major release, use &&, || and ==. - \thexintexpr et al. will be removed at next major release, use \xinttheexpr or directly \xintexpr et al. as since 1.4 they can be used in typesetting flow. - power operators ** and ^ will turn from left to right associative at next major release. This matches with Python and l3fp. * Various documentation fixes and improvements. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.4a 2020-02-19 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- - breaking change: macros for customization of \xintthealign have new names and meanings - \xintthespaceseparated (for usage with PS-Tricks \listplot). - the optional argument [D] of \xintieval can now be negative. (meaning is quantization to an integer multiple of 10^(-D)) - bugfix: usage of round() and trunc() within \xintdeffunc got broken at 1.4. - bugfix: add() and mul() were supposedly accepting omit, abort and break() since 1.4 but this was broken. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Erik Braun CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN Update: xint
Jean-François Burnol submitted an update to the xint package. Version: 1.4 2020-01-31 License: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- This is a major release with some breaking changes. Selected highlights: - The \expanded primitive (TeXLive 2019) is required. Its usage has allowed dropping formerly used \csname techniques. There is no more impact on the string pool memory. - Square brackets [...] are now associated with actual nested structures. For example \xinteval{1, [2, [3, 4]], 5} produces 1, [2, [3, 4]], 5 (recall this is free bloatware). - Scalar operations on one-dimensional "lists" (which as it turned out matched the NumPy "broadcasting" concept) are provisorily dropped. Alternative syntax exists to rescue old documents. - Operations on nested lists are inspired from NumPy's. Currently, nested (basic) slicing and indexing is implemented. But the step parameters are not. The broadcasting of scalar operations is not yet implemented but the user can define "universal functions", i.e. functions operating on all leaves of the data. Our structures have leaves at arbitrary varying depths, they are not necessarily hyperrectangular like NumPy's. Constructors are provided, for example ndmap() maps a function on all Cartesian n-uples built from items (at top level) of n given lists. - Variables in function declarations may be multi-letter words. - The last positional variable name may be prefixed with a * as in Python to signal it is a "nut-ple" receiving all arguments of the function calls beyond the first positional ones ("variadic" argument). Generally speaking, * is the unpacking operator. - ... quite a few more features. See CHANGES.html and xint.pdf. -- The package’s Catalogue entry can be viewed at https://ctan.org/pkg/xint The package’s files themselves can be inspected at http://mirror.ctan.org/macros/generic/xint/ Thanks for the upload. For the CTAN Team Petra Rübe-Pugliese CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3f 2019-09-10 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Maintenance release for some bugfixes and: - starred variant \xintDigits* will reconfigure the trigonometrical functions to match the new float precision - sync with poormanlog v0.05: xintexpr additions formerly provided by poormanlog v0.04 have been internalized For details refer to CHANGES.html and xint.pdf -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Erik Braun CTAN is run entirely by volunteers and supported by TeX user groups. Please join a user group or donate to one, see https://ctan.org/lugs ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3e 2019-04-05 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- xintexpr now provides trigonometrical functions (direct and inverse) up to 60 digits of precision, and exponentials and logarithms (via poormanlog package) but for the latter only to about 9 digits of precision. This will be improved in future. The trigonometrical functions are (for the most part) implemented via the high level user interface. Future releases will code them at lower level, for efficiency. For more details, refer to the Recent Changes section of xint.pdf. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau -- ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN Update: xint
Jean-François Burnol submitted an update to the xint bundle. Version: 1.3d 2019-01-06 License: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Improvements and new features - xintexpr: the gcd() and lcm() multi-arguments functions have been refactored to handle general fractions. The dependency on xintgcd is removed. - xintexpr: \xinteval, \xintieval, \xintiieval, and \xintfloateval as synonyms to \xintthexpr...\relax etc..., but with the (comma-separated) expression as a usual braced macro argument. Attention: these names were formerly used with some other (barely documented) meanings, for which \xintexpro, \xintiexpro, etc... are now used. - xintexpr: \xintifsgnexpr, \xintifsgnfloatexpr, \xintifsgniiexpr, \xintunassignexprfunc, \xintunassigniiexprfunc, \xintunassignfloatexprfunc, isone() and isint(). Bug fix - xintcore, xintexpr : division in \xintiiexpr was broken for a zero dividend and a one-digit divisor (e.g. 0//7) since 1.2p due to a bug in \xintiiDivMod for such arguments. The bug was signaled (thanks to Kpym for report) and fixed shortly after 1.3c release of June 2018 but I then **completely forgot** to upload a bugfix release to CTAN at that time, apologies for that. And the usual lot of documentation "improvements". See CHANGES.html for more details. -- The package’s Catalogue entry can be viewed at https://ctan.org/pkg/xint The package’s files themselves can be inspected at http://mirror.ctan.org/macros/generic/xint/ Thanks for the upload. For the CTAN Team Petra Rübe-Pugliese We are supported by the TeX users groups. Please join a users group; see https://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3c 2018-06-17 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Maintenance release: - documentation improvements (e.g. regarding \xintUniformDeviate). - sourcexint.pdf is better hyperlinked and with indices. - a toggle is provided for \xintdefvar, \xintdeffunc et. al. to make definitions with global scope. - both syntaxes \xintdefvar foo := expression; and \xintdefvar foo = expression; are now accepted, and in the former case the colon may have any (reasonable) catcode. This was already the case for \xintdeffunc and variants. - due to some work commit which made it to 1.3 release, xintfrac.sty (hence xintexpr.sty also) loaded xintgcd.sty automatically. Removed. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3b 2018-05-18 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- These additions related to randomness are marked as work-in-progress. They require an engine providing the \(pdf)uniformdeviate primitive. - XINTKERNEL: \xintUniformDeviate. - XINT: \xintRandomDigits, \xintXRandomDigits, \xintiiRandRange, \xintiiRandRangeAtoB. - XINTFRAC: support macros (not public, mainly because internal format for floats is surely not final) for random() and qrand(). - XINTEXPR: random(), qrand(), and randrange(A[, B]). -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3a 2018-03-07 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Fix for user defined functions: in case of recursivity (as made possible at previous release 1.3) they were inefficient due to a missing appropriate expansion of their arguments. New conditionals ifone() and ifint(). -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at https://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.3 2018-03-01 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- - removed all macros previously deprecated at 1.2o, - modified addition, subtraction and modulo operations to use a least common multiple for the denominator of the result, - added \xintPIrr, \xintDecToString and preduce(), - and last but not least refactored extensively the \xintNewExpr/\xintdeffunc mechanism. It got both leaner and stronger and makes possible recursive function definitions. Examples: \xintdeffunc GCD(a, b):= if(b, GCD(b, a /: b), a); is of course the Euclide algorithm (but here usable with fractions). \xintdefiifunc powmod(x, m, n) := if(m, if(m=1, x /: n, if(odd(m), (x*sqr(powmod(x, m//2, n))) /: n, sqr(powmod(x, m//2, n)) /: n ) ), 1 ); implements modular exponentiation (with positive exponents only, like the pow() Python function). -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2q 2018-02-06 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Emergency bugfix release: 1.2l left some broken macro in the subtraction routine which could get triggered under some rare circumstances. The dev branch had some extension of tacit multiplication (to cases such as 10!20!30!), which got included in this release. I did not test it much, though. Can't understand how my testing failed reporting the 1.2l breakage... -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2p 2017-12-05 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Breaking changes: - \xintBezout macro from xintgcd.sty has a new output format. - \xintiiMod macro, and the /: (aka 'mod') operators, as well as the mod() function, and the division // operator are now associated with the _floored_, not the _truncated_ division. This matches convention of the Python language. This is breaking change for operands of opposite signs. New and improved: - the venerable \xintListWithSep macro got faster. - new divmod() function for the expression parsers. - \xintdefvar et al. now authorize simultaneous assignments. - the usual documentation fixes and polishes. See CHANGES.html for bug fixes and more details. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2o 2017-08-29 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- This is a clean-up release. It deprecates many macros from xintcore.sty and xint.sty. Deprecated macros generate an error message but then (as a rule) expand as in former releases. The majority of these deprecated macros receive their proper definitions from package xintfrac.sty. Loading the latter will thus, for those macros it defines again, make invisible to end-user this xintcore/xint macro deprecation status. All these deprecated macros are marked for removal at next major release. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN Update: xint
Jean-François Burnol submitted an update to the xint bundle. Version: 1.2n 2017-08-06 License: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- The macros of xintbinhex.sty have been revisited again. Their speed and the sizes of the maximal allowable inputs have been increased. As I have little "internet time" during August, I decided not to wait before releasing the improved versions, although the previous release is only a week old. Also, xintbinhex.sty loads only xintkernel.sty, not xintcore.sty anymore as it has no more dependencies upon it. -- The package’s Catalogue entry can be viewed at https://ctan.org/pkg/xint The package’s files themselves can be inspected at http://mirror.ctan.org/macros/generic/xint/ Thanks for the upload. For the CTAN Team Petra Rübe-Pugliese We are supported by the TeX users groups. Please join a users group; see https://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2m 2017-07-31 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- All macros of xintbinhex.sty have been rewritten using techniques from the 1.2 release (they had remained unmodified since 1.08 of 2013/06/07.) The new macros are faster but limited to a few thousand digits. The 1.08 routines could handle tens of thousands of digits, but not in a reasonable time. A few more modest improvements; and bugfix of the bookmarks in the PDF documentation. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2l 2017-07-26 License type: lppl1.3c Summary description: Expandable operations on long numbers Announcement text: -- Maintenance release. - The underscore character _ is accepted by the xintexpr parsers as a digit separator. Example: \xinttheiiexpr 123_456_789 * __ \relax It is not allowed as _first_ character of a number, as it would then be mis-interpreted as the start of a possible variable name. Only expressions handle it (the space character can also separate digits there), not macros. The LaTeX package bnumexpr will also accept the underscore as digit separator in its upcoming release. - Some refactoring in xintcore for some small efficiency gains. - Some macros were not robust against arguments whose expansion looks forward for some termination (e.g. \number\mathcode`\-), and many more were broken if the inputs used a non-terminated \numexpr, e.g. \xintAdd{\the\numexpr1}{2}. The user manual never said this was legal input, but it was slightly inconvenient. Most macros have now been made robust against such non properly terminated inputs. In expressions though, a \numexpr swallowing the ending \relax is definitely still to be avoided, as the parser absolutely needs to hit against such a token at some point. - A few minor bugfixes, see CHANGES.pdf or CHANGES.html for the details. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2k 2017-01-06 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- - The xintfrac.sty floating point macros since 1.2f round their arguments to the target precision P before further processing. This rounding is now exact (aka correct) in all cases, even with fractions having long numerators and denominators. This change has little influence on float expressions, as the \xintfloatexpr parser handles there the / symbol as an operator hence it does not (except for special constructs) get to see fractions as such. - Half-integer powers A^x (only available in float expressions, not via macros) proceed by an integer power and then a square-root extraction: the 1.2f implementation did the latter on an already rounded value, 1.2k keeps some of the guard digits to make the computed value Z closer to the exact one: a difference of less than 0.52 ulp(Z) is guaranteed in all cases. - Macro \xintnewdummy is made a public one, it serves to declare additional letters as dummy variables in expressions. This is for Unicode engines, mainly, as all Latin letters are already predefined to act as such. See CHANGES.pdf or CHANGES.html for the details and more. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN Update: xint
Jean-François Burnol submitted an update to the xint package. Version: 1.2j 2016-12-22 License: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- Improvements and new features - xinttools and xintexpr: 1. slightly improves the speed of \xintTrim. 2. speed gains for the handlers of comma separated lists implementing Python-like slicing and item extraction. Relevant non (user) documented macros better documented in sourcexint.pdf. - significant documentations tweaks (inclusive of suppressing things!), and among them two beautiful hyperlinked tables with both horizontal and vertical rules which bring the documentation of the xintexpr syntax to a kind of awe-inspiring perfection... except that implementation of some math functions is still lacking. Bug fixes - fix two 1.2i regressions caused by undefined macros (\xintNthElt in certain branches and [list][N] item extraction in certain cases.) The test files existed but were not executed prior to release. Automation in progress. -- The package’s Catalogue entry can be viewed at http://www.ctan.org/pkg/xint The package’s files themselves can be inspected at http://mirror.ctan.org/macros/generic/xint/ Thanks for the upload. For the CTAN Team Petra Rübe-Pugliese We are supported by the TeX users groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2i 2016-12-13 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- This release principally brings speed improvements to under the hood auxiliary (mainly non arithmetic) routines. As a result \xintTrunc, \xintRound, \xintXTrunc got faster. Also \xintKeep, \xintTrim, and \xintLength were somewhat refactored and are faster. New macros \xintLastItem and \romannumeral\xintgobble (for cleaning up hundreds of thousands of unwanted tokens, if needed) and also \romannumeral\xintreplicate which is simply borrowed from expl3 with some minor changes. Some aspects of \xintFor are better explained in the docs. The documentation has dropped all usage of LaTeX "command", which was for some unknown reason to be found at a number of locations of the user manual, in favor of "macro", which is more apt for a package (which works under any TeX -- as long as its primitives are not obfuscated of course!) almost all of whose macros work by expansion only (and \numexpr). -- The package's Catalogue entry can be viewed at http://www.ctan.org/pkg/xint The package's files themselves can be inspected at http://mirror.ctan.org/macros/generic/xint Thanks for the upload. For the CTAN Team Erik Braun We are supported by the TeX users groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2h 2016-11-20 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- This release fixes a few bugs (see CHANGES.{pdf,html}) and has a new macro `\xintNewFunction` which allows to extend the expression parsers with user-defined functions in situations where `\xintdeffunc` is not usable. Indeed, one can not currently do: \xintdeffunc foo(x):= add(i^2, i=1..x); in part because the dummy variable range is not explicitely known as it depends on the variable x. But now one can do: \xintNewFunction {foo}[1]{add(i^2, i=1..#1)} and the full syntax is allowed in the replacement text because its actual parsing is delayed to the time where `foo()` will actually be used. The arguments may then be numerical, or dummy variables, or sub-expressions etc... `foo()` is then like a genuine function for the three parsers `\xintexpr`, `\xintiiexpr`, `\xintfloatexpr`. This is very different from `\xintdeffunc` and the closely related `\xintNewExpr` which attempt to parse expressions (either with variables or macro parameters) and convert them in advance into (possibly very complicated) nested macro calls. Side note: after three years of strict obedience to xint prefix, `\thexintexpr`, etc... are provided as synonyms to `\xinttheexpr`, etc... -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint Thanks for the upload. For the CTAN Team Manfred Lotz We are supported by the TeX user groups. Please join a users group; see http://www.tug.org/usergroups.html . ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2g 2016-03-19 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- List selectors [L][n], [L][a:b], in expressions are faster. And items are counted starting at zero, not one ([L][a:b] already followed exactly Python slicing rules). The iter keyword's meaning has changed, new one associated with rseq, former one which is associated to rrseq renamed to iterr. The float operations with large precision handle small inputs faster. The documentation has an example of using iter to implement expandably the Brent-Salamin algorithm for digits of Pi. See CHANGES.{pdf,html} for more. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2f 2016-03-12 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- Bug fixes - squaring macro \xintSqr from xintfrac.sty was broken due to a misspelled sub-macro name. Dates back to 1.1 release of 2014/10/28 :-((. - 1.2c's fix to the subtraction bug from 1.2 introduced another bug, which in some cases could create leading zeroes in the output, or even worse. This could invalidate other routines using subtractions, like \xintiiSquareRoot. Improvements and new features - functions binomial, pfactorial and factorial in both integer and float versions. - faster implementation and increased accuracy of float power macros. - faster implementation of both integral and float square root macros. - the float square root achieves _correct_ (aka _exact_) rounding in arbitrary precision. - modified behaviour for the \xintPFloat macro, used by \xintthefloatexpr to prettify its output. It now opts for decimal notation if and only if scientific notation would use an exponent between -5 and 5 inclusive. The zero value is printed 0. with a dot. - the documentation offers a more precise (and accurate) discussion of floating point issues. - various under-the-hood code improvements; the floatexpr operations are chained in a faster way, from skipping some unneeded parsing on results of earlier computations. The absence of a real inner data structure for floats (incorporating their precisions, for one) is however still a bit hair rising: currently the lengths of the mantissas of the operands are computed again by each float macro or expression operation. - renewed desperate efforts at improving the documentation by random shuffling of sections and well thought additions; cuts were considered and even performed. See CHANGES.{html,pdf} for more. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX User Groups. Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Ina Dau ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2d 2015-11-18 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- - bugfix in xintcore: release 1.2c had inadvertently broken the \xintiiDivRound macro. - the function definitions done by \xintdeffunc et al., as well as the macro declarations by \xintNewExpr et al. now have only local scope. - tacit multiplication applies to more cases, for example (x+y)z, and always ties more than standard * infix operator, e.g. x/2y is like x/(2*y). Here is an example (which I forgot to include in the 1.2c announcement) combining the two items above: \xintdeffloatfunc rump(x,y):=333.75y^6+x^2(11x^2y^2-y^6-121y^4-2)+5.5y^8+x/2y; One can then evaluate \xintthefloatexpr rump(77617,33096)\relax, but will be suprprised by the result if not using at least 37 decimal digits of precision... Some documentation enhancements, particularly in the chapter on xintexpr.sty, and also in the code source comments. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Erik Braun ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2c 2015-11-16 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- - **bugfix** in xintcore: recent release 1.2 of October 10 had introduced another bug (alas), this time in the subtraction (happened when 0001 was found under certain circumstances at certain mod 8 locations). - new macros \xintdeffunc, \xintdefiifunc, \xintdeffloatfunc and boolean \ifxintverbose. - on-going code improvements and documentation enhancements, but stopped in order to issue this bugfix release. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Erik Braun ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2b 2015-10-29 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- **bugfix**: recent release v1.2 from 2015/10/15 had introduced a bug in the division routine of xintcore.sty. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Manfred Lotz ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2a 2015-10-19 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- This bugfix release corrects a bad bug which was introduced in 1.2 from 2015/10/10: the \xintexpr parser mistook numbers like 0.01 for zero ! The developer apologizes. Please upgrade if you installed recently released 1.2. See CHANGES.{pdf|html} for a few minor changes (some added macros). -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Manfred Lotz ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann
CTAN update: xint
Jean-François Burnol submitted an update to the xint package. Version number: 1.2 2015-10-10 License type: lppl1.3 Summary description: Expandable operations on long numbers Announcement text: -- - the basic arithmetic implemented in xintcore has been entirely rewritten. The mathematics remains the elementary school one, but the TeX implementation achieves higher speed (except, regarding addition/subtraction, for numbers up to about thirty digits), the gains becoming quite significant for numbers with hundreds of digits. - the inputs must have less than 19959 digits. But computations with thousands of digits take time. - a previously standing limitation of the expression parsers to numbers with less than 5000 digits has been lifted. - new macro for computing the factorials (of integers) as floating point numbers, to which the ! postfix operator inside \xintfloatexpr is mapped. - the macros \xintAdd, \xintSub, ..., now require package xintfrac. With only xintcore or xint loaded, one _must_ use \xintiiAdd, \xintiiSub, ..., or \xintiAdd, \xintiSub, etc... - an effort at randomly shuffling around various pieces of the documentation has been done. -- This package is located at http://mirror.ctan.org/macros/generic/xint More information is at http://www.ctan.org/pkg/xint We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html . Thanks for the upload. For the CTAN Team Manfred Lotz ___ Ctan-ann mailing list Ctan-ann@ctan.org https://lists.dante.de/mailman/listinfo/ctan-ann