Mon Oct 26 15:09:54 2020
EVENTS
 FREE
SOFTWARE
INSTITUTE

POLITICS
JOBS
MEMBERS'
CORNER

MAILING
LIST

NYLXS Mailing Lists and Archives
NYLXS Members have a lot to say and share but we don't keep many secrets. Join the Hangout Mailing List and say your peice.

DATE 2011-05-01

HANGOUT

2020-10-26 | 2020-09-26 | 2020-08-26 | 2020-07-26 | 2020-06-26 | 2020-05-26 | 2020-04-26 | 2020-03-26 | 2020-02-26 | 2020-01-26 | 2019-12-26 | 2019-11-26 | 2019-10-26 | 2019-09-26 | 2019-08-26 | 2019-07-26 | 2019-06-26 | 2019-05-26 | 2019-04-26 | 2019-03-26 | 2019-02-26 | 2019-01-26 | 2018-12-26 | 2018-11-26 | 2018-10-26 | 2018-09-26 | 2018-08-26 | 2018-07-26 | 2018-06-26 | 2018-05-26 | 2018-04-26 | 2018-03-26 | 2018-02-26 | 2018-01-26 | 2017-12-26 | 2017-11-26 | 2017-10-26 | 2017-09-26 | 2017-08-26 | 2017-07-26 | 2017-06-26 | 2017-05-26 | 2017-04-26 | 2017-03-26 | 2017-02-26 | 2017-01-26 | 2016-12-26 | 2016-11-26 | 2016-10-26 | 2016-09-26 | 2016-08-26 | 2016-07-26 | 2016-06-26 | 2016-05-26 | 2016-04-26 | 2016-03-26 | 2016-02-26 | 2016-01-26 | 2015-12-26 | 2015-11-26 | 2015-10-26 | 2015-09-26 | 2015-08-26 | 2015-07-26 | 2015-06-26 | 2015-05-26 | 2015-04-26 | 2015-03-26 | 2015-02-26 | 2015-01-26 | 2014-12-26 | 2014-11-26 | 2014-10-26 | 2014-09-26 | 2014-08-26 | 2014-07-26 | 2014-06-26 | 2014-05-26 | 2014-04-26 | 2014-03-26 | 2014-02-26 | 2014-01-26 | 2013-12-26 | 2013-11-26 | 2013-10-26 | 2013-09-26 | 2013-08-26 | 2013-07-26 | 2013-06-26 | 2013-05-26 | 2013-04-26 | 2013-03-26 | 2013-02-26 | 2013-01-26 | 2012-12-26 | 2012-11-26 | 2012-10-26 | 2012-09-26 | 2012-08-26 | 2012-07-26 | 2012-06-26 | 2012-05-26 | 2012-04-26 | 2012-03-26 | 2012-02-26 | 2012-01-26 | 2011-12-26 | 2011-11-26 | 2011-10-26 | 2011-09-26 | 2011-08-26 | 2011-07-26 | 2011-06-26 | 2011-05-26 | 2011-04-26 | 2011-03-26 | 2011-02-26 | 2011-01-26 | 2010-12-26 | 2010-11-26 | 2010-10-26 | 2010-09-26 | 2010-08-26 | 2010-07-26 | 2010-06-26 | 2010-05-26 | 2010-04-26 | 2010-03-26 | 2010-02-26 | 2010-01-26 | 2009-12-26 | 2009-11-26 | 2009-10-26 | 2009-09-26 | 2009-08-26 | 2009-07-26 | 2009-06-26 | 2009-05-26 | 2009-04-26 | 2009-03-26 | 2009-02-26 | 2009-01-26 | 2008-12-26 | 2008-11-26 | 2008-10-26 | 2008-09-26 | 2008-08-26 | 2008-07-26 | 2008-06-26 | 2008-05-26 | 2008-04-26 | 2008-03-26 | 2008-02-26 | 2008-01-26 | 2007-12-26 | 2007-11-26 | 2007-10-26 | 2007-09-26 | 2007-08-26 | 2007-07-26 | 2007-06-26 | 2007-05-26 | 2007-04-26 | 2007-03-26 | 2007-02-26 | 2007-01-26 | 2006-12-26 | 2006-11-26 | 2006-10-26 | 2006-09-26 | 2006-08-26 | 2006-07-26 | 2006-06-26 | 2006-05-26 | 2006-04-26 | 2006-03-26 | 2006-02-26 | 2006-01-26 | 2005-12-26 | 2005-11-26 | 2005-10-26 | 2005-09-26 | 2005-08-26 | 2005-07-26 | 2005-06-26 | 2005-05-26 | 2005-04-26 | 2005-03-26 | 2005-02-26 | 2005-01-26 | 2004-12-26 | 2004-11-26 | 2004-10-26 | 2004-09-26 | 2004-08-26 | 2004-07-26 | 2004-06-26 | 2004-05-26 | 2004-04-26 | 2004-03-26 | 2004-02-26 | 2004-01-26 | 2003-12-26 | 2003-11-26 | 2003-10-26 | 2003-09-26 | 2003-08-26 | 2003-07-26 | 2003-06-26 | 2003-05-26 | 2003-04-26 | 2003-03-26 | 2003-02-26 | 2003-01-26 | 2002-12-26 | 2002-11-26 | 2002-10-26 | 2002-09-26 | 2002-08-26 | 2002-07-26 | 2002-06-26 | 2002-05-26 | 2002-04-26 | 2002-03-26 | 2002-02-26 | 2002-01-26 | 2001-12-26 | 2001-11-26 | 2001-10-26 | 2001-09-26 | 2001-08-26 | 2001-07-26 | 2001-06-26 | 2001-05-26 | 2001-04-26 | 2001-03-26 | 2001-02-26 | 2001-01-26 | 2000-12-26 | 2000-11-26 | 2000-10-26 | 2000-09-26 | 2000-08-26 | 2000-07-26 | 2000-06-26 | 2000-05-26 | 2000-04-26 | 2000-03-26 | 2000-02-26 | 2000-01-26 | 1999-12-26

