Fri Apr 19 06:10:16 2024
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

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

Key: Value:

Key: Value:

MESSAGE
DATE 2011-05-24
FROM Ruben Safir
SUBJECT Subject: [NYLXS - HANGOUT] [ruben@mrbrklyn.com: Re: [mrbrklyn@panix.com: Template Argument
----- Forwarded message from Ruben Safir -----

Date: Tue, 24 May 2011 12:45:30 -0400
From: Ruben Safir
To: Ruben Safir
Cc: Billy
Subject: Re: [mrbrklyn-at-panix.com: Template Argument type deterination]
User-Agent: Mutt/1.5.20 (2009-06-14)

On Tue, May 24, 2011 at 12:40:26PM -0400, Ruben Safir wrote:
> On Tue, May 24, 2011 at 12:25:09PM -0400, Billy Donahue wrote:
> > You didn't provide the constructor of stats::Distribution. If a constructor
> > takes a single argument, it will be considered a conversion operator unless
> > it is marked 'explicit'. Most style guides including Google's urge
> > programmers to mark any single argument constructor as 'explicit', which


BTW the constructor for Distribution has a default argument for the
second param.

> > make it ineligible as a conversion operator.
> >
> > Another thing is that maybe an integer is being used as a pointer or
> > something.
> > I can't really tell exactly through the levels of indirection.
> >
> > I'm uneasy because I don't see a single-arg constructor in the 'gdb' ptype
> > output.
> > But that isn't source code, that's gdb output. Only source code matters.
> > The constructor might have been inlined and optimized away, for example.
> >
> > On Mon, May 23, 2011 at 4:50 PM, Ruben Safir wrote:
> >
>
>
> Ah - thank you for answering. It's driving me crazy and I'm not finding
> help in texts or on the net.
>
> So now I have a new concept, a conversion operator. What is a
> conversion operator.
>
> I tried to make this a simpler example, but it is really just related,
> perhaps not exactly the same.
>
>
> testm(intval) fails to compile in the below example, as I'd expect since
> the param type is stats::Distribution and not an int. But
> testme(intval) does compile with the same kind of promotion
>
> http://www.nylxs.com/docs/workshops/test_del3.cpp.html
>
> http://www.nylxs.com/docs/workshops/test_del3.tgz
>
> There is a difference in this example though because the original
> behavior was demonstated not by a templated function, but a member of a
> templated class.
>
> And I agree the indirection starts to make it very difficult to figure
> out or predict that typename T is being sunstituted for as the template
> class stacks get deeper.
>
> Ruben
> > > ----- Forwarded message from Ruben Safir -----
> > >
> > > Date: Mon, 23 May 2011 16:35:54 -0400
> > > From: Ruben Safir
> > > To: hangout-at-nylxs.com
> > > Subject: Template Argument type deterination
> > > User-Agent: Mutt/1.5.20 (2009-06-14)
> > >
> > >
> > > I'm having trouble understanding why my program is making a change in
> > > the
> > > argument type of my template class function
> > >
> > > template < class T >
> > > void List::find_value(T val)
> > > {
> > > cursor() = front();
> > > while(cursor() != endd()){
> > > if (*(cursor()->value()) == val)
> > > return;
> > > else{
> > > cursor(cursor()->next());
> > > }
> > > }
> > > if(*(endd()->value()) == val)
> > > return;
> > > else{
> > > cursor() = 0; //park the cursor when nothing is found
> > > }
> > > }
> > >
> > >
> > > It's part of a List template class
> > >
> > > I call it from a templated fucntion in a different namespace as follows:
> > >
> > >
> > > tally = new chainlist::List >;
> > > tallies = new chainlist::List< chainlist::List< stats::Distribution
> > > > *>;
> > >
> > > std::cout << "The standard mean for picking 7 is ==> " <<
> > > stats::mean_list(tallies, 7 ) << std::endl;;
> > >
> > > template
> > > float mean_list(chainlist::List<
> > > chainlist::List >* > * tallies, T search_val){
> > > if(tallies->endd() == 0){
> > > std::cout << "Empty List" << std::endl;
> > > return 0.0;
> > > }
> > > int sum = 0;
> > > chainlist::List > * dump;
> > > tallies->cursor() = tallies->front();
> > > while(tallies->cursor() != tallies->endd() ){
> > > //tallies->cursor()->value()->find_value(search_val);
> > > dump = *(tallies->cursor()->value());
> > > //dump->cursor() = dump->endd();
> > > //std::cout << "Testing\n" <<
> > > //*(dump->cursor()->value()) << std::endl;
> > > dump->find_value(search_val);
> > > if(dump->cursor() != NULL)
> > > sum += dump->cursor()->value()->population();
> > > tallies->cursor(tallies->cursor()->next());
> > > }
> > > dump = *(tallies->cursor()->value());
> > > dump->find_value(search_val);
> > > if(dump->cursor() != 0)
> > > sum += dump->cursor()->value()->population();
> > > float tot = (float) sum/(float)(tallies->size());
> > > std::cout << "Mean " << tot << " sum " << sum << " size " <<
> > > tallies->size() << std::endl;
> > > return tot;
> > >
> > > }
> > >
> > > Now T is an integer for mean_list, and the first argument is of type
> > >
> > > chainlist::List< chainlist::List >* > * when
> > > called and the second argument is of type int
> > >
> > > I then pass int search_val to method chainlist::List::find_value(T)
> > > where T = stats::Distribution (where T is an int)
> > > on this line:
> > >
> > > dump->find_value(search_val);
> > >
> > > and that's where the weirdness happens. I have a type mismatch since
> > > I'm sending by value an integer instead of a stats::Distribution
> > >
> > > Instead the program calls the stat::Distribution constructor using 7,
> > > the value of search_val, as an argument redrawing search_val as type
> > > to a Distribution
> > >
> > > :in gdb
> > >
> > >
> > > 312 void List::find_value(T val)
> > > 313 {
> > > 314 cursor() = front();
> > > 315 while(cursor() != endd()){
> > > 316 if (*(cursor()->value()) == val)
> > > 317 return;
> > > 318 else{
> > > 319 cursor(cursor()->next());
> > > 320 }
> > > 321 }
> > > 322 if(*(endd()->value()) == val)
> > > 323 return;
> > > 324 else{
> > > 325 cursor() = 0; //park the cursor when nothing is found
> > > 326 }
> > > 327 }
> > >
> > > chainlist::List >::find_value (this=0x804f008,
> > > val=...) at linklist.h:314
> > > (gdb) ptype val
> > > type = class stats::Distribution {
> > > public:
> > > chainlist::List > *tally;
> > > private:
> > > int freq;
> > > int occurances;
> > >
> > > public:
> > > void Distribution(int, int);
> > > void Distribution(void);
> > > int description(void) const;
> > > int population(void) const;
> > > void increase_occ(void);
> > > void descrease_occ(void);
> > > int operator()(void);
> > > bool operator==(stats::Distribution &);
> > > bool operator<(stats::Distribution &);
> > > float stddev(chainlist::List > *);
> > > }
> > >
> > >
> > > What rule for Template argument matching allows for this kind of magic?
> > >
> > >
> > > ----- End forwarded message -----
> > >
> > > --
> > > http://www.mrbrklyn.com - Interesting Stuff
> > > http://www.nylxs.com - Leadership Development in Free Software
> > >
> > > So many immigrant groups have swept through our town that Brooklyn, like
> > > Atlantis, reaches mythological proportions in the mind of the world - RI
> > > Safir 1998
> > >
> > > http://fairuse.nylxs.com DRM is THEFT - We are the STAKEHOLDERS - RI
> > > Safir 2002
> > >
> > > "Yeah - I write Free Software...so SUE ME"
> > >
> > > "The tremendous problem we face is that we are becoming sharecroppers to
> > > our own cultural heritage -- we need the ability to participate in our own
> > > society."
> > >
> > > "> I'm an engineer. I choose the best tool for the job, politics be
> > > damned.<
> > > You must be a stupid engineer then, because politcs and technology have
> > > been attached at the hip since the 1st dynasty in Ancient Egypt. I guess
> > > you missed that one."
> > >
> > > ? Copyright for the Digital Millennium
> > >
> >
> >
> >
> > --
> > ?n??uop ?ll?q
>
> --
> http://www.mrbrklyn.com - Interesting Stuff
> http://www.nylxs.com - Leadership Development in Free Software
>
> So many immigrant groups have swept through our town that Brooklyn, like Atlantis, reaches mythological proportions in the mind of the world - RI Safir 1998
>
> http://fairuse.nylxs.com DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002
>
> "Yeah - I write Free Software...so SUE ME"
>
> "The tremendous problem we face is that we are becoming sharecroppers to our own cultural heritage -- we need the ability to participate in our own society."
>
> "> I'm an engineer. I choose the best tool for the job, politics be damned.<
> You must be a stupid engineer then, because politcs and technology have been attached at the hip since the 1st dynasty in Ancient Egypt. I guess you missed that one."
>
> ? Copyright for the Digital Millennium

--
http://www.mrbrklyn.com - Interesting Stuff
http://www.nylxs.com - Leadership Development in Free Software

So many immigrant groups have swept through our town that Brooklyn, like Atlantis, reaches mythological proportions in the mind of the world - RI Safir 1998

http://fairuse.nylxs.com DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002

"Yeah - I write Free Software...so SUE ME"

"The tremendous problem we face is that we are becoming sharecroppers to our own cultural heritage -- we need the ability to participate in our own society."

"> I'm an engineer. I choose the best tool for the job, politics be damned.<
You must be a stupid engineer then, because politcs and technology have been attached at the hip since the 1st dynasty in Ancient Egypt. I guess you missed that one."

? Copyright for the Digital Millennium

----- End forwarded message -----

  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!