Return-Path: X-Original-To: apmail-commons-dev-archive@www.apache.org Delivered-To: apmail-commons-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 3407918D0E for ; Mon, 14 Dec 2015 18:24:30 +0000 (UTC) Received: (qmail 33873 invoked by uid 500); 14 Dec 2015 18:24:29 -0000 Delivered-To: apmail-commons-dev-archive@commons.apache.org Received: (qmail 33707 invoked by uid 500); 14 Dec 2015 18:24:29 -0000 Mailing-List: contact dev-help@commons.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Commons Developers List" Delivered-To: mailing list dev@commons.apache.org Received: (qmail 33695 invoked by uid 99); 14 Dec 2015 18:24:29 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 14 Dec 2015 18:24:29 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id E110CC0481 for ; Mon, 14 Dec 2015 18:24:28 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.101 X-Spam-Level: X-Spam-Status: No, score=-0.101 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 5KsXmh5-1_mT for ; Mon, 14 Dec 2015 18:24:21 +0000 (UTC) Received: from mail-io0-f179.google.com (mail-io0-f179.google.com [209.85.223.179]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id EA32842A65 for ; Mon, 14 Dec 2015 18:24:20 +0000 (UTC) Received: by iow186 with SMTP id 186so35507818iow.0 for ; Mon, 14 Dec 2015 10:24:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-type:content-transfer-encoding; bh=skGyXg5GXZ4v5somrNJlWGeG3oI+C83kQSS8UCQdPlg=; b=DXFJRAFdRq7NSBkrhQadGuT0yb0k4/X+NLE8BqrD6HuomYMSTAq/H7PD9NyAt0kX1C Z/7sk3mkzDVnLKlbsqvHbQzAfKFlu/8sqTGLpKUjxsKFYZGhC+NNctOB23WPGNuWfbW1 Ll6UZfW1O6OcWGoQb1/Vx+Y0oBtzHPmDUKVofQbpmdYb97aePB30mHAg7rBvmQB8lfTq F/vNcR61VvfBTjmBra+CFkgNwA1PVoTbpDJ99lIYJjJlV9NM1Wm9xDsUEpGu4Vy4vPj6 BWvj1/AEB1OhJzxw1md1HSvhsaJ77fr6GPKk5SrQqFzZHNJLNz/cdJF5LQSM22fKujmt TXbw== X-Received: by 10.107.135.217 with SMTP id r86mr3037816ioi.164.1450117460592; Mon, 14 Dec 2015 10:24:20 -0800 (PST) Received: from [192.168.1.7] (c-73-44-134-85.hsd1.il.comcast.net. [73.44.134.85]) by smtp.gmail.com with ESMTPSA id eg1sm6859213igb.18.2015.12.14.10.24.18 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 14 Dec 2015 10:24:19 -0800 (PST) Subject: Re: [math] Refactored Precision To: Commons Developers List References: <566E7B1F.9050501@gmail.com> From: Ole Ersoy Message-ID: <566F0952.3040007@gmail.com> Date: Mon, 14 Dec 2015 12:24:18 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hi Thomas, On 12/14/2015 06:37 AM, Thomas Neidhart wrote: > On Mon, Dec 14, 2015 at 9:17 AM, Ole Ersoy wrote: > >> Hi, >> >> Just a heads up for those of you interested or have nothing better to do >> at 2 am :). I refactored the Precision class into classes PrecisionAssert >> and RoundDouble. >> >> https://github.com/firefly-numbers/firefly-numbers >> >> I created a new github organization for the package, since it deals less >> with math and more with number precision in general. I also removed >> support for float. It seems like most of the code in CM uses double, and >> if float is needed then it should be provided via it's own module. I also >> replaced calls to FastMath with Math. Most of the calls were for abs() and >> ulp()...functions that I would think would have similar performance >> regardless. >> >> Probably moving onto FastMath next. I plan on only including functions >> that have a performance benefit, and delegating to Math for everything else. >> > Hi Ole, > > what is the motivation for posting these questions on the math ML? > Do you intend to contribute some new functionality or propose changes back > to commons-math? > > Or is this project intended to be a fork of commons-math? > > Thomas > I sent a few emails earlier regarding the precision code with questions that were questions... We have been discussing refactoring CM, so I've started what can be thought of as a Java 8 (/leaning towards Java 9) useable prototype of such such refactoring. As I'm going through the process and reviewing the code, I ask questions (Hopefully good ones) when I find something that I think could be simplified, etc. So far there are probably 6 big changes that CM that might be useful for CM: 1) Lombok to reduce boileplate code (Can be seen in the new exception module - Also generates javadoc) 2) Removal of float precision utilities in Precison 3) Java 8 and Java 8 constructs 4) Coming (Observer design for Optimizers) 5) The dependency structure of the modules 6) Hopefully increased generic use for modules like the numbers module Fork usually has a negative connotation. When architects draw up designs there are usually several that can be used for comparison and contrast. The primary purpose of sharing the results of the refactoring is that. I probably should be make it clear that I am 100% for CM. I think the developers and contributors are amazing and I have tremendous respect for all of you. Cheers, - Ole --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org For additional commands, e-mail: dev-help@commons.apache.org