Talk:GNU Multiple Precision Arithmetic Library

Semiprotection request
The criticism section of this article is constantly deleted by a user, most likely the author of the software package subject of the article (GMP). I suggest this user is following own agenda to eliminate any link of a fork project (MPIR) that he perceives as a "enemy fork" of his own work. A link to this fork project appears absolutely relevant, and has been added by several editors several times in the last 8 months or so, every time to be deleted by the same user (anonymous, except in the last post where the accountless name "Albanon" is used).

Another wikipedian (User talk:BlanchardJ) intervened, suggesting the addition of a criticism section where to insert the "censored" link (giving it more visibility). Section was added with the link, but the anonymous user repeatedly tried to delete it. In an attempt to censor at least the mentioning of the link, then tried to suggest a rewording so that its sense is changed and the link is omitted.

The fork project (MPIR) is undisputed as notable enough to deserve a wikipedia page, and it is a project born (according to its authors) exactly to face the issues of the criticisms described in the criticism section of GMP. Its relevance in the context of this page would therefore seems unquestionable. After several attempts by this account-less user to impose this illecit censorship, I'm advocating semi-protection. --Mtarini (talk) 22:59, 4 November 2010 (UTC)

Is GMP required to build GCC or GCC is required to build GMP? Could someone please elaborate on that?

BOTH. Like any program written in C, GMP needs to be compiled with a C compiler. The GCC compiler will fill such a need. Later versions of GCC use GMP to convert calls to math functions where the argument is a constant into a constant. For example, when the compiler encounters sin(3.14), sqrt(25), etc., it will convert these into actual constants instead of function calls.


 * GMP requires more than a C compiler in practice. The same compiler also needs to have good support for asm. In particular, tcc can't be used. There are workarounds with some drawbacks (such as disabling asm entirely). Full discussion: http://gmplib.org/list-archives/gmp-bugs/2012-June/002703.html
 * Concerning constant evaluation, GCC uses MPFR, which uses GMP.
 * Vincent Lefèvre (talk) 23:37, 22 January 2013 (UTC)


 * Yes, but that wasn't the question. The question was about GMP and GCC each requiring the other to build. Your superfluous information adds nothing to the (already correct) response.


 * You're wrong. First, GMP doesn't require GCC to build. So, "BOTH" is not a correct response. GMP can be built with any correct C compiler having good asm support (asm support is optional, but the user needs to disable it explicitly). Moreover, for the math functions with constant arguments, GCC doesn't use GMP but GNU MPFR (and from an interface point of view, the use of GMP via MPFR is hidden: GCC isn't supposed to know that GMP will be used for this purpose). GCC requires GMP for other tasks.
 * Vincent Lefèvre (talk) 19:11, 27 June 2013 (UTC)