Key: Value:

Key: Value:

MESSAGE
DATE 2011-05-15
FROM Ruben Safir
SUBJECT Re: [NYLXS - HANGOUT] C++ Workshop - Notes
From owner-hangout-outgoing-at-mrbrklyn.com Sun May 15 17:32:27 2011
Return-Path:
X-Original-To: archive-at-mrbrklyn.com
Delivered-To: archive-at-mrbrklyn.com
Received: by www2.mrbrklyn.com (Postfix)
id C847DFF9BD; Sun, 15 May 2011 17:32:26 -0400 (EDT)
Delivered-To: hangout-outgoing-at-www2.mrbrklyn.com
Received: by www2.mrbrklyn.com (Postfix, from userid 28)
id B50E2FFA54; Sun, 15 May 2011 17:32:26 -0400 (EDT)
Delivered-To: hangout-at-nylxs.com
Received: from mail1.panix.com (mail1.panix.com [166.84.1.72])
by www2.mrbrklyn.com (Postfix) with ESMTP id 4897DFF9BD
for ; Sun, 15 May 2011 17:32:26 -0400 (EDT)
Received: from panix5.panix.com (panix5.panix.com [166.84.1.5])
by mail1.panix.com (Postfix) with ESMTP id 643461F084;
Sun, 15 May 2011 17:31:54 -0400 (EDT)
Received: by panix5.panix.com (Postfix, from userid 20529)
id 562D824259; Sun, 15 May 2011 17:31:54 -0400 (EDT)
Date: Sun, 15 May 2011 17:31:54 -0400
From: Ruben Safir
To: Hangout
Cc: ruben-at-mrbrklyn.com
Subject: Re: [NYLXS - HANGOUT] C++ Workshop - Notes
Message-ID: <20110515213154.GA24396-at-panix.com>
References: <4DBB2E6A.2070901-at-panix.com>
<20110503030158.GA25747-at-panix.com>
<20110509230647.GA3211-at-panix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20110509230647.GA3211-at-panix.com>
User-Agent: Mutt/1.5.20 (2009-06-14)
Sender: owner-hangout-at-mrbrklyn.com
Precedence: bulk
Reply-To: hangout-at-mrbrklyn.com

We will be creatinf a standard deviation algorithm tonight, so try to
make it.

Ruben


