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 4BF8183A1 for ; Thu, 1 Sep 2011 05:05:33 +0000 (UTC) Received: (qmail 86350 invoked by uid 500); 1 Sep 2011 05:05:32 -0000 Delivered-To: apmail-commons-dev-archive@commons.apache.org Received: (qmail 86189 invoked by uid 500); 1 Sep 2011 05:05: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 86177 invoked by uid 99); 1 Sep 2011 05:05:28 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Sep 2011 05:05:28 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of gsterijevski@gmail.com designates 209.85.215.43 as permitted sender) Received: from [209.85.215.43] (HELO mail-ew0-f43.google.com) (209.85.215.43) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Sep 2011 05:05:20 +0000 Received: by ewy20 with SMTP id 20so1327055ewy.30 for ; Wed, 31 Aug 2011 22:05:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; bh=sNINRtogasJgiBrsFWf0ITMNe1+PEH7MWrDWmCVSLbQ=; b=qqJ4A9SDlP71FYteTeVV2ypO/pgYxsoE6sb4igU53iF3sQbWtO8AHX8kYwewgxEUS8 /Dxkyr3PldFdsXIaSeEcZvh/OVFhuAlnouL8DVtZ0TgW+OjFzMeKu9Z+IyLwuvU2IVvD //3uKF+uVo+tPTi2MUATzRoUBnMSzz8VrYgjc= MIME-Version: 1.0 Received: by 10.213.25.215 with SMTP id a23mr640901ebc.104.1314853500673; Wed, 31 Aug 2011 22:05:00 -0700 (PDT) Received: by 10.213.9.196 with HTTP; Wed, 31 Aug 2011 22:05:00 -0700 (PDT) Date: Thu, 1 Sep 2011 00:05:00 -0500 Message-ID: Subject: [math] Multiple Algorithms From: Greg Sterijevski To: dev@commons.apache.org Content-Type: multipart/alternative; boundary=0015174c34eed6df3704abda2fbf X-Virus-Checked: Checked by ClamAV on apache.org --0015174c34eed6df3704abda2fbf Content-Type: text/plain; charset=ISO-8859-1 Hello All, This question popped into my head this evening, what is the right way to handle multiple algorithms which purport to calculate the same thing? There are, for example, a couple of ways to calculate the student t cdf. What is the common's philosophy on deciding: 1. Whether to allow multiple algorithms. 2. How an algorithm is included. a.) Does a 'bug' or shortcoming need to be shown in the current implementation? b.) Say that algorithm a works for a numerical range and b works best on another. Are both included? Is a new 'meta' algorithm written which mixes both a and b? 3. Does simplicity count? 4. Does speed matter? A while back, Chris Nix reimplemented the SVD routine. I am not sure I remember the old routine so I cannot say there was anything worth keeping there. However was there a conscious decision to scrap it? Why not have it live side by side with the new one? (Again, I am not saying the old algorithm was better-Chris' contribution definitely was valuable). I think we will run into these issues often. Thoughts? If this has been discussed already, my apologies. -Greg --0015174c34eed6df3704abda2fbf--