MPIR
I have added a link to MPIR an open source multiprecision integer (bignum) library forked from the GMP (GNU Multi Precision) and that has a windows friendly build system and that is compatible to GMP and it is used by many first class project (Sage_(mathematics_software). I have seen that any reference to MPIR library has been repeatedly deleted from this page, I hope that this time this link will remain. I sincerely hope that these deletions are not related to the fact that, according to many posts around the net, "MPIR was started as an angry fork of GMP".  ALoopingIcon (talk) 22:37, 14 October 2010 (UTC)
 * Undid an anonymous, unmotivated attempt of removing the MPIR wiki reference. Please elaborate here before removing. ALoopingIcon (talk) 22:01, 1 November 2010 (UTC)
 * Again. Please elaborate here before removing. ALoopingIcon (talk) 08:50, 2 November 2010 (UTC)

This page is about the GNU project and specifically about GMP. MPIR is, if I understand it correctly, not GMP or part of the GNU project. Please write about MPIR in an MPIR page, where you might explain about your goals with it. Trying to motivate writing about MPIR on this page with a Sage reference is misleading and irrelevant, given that MPIR is a project organised withing Sage itself. Also, that Sage or some other project uses some package, does not motivate why that package should be dicussed in a page about GMP. —Preceding unsigned comment added by 130.237.222.220 (talk) 13:15, 2 November 2010 (UTC)
 * I sincerely do not understand why there is someone that want to remove a wiki reference to the MPIR library. MPIR is a LGPL library that forked from GMP to allow easier compilation for MS based compilers. I think that a reference here is quite well motivated, so I add it again. So, just to clarify, MPIR is a fork of GMP so a link in the GMP page is relevant. ALoopingIcon (talk) 13:55, 2 November 2010 (UTC)

Please do not add this link again without motivating that there should be a link to it. If the link is "well motivated", then let us hear the motivation! Else, please respect the subject of this article, which is GMP. Extension libraries (e.g. MPFR) and significant projects using GMP (such as Python, Ruby) are however relevant. The discussion of kaffe's previous use of GMP should probably be edited out, though. Note also that there is no links to the many other bignum libraries on this page; there is a separate page for that on Wikipedia. At that page, MPIR should absolutely be added (unless it is already there). —Preceding unsigned comment added by 130.237.222.220 (talk) 15:09, 2 November 2010 (UTC)

Re-inserted link. Link is clearly relevant: "MPIR a LGPL fork of GNU MP with fully compatible interface which (among other goals) aims to provide MSVC-based compilation system for Windows platforms." MPIR is a well established derivative work, and also it extends the library into another platforms. The fact that a project X is extended to platform Y is clearly a relevant thing to say about X. Therefore, MPIR should by all means be mentioned here.

The only reason I can think of why this link was repeatedly removed in the past is POV bias agaisnt MPIR. Please don't remove the link again. --Mtarini (talk) 16:47, 2 November 2010 (UTC)
 * Undid again. I kindly ask to the anonymous Stockholmer (all the anonymous censoring actions came from IP's located in Stockholm) to stop removing a the link to a legitimate LGPL fork. I would like to remember him/her that forks are quite relevant to the topic of the article, for example look at the FreeMind article: it has a section devoted to the forks it spawned (Freeplane and SciPlore_MindMapping). So, please, do not remove it again.
 * Moreover I would like remember him/her that if he/she is involved in the development of GMP, he/she should abstain from editing this page for plain lack of NPOV. (Useless disclaimer: I am not involved in any way in the development of MPIR). ALoopingIcon (talk) 21:56, 2 November 2010 (UTC)

Please stop this nonsense now. There is a page about MPIR here at Wikipedia, tagged for its poor quality. Please do productive work on that page instead of vandalising this page about a separate project. A list of bignum libraries might be another useful contribution. Making a POV list of bignum libraries here at the article about one specific bignum library is destructive, and moves away the from the focus of the article. The people reinserting the pro-MPIR lines should make serious contributions to the discussion, not ust say the linke is "well motivated". How do they motivate that other libraries that have taken GMP code are not mentioned, except POV? —Preceding unsigned comment added by 90.132.75.8 (talk) 06:47, 3 November 2010 (UTC)
 * I stop to revert your steady censoring actions to not incur in the WP:3RR. Again it seems that you do not accept the fact that legitimate forks are relevant to the article of an open source package. Raised the of NPOV on the noticeboard. ALoopingIcon (talk) 11:42, 3 November 2010 (UTC)
 * Agreed. This page is about GMP. GMP has been extended by MPIR so to work on a different platform (among other things). This is a piece of info *about GMP*, a relevant and even important one. MPIR is not "discussed" here, it is "mentioned", and the mention is totally relevant. Let's hope this senseless censorship by anonymous cease. --Mtarini (talk) 13:29, 3 November 2010 (UTC)

I suggest that ALoopingIcon and Mtarini is one and the same person, using two identities. MPIR is irrelevant in the context of GMP. MPIR does not work on any platform whatsoever not supported by GMP (not that this is relevant). One must keep the focus of a page here at Wikipedia, things that might seem slightly relevant from a POV perspective ("I like library X, so let's mention that in as many places as possible") cannot be added to a page about another library. Since if that principle was invoked, pages would end up very poorly focused. GNU TLS, GNU libc, which are truly relevant packages, have also "forked" GMP. And so have many other packages. The real reason why people add the link to MPIR is a MPIR bias. You like MPIR, therefore you want to scribble its name at a very public place. —Preceding unsigned comment added by 130.237.222.220 (talk) 14:54, 3 November 2010 (UTC)


 * This discussion is getting annoying, however since I'm pretty sure we don't want to resort to an RfC or even arbitration on this case we should find a common ground. On one hand the subject of forks is very touchy and sometimes it's hard to find sources to justify the inclusion of a unique pages for a new fork. On the other hand, by experience, an MPIR page would be merged with GMP. While I am not commenting on the inclusion or not of the MPIR link itself, it is clear that very common criticism of GMP are addressed by MPIR. A criticism section is quite common on the Wikipedia entries about open source software and GMP certainly could have one. In that case sourcing the said criticisms would require adding a link to some sources which would probably include an MPIR link. As such, I consider that either the link should be kept or that someone include a section addressing the common criticisms with relevant sources. BlanchardJ (talk) 16:33, 3 November 2010 (UTC)

As a start, could you please outline what common criticism of GMP is addressed by MPIR, or else any common criticism? I searched the GMP mailing lists, and there is very little criticism there. On the other hand, it seems that MPIR claims to uniquely support Solaris, Windows, Linux. While that can be taken as criticism of GMP, it is false, since GMP supports these environments, and many more. —Preceding unsigned comment added by 130.237.222.220 (talk) 17:12, 3 November 2010 (UTC)


 * Just a final, non polemic, bit of bare facts about MPIR and GMP. As a matter of fact GMP does not provide an easy support for MS compilers, particularly it seems not possible to compile GMP for 64bit architectures using ms compilers. According to many sites (and the FAQ of MPIR) these issues were the main reason of the forking from GMP. Just googling around you can find confirmations of the fact that MPIR offer better microsoft compiler support (for example on Stack Overflow, in various pages (avoiding mpir and sage pages obviously) ,  or even in the mailing list of GMP  where the only reasonable answer to a user asking how to compile GMP with MS VS 2008 was 'Consider using MPIR'.
 * To be honest, a couple of years ago, in the GMP mailing list a developer announced a future support of Microsoft Visual studio, but the date of the announcement (1st of April) and the overall tone of the post make me a bit suspect of the real will of include such a support... Ah. Just noted. The main developer of GMP, the one that according to various web sources is the one responsible of the absence of support of MS Compilers, is from Stockholm.


 * Just a final disclaimer, I am not definitely MTarini (neither BlanchardJ), and I am not involved at all with MPIR, I was involved in a project that required, at a given point, GMP compiled with VS2010 and I spent an afternoon of failed attempts before discovering MPIR. I added MPIR to the GMP page just to avoid similar headaches to other developers in a helpful spirit. Unfortunately I hit into an anonymous censor of Stockholm. ALoopingIcon (talk) 02:17, 4 November 2010 (UTC)

I see link was inserted again (by another user), and the usual anonymous user censored it again. I also see that, in the past, several other users added the link, and the Anonymous user censored it several times in the past. The arguments provided for removing the link (the one advocating "focus") do not hold any water (in which sense reporting a fork means losing focus on the subject). At this point, it is safe to assume that said anonymous user is probably among the authors or the main author of GMP, and is involved in some kind of "holy war" against the "angry fork". Needless to say, this holy war should be kept out of wikipedia, and authors should abstain from censoring pages about their creations. Any further censorship will be just considered for what it is, vandalism, and consistently reverted until stronger measures are adopted (hoping this won't be necessary).

Added the link back where it belongs. The suggestion by BlanchardJ is also very good, so added a criticism section too.

Unnecessary disclaimer: I am not remotely involved with the dev any of the libraries involved, nor I am a double identity of anybody. My an ALoopingIcon's account are both very old and we never posted on the same article before.--Mtarini (talk) 13:01, 4 November 2010 (UTC)


 * "Final facts"? "Non-polemic"??


 * [1] Incorrect; GMP builds under Windows and always did.


 * [2] You claim to be avoiding MPIR pages, but this is a page from one of the most vocal MPIR people, judging from their own pages (he sometimes hides as "Cactus" there).


 * I didn't read [3] carefully, but yes, a 64-bit core2 specific build runs faster on a core2 on MPIR than a 32-bit pentium4 build. If it takes that sort of reasning to prove the MPIR\ is significant, then it is worse that I had expected.


 * I read [4] but I fail to see the point you're trying to make by linking to it.


 * What concerns [6], which developments of said Jarl Bong Rundtorn do you have in mind, and which make you call him a GMP developer?


 * I have no idea who "is responsible of the absence of support of MS compiler" (to you your wording). There are 6 billion people people in the world, aren't they all about equally responsible for not doing this work?


 * It would be nice to get back to the real question, though.


 * Could somebody make a start--here in the discussion section--to a section with (to use Blanchard's words) common criticisms against GMP. Not a sales pitch for MPIR, but real criticisms, and common for that matter.


 * When taking another group's work and starting to market it under your own name ("fork") the motives can be very different. Ego and attention-seeking plays an important role, often.  Getting attention by trying to market the fork through the wikipedia paga about the original package is tempting, but I don't think it is correct to allow it.


 * I am undoing the latest sloppy edits. Here is the place to agree about what to do, refrain from controversial edits for a while, please!  —Preceding unsigned comment added by 130.237.222.220 (talk) 13:12, 4 November 2010 (UTC)

I don't see anything controversial going on here. I just see the author of a software package censoring the criticism section of the wikipedia page about his own work. That's not a controversy, it is just plain unjustified censroship. Constant reverts are in order, until stronger measures will have to be taken if the censorship continues.--Mtarini (talk) 13:29, 4 November 2010 (UTC)

Criticism and MPIR
The illicit censorship of the criticism section (from the likely author of this software package) is going on. The section was suggested independently by at least three wikipedian only in the recent past, and is on the issues (MPIR fork) has now been added in some half-a-dozen times by as many independent edits in the last year or so. Every time, the same anonymous users (most likely the author of the software being described) censored the issue and any link to further info. This is not properly controversial: it is just a clear case of illicit censorship caused by POV. I'll just keep reverting it, until anonymous edits are blocked or something or censorship desists.

To the ones interested in making a better page: please feel free to ameliorate the Criticism section or to suggest improvements.

Mtarini (talk) 20:14, 4 November 2010 (UTC)--

Criticism section and MPIR
Here is a proposed draft for the Criticism section, suggested by Blanchard (the section, not this text):


 * As any Free Software projects, GMP sometimes draws criticism for its priorities and policies. GMP is sometimes criticized for its perceived lackluster support of Microsoft Windows and its Integrated development environment.  Its former development method with a closed repository and non-public discussions between developers has also been criticized.

Please keep cool and stop adding disputed text before we come to some conclusion on what text to add. Perhaps the entire article could benefit from an overhaul? (Again, please don't make self-sufficient additions at this time.) Albanon (talk) 21:27, 4 November 2010 (UTC)


 * Clarification:


 * there is no legit discussion going on. There just a single user, most likely author of the package under discussion and under clear Conflict of Interest, who is interested in hiding any visibility of what he perceives to be a enemy fork of his project. This is a completely isolated view, POV and COI, against the unanimous view of all the other editors this page had through its brief history. Needless to say, users in Conflict of Interest are not NPOV enough to contribute and should abstain doing so.


 * Even so, we should take advantage of the Criticism section proposed by the censor. It is worded nicely and can be used to ameliorate current section, even if it is clear that it cannot go as a replacement for it.


 * Firstly, and more importantly, BlanchardJ suggestion clearly indicated that the link to MPIR is kept and mentioned in the Criticism (or, kept in the article if no Criticism section is added). That's also the unanimous opinion of all the other editors (barring the one in COI of course).


 * Secondary details: the first sentence of the proposed "revised criticism" is false or at least POV and so we cannot use it (it is not true, or undisputed, that "Any Free Software projects draws criticism for... ", even if this particular one clearly does).


 * Finally, the current criticism section reports sources of the criticisms, reports the criticism far more accurately, and reports a fork project that cannot be ignored and that that spawned from the criticism, thus a relevant piece. Just like BlanchardJ suggested, and unlike the unlikely "draft" by the newly named "Albanon" user. This draft is just an attempt to conceal and minimize the real criticism and its sources.


 * Since it is a single user in Conflict of Interest against the rest of the community, his censorships should probably be considered just a tentative to twist Wikipedia toward a personal agenda. As such, we should keep link and text, no matter how the attempts are made by this user to avoid or postpone their inclusion (with claims sounding like "until I desist, the page cannot be edited"). Reverting now. By all means discuss here further amelioration that can be added (as long as you are not in CoI with the subject of the page, of course). --Mtarini (talk) 22:20, 4 November 2010 (UTC)

Edit: did that. Reverted and used wordings from the proposed Criticism section to make a better one. User in Conflict of Interest should not try to delete it. In any case, removal of the link to MPIR, the fork project, will be considered non licit censorship and reverted. --Mtarini (talk) 22:24, 4 November 2010 (UTC)

Edit: given the recent history of this page, added a semi-protection request, as the fist step to avoid further censorship-vandalism.--Mtarini (talk) 02:55, 5 November 2010 (UTC)

Failed verification tag
I added a failed verification tag on one of the citations. This citation is relevant for this article, but it does not say anything about the 2^31 and 2^37 bit limits, which is what I'd assume it means when it's placed there. There are a few mentions of "31" and "37" around there, but all of them are in filesizes and hashes and therefore irrelevant. Moving the citation might make more sense, as would finding another citation, but leaving it as it is right now doesn't make any sense. 81.231.245.214 (talk) 12:16, 24 April 2011 (UTC)


 * Done. Tibfulv (talk) 11:54, 22 January 2013 (UTC)

Haskell
The Haskell compiler GHC also uses GMP. It is not a must, as an alternative binding is provided, but is used very commonly. See. So, please add Haskell to the list of languages, using GMP. —Preceding unsigned comment added by 137.248.75.94 (talk) 12:32, 19 May 2011 (UTC)

Link does not work ?

 * //gmplib.org/ This link is unavailable. 31.18.88.64 (talk) 18:59, 26 March 2016 (UTC)
 * Try to click on the link "official website" in the article or type https://gmplib.org in the URL section of your browser. D.Lazard (talk) 19:12, 26 March 2016 (UTC)

Two Links does not work
"The GNU MP Bignum Library". Retrieved 2013-03-17. V6.1.0 - "The GNU MP Bignum Library". Retrieved 2015-11-04. Does not work 31.17.78.178 (talk) 17:19, 3 May 2016 (UTC)