On Mon, May 09, 2011 at 07:06:47PM -0400, Ruben Safir wrote:
> Within the workshop we have played with a rudimentary statistical
> module within out test_del.cpp program. It's been tested fairly
> rigerously and i think it is probably useful to remove the module from
> the parent program and to put it into it's own header file. As such,
> this is the program file, which i want to review for a minute
>
> * =====================================================================================
> *
> * Filename: stats.h
> *
> * Description: simple distribution execise
> *
> * Version: 1.0
> * Created: 04/15/2011 06:12:42 PM
> * Revision: none
> * Compiler: gcc
> *
> * Author: Ruben Safir,
> * Company:
> *
> * =====================================================================================
> */
> #ifndef STATS_H
> #define STATS_H
> #include
> #include
> #include
> #include
> #include
> #include "linklist.h"
>
> /*
> * =====================================================================================
> * Class: Distribution
> * Description: Keeps Track of Distribution of 6's (or anything else)
> * in a series of List
> * =====================================================================================
> */
>
>
> namespace stats{
>
> template
> class Distribution {
> template friend std::ostream & operator<<(std::ostream &, const
> Distribution&);
> public:
> /* ==================== LIFECYCLE
> * ======================================= */
> Distribution (T descr, int occurances = 0);
> Distribution():freq(NULL),occurances(NULL){};
> // Distribution ( const Distribution &other ); /* copy
> // constructor */
> // ~Distribution (); /*
> // destructor */
> /* ==================== ACCESSORS
> * ======================================= */
> T description()const{ return freq;}
> int population()const { return occurances; }
> /* ==================== MUTATORS
> * ======================================= */
> void increase_occ(){ ++occurances; std::cout <<
> "description " << freq << " occurances " << occurances << std::endl; }
> void descrease_occ(){ --occurances; }
> /* ==================== OPERATORS
> * ======================================= */
> //Distribution& operator = ( const Distribution &other
> //); /* assignment operator */
> int operator()(){
> return freq;
> }
> bool operator==(Distribution &tmp){
> if(this->freq == tmp.freq)
> return true;
> return false;
> }
>
> bool operator<(Distribution &tmp){
> if(freq < tmp.freq)
> return true;
> return false;
> }
> chainlist::List< stats::Distribution > * tally; //a list of
> distribution talleys
>
>
>
> protected:
> /* ==================== DATA MEMBERS
> * ======================================= */
> private:
> /* ==================== DATA MEMBERS
> * ======================================= */
> T freq; //description of how many times found in a List
> int occurances; //description of how many times a
> frequency was found in a list
> }; /* ----- end of class Distribution ----- */
>
>
> template
> std::ostream & operator << ( std::ostream & os, const Distribution &
> obj )
> {
> T desc = obj.description();
> int pop = obj.population();
> os << "The Identification of " << desc << " was seen " << pop ;
> return os;
> } /* ----- end of function operator << ----- */
>
> template
> Distribution::Distribution(T descr, int occ): occurances(occ){
> freq = descr;
> }
>
>
> /* Routine to go though a single list and add it to an existing
> * distribution table */
> template
> void mount_individual_data_point(chainlist::List * tabulate,
> chainlist::List > * table);
>
> /* Routine to find all the occurances of a type in a list of lists */
> template
> void take_tally(chainlist::List
> *,chainlist::List > *);
>
>
>
>
>
>
> template
> void take_tally(chainlist::List * tabulate,
> chainlist::List > * table){
> for(tabulate->cursor()=tabulate->front();tabulate->cursor() !=
> tabulate->endd(); tabulate->cursor( tabulate->cursor()->next() ) ){
> //build distribution list
> mount_individual_data_point(tabulate, table);
> }
> //we are at the end of tabulate
> mount_individual_data_point(tabulate, table);
> table->sort(*table);
> }
>
> template
> void mount_individual_data_point(chainlist::List * tabulate,
> chainlist::List > * table){
> int val;
> stats::Distribution * j;
> val = *(tabulate->cursor()->value()); //get a value
> table->cursor()= table->front(); //check to see if the distribution
> list exists
> if(!table->cursor()){ // if not add a distribution table to the List
> of distributions
> j = new stats::Distribution (val);
> table->insert(*j ); //now we have at least one
> delete j;
> j=table->cursor()->value();//and increased its population
> j->increase_occ();
> }else{
> //otherwise search for a distribution node described as value
> table->find_value(val);
> if( table->cursor() ){
> j=table->cursor()->value();//and increase its population
> j->increase_occ();
> }else{//otherwise add a new node
> j = new stats::Distribution (val);
> table->insert( *j ); //now we have one for that value
> delete j;
> j=table->cursor()->value();//and increased its population
> j->increase_occ();
> }
> }
> }
>
>
>
> }
> #endif /* STATS_H */
>
> In total it is about `50 lines in the namespace stats
>
> The class Distribution has 2 basic data members, freq, which is an
> object of type T according to the template, generally a specific data
> point among a set of data, and occurances of type int which holds how
> many times data point freq occurs within a set of data.
>
> so if you have a set of data, chars for example
>
> { a, f, d, r ,t w, d, i, d, k, l, g }
>
> you can create a single distribution object who might hold, for example,
> the letter d and the occurances of d as 3 (there are 3 'd''s in our set.
>
>
> There is a member function to class Distribution called take_tally
> defined as follows
>
> template
> void take_tally(chainlist::List *,chainlist::List > *);
>
> it takes as arguments a pointer to one of our custom lists within
> the chainlist namespace. That needs to have a set of nodes with values
> of type T in each node. That list will be searched for values in order
> to record their frequencies of occurances, unique value recorded in a
> Distribution object, of which a list of those will be stored in the
> chainlist::List of type Distribution which is being passed as the second
> argument, each Distribution Object a value of a node.
>
> The member function mount_individual_data_point actually constructs and
> builds a chainlist::List adding new nodes as needed, and
> increasing the occurance counts for each unique data type.
>
> As it stands, the module is useful, but not nearly as useful as it can
> be. Seperating out this namespace will allow us to greatly develop our
> statistical analysis capabilities of Lists in a uniform API
>
> Ruben
>

  1. 2011-05-02 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  2. 2011-05-06 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] NYLXS Business
  3. 2011-05-06 Ron Guerin <ron-at-vnetworx.net> Re: [NYLXS - HANGOUT] NYLXS Business
  4. 2011-05-06 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Business
  5. 2011-05-09 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] UPDATED! NYLUG Presents: 5/18 -at- 6:30PM Cameron L. Fadjo on Construct, Program, Design: An Introduction to Scratch From the Perspective of Computing and Cognition
  6. 2011-05-09 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Notes
  7. 2011-05-10 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Workshop / Hacking Society (Smalltalk, C++, Python) Tuesday May 10 6:00PM-8:00PM
  8. 2011-05-15 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Notes
  9. 2011-05-16 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Notes
  10. 2011-05-16 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Fwd: [New-York-C-Developers-Group] MongoNYC - MongoDB Conference
  11. 2011-05-16 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  12. 2011-05-18 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [rick-at-linuxmafia.com: [conspire] YouTube downloading software
  13. 2011-05-19 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - creating a distribution list
  14. 2011-05-19 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - creating a distribution list
  15. 2011-05-20 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  16. 2011-05-22 Ron Guerin <ron-at-vnetworx.net> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  17. 2011-05-22 Ron Guerin <ron-at-vnetworx.net> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  18. 2011-05-23 swd <sderrick-at-optonline.net> Subject: [NYLXS - HANGOUT] Membership Dues Address?
  19. 2011-05-23 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] Membership Dues Address?
  20. 2011-05-23 swd <sderrick-at-optonline.net> RE: [NYLXS - HANGOUT] Membership Dues Address?
  21. 2011-05-23 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Template Argument type deterination
  22. 2011-05-23 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] Membership Dues Address?
  23. 2011-05-23 swd <sderrick-at-optonline.net> RE: [NYLXS - HANGOUT] Membership Dues Address?
  24. 2011-05-23 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] Membership Dues Address?
  25. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [ian.bruntlett-at-gmail.com: [accu-general] Free e-book:- The
  26. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Job Fair
  27. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [billy.donahue-at-gmail.com: Re: [mrbrklyn-at-panix.com: Template
  28. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: Re: [mrbrklyn-at-panix.com: Template Argument
  29. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: Re: [mrbrklyn-at-panix.com: Template Argument
  30. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: Re:
  31. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: Re:
  32. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: Re:
  33. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] template implicit converstion
  34. 2011-05-24 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Workshop / Hacking Society (Smalltalk, C++, Python) Tuesday May 24 6:00PM-8:00PM
  35. 2011-05-24 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [mrbrklyn-at-panix.com: (fwd) Template argument determination]
  36. 2011-05-25 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  37. 2011-05-25 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - New Webservices with OKWS -
  38. 2011-05-26 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Presents: 6/15 -at- 6:30PM Robert Menes on Rockbox: Open Source Jukebox Firmware
  39. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Subject: [ruben-at-mrbrklyn.com: Re: [NYLXS - HANGOUT] C++ Workshop - New
  40. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Subject: [ruben-at-mrbrklyn.com: Re: [NYLXS - HANGOUT] C++ Workshop - New
  41. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Subject: [ruben-at-mrbrklyn.com: Re: [NYLXS - HANGOUT] C++ Workshop - New
  42. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Perl Class
  43. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] Perl Class
  44. 2011-05-26 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Postgres Class
  45. 2011-05-26 Paul Robert Marino <prmarino1-at-gmail.com> Re: [NYLXS - HANGOUT] Postgres Class
  46. 2011-05-27 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop - next phase
  47. 2011-05-27 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Fwd: Consensus from last night's meeting
  48. 2011-05-27 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Fwd: Re: [The-New-York-Perl-Meetup-Group] Consensus from last night's
  49. 2011-05-30 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Job opennings
  50. 2011-05-31 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop

NYLXS are Do'ers and the first step of Doing is Joining! Join NYLXS and make a difference in your community today!