Fri Nov 22 00:37:24 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 2010-03-01

HANGOUT

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

Key: Value:

Key: Value:

MESSAGE
DATE 2010-03-04
FROM Ruben Safir
SUBJECT Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics
>
> Explicit Cast:
>
> For a variety of reasons, one might need to cast data intentionally.
> There are two styles to do this, the older C style and the newer C++
> standard. First the new style.
>
> The kinds of New Style Casting:
>
> static_cast, dynamic_cast, const_cast, and reinterpret_cast. Syntax for
> these casts follows the following conventions:
>
> int int_variable = static_cast(char_variable);
>
> cast_name(variable) in the general form. I'm not going to yet
> explain the differences at this point, but will come back to it soon
> enough. I will say that the result is to forcefully convert the data
> from one type to another, in the case above, from a char to a int.
>
> In the C style, parenthesis are used to make the cast:
>
> char letter;
> int var = (int) letter;
>
> casts the value of letter to an int.
>
>
> Aggregate Data Types:
> Most of the action involving your program will involve more than a single
> indepent integer, char or float. Groups of data types together creates
> most of the useful. C and C++ gives multiple tools for handling these
> agregate data types. The key element is the C style array. An array's
> syntax is declared, defined and assigned like the elementry data types,
> and looks like this, using the square bracket operator:
>
> char mystraing[]; // Declares an array of chars without dimension
> char mystring[100]; //Declares an array of chars with 100 chars within
> //it
> char * mystring[]; //Declares an array of pointers to chars similar to
> //the paramenter of main char * argv[];
>
>
> One can assign and declare your array with a single statement. When
> doing so, C and C++ has several syntax tools to help you create many
> necessecary subtle data contructions that you need for your programming.
> The comments below outlines these examples and behaviors.
>
> char mystring[] = "This is our first string"; //Declares a char array of
> //27 chars which is terminated with a null value
>
> char mystring[] = {'a','b','c','d','e'}; //Creates an array of 5 chars.
>
> int matrix[100] = {1.2,3,4,5}; //This creates an array of 100
> //integers filling the first 5 locations with 1,2,3,4,5
> //and then adds 0's or NULLS to the remaining 95 indexed
> //locations
>
> int matrix[100] = {'1'.'2','3','4','5'}; //This creates an array of 100
> //integers where the equivilent of the short
> //intergers which represent the ascii values for
> //the characters '1' and '2' etc, and then fills
> //the rest of the array with zeros. It is
> //similar to the next statement (but not
> //exactly)
>
> char matrix[100] = "12345"; // This example creates a string literal
> //"12345" which ends in a null, and then
> //pads the rest of the array with nulls. The
> //result is the same as above, but via a
> //different mechanism because all string
> //literals end in null. The above examples
> //has implicit promotion from char to integer
> //types. This example must be a char type,
> //otherwise the the compiler will not accept
> //the assignment. Furthmore, only the care
> //type will print a string when asked. The
> //top example needs an explicit cast. See
> //and thry this example for a demonstration.
>
> #include
> using namespace std;
>
> int main(int argc, char * argv[]){
> unsigned short int matrix[100] = {'1','2','3','4','5'};
> char matrix2[100] = "12345";
> cout << "First Martix "<< matrix << endl;
> cout << "Second Matrix " << matrix2 << endl;
> for(int i=0;i<5;i++){
> cout << matrix[i] << endl;
> }
> for(int i=0;i<5;i++){
> cout << static_cast(matrix[i]) << endl;
> }
> return 0;
> }
>
> ruben-at-www2:~/cplus> g++ -Wall test.cc -o test.bin
> You have mail in /var/mail/ruben
> ruben-at-www2:~/cplus>
> ruben-at-www2:~/cplus> ./test.bin
> First Martix 0xbfc98c3c
> Second Matrix 12345
> 49
> 50
> 51
> 52
> 53
> 1
> 2
> 3
> 4
> 5
> ruben-at-www2:~/cplus>
>
>
> Notice that the second matrix prints a seemingly random number. That
> number is actually the memory address that matrix points at. It acts
> like a pointer in the context of cout. The for loop itself will be
> looked at more closely when we discuss flow control operators.
>
> We can not mix data types in an array. An array is defined by as a
> single data type only.
>
> Arrays are indexed starting with zero. You have to know the size of
> your arrays, otherwise you can walk past the end of them into the
> undefined sections of your memory. Usually this will cause a
> segmentation fault, but not always. Arrrays have syntax that allow them
> to be converted to pointers. Pointers is the next section, after we
> look at arrays, and we wil look closely at pointers and arrays at soon.
>
> Arrays can have two dimensions like this:
>
> float matrix[4][7];
>
> That declares an array of 4 columns of nine rows (c before r),
>
> for example, we can initialize such an array like this:
>
> float matrix[4][7] = {
> { 2.11, 2.22, 2.33, 2.44, 2.55, 2.66, 2.77 },
> { 3.11, 3.33, 3.33, 3.44, 3.55, 3.66, 3.77 },
> { 4.11, 4.44, 4.33, 4.44, 4.55, 4.66, 4.77 },
> { 5.11, 5.55, 5.33, 5.44, 5.55, 5.66, 5.77 }
> };
>
>
> or you can drop in inside curly braces and the compiler will do the
> rest..
>
>
> float matrix[4][7] = {
> 2.11, 2.22. 2.33, 2.44, 2.55, 2.66, 2.77 ,
> 3.11, 3.33. 3.33, 3.44, 3.55, 3.66, 3.77,
> 4.11, 4.44. 4.33, 4.44, 4.55, 4.66, 4.77 ,
> 5.11, 5.55. 5.33, 5.44, 5.55, 5.66, 5.77
> };
>
>
> Although we stupid humans conceptualize this as columns and rows, in RAM
> this is stored as a single linear block of memory.
>
> There are alot of minefields with two dimensional arrays, and this
> program shows some of them:
>
> #include
> using namespace std;
>
> int main(int argc, char * argv[]){
> unsigned short int matrix[100] = {'1','2','3','4','5'};
> char matrix2[1000] = "12345";
> float dmatrix[4][7] = {
> { 2.11, 2.22, 2.33, 2.44, 2.55, 2.66, 2.77 },
> { 3.11, 3.33, 3.33, 3.44, 3.55, 3.66, 3.77 },
> { 4.11, 4.44, 4.33, 4.44, 4.55, 4.66, 4.77 },
> { 5.11, 5.55, 5.33, 5.44, 5.55, 5.66, 5.77 }
> };
>
> float * track;
>
>
> cout << "First Martix "<< matrix << endl;
> cout << "Second Matrix " << matrix2 << endl;
> for(int i=0;i<5;i++){
> cout << matrix[i] << endl;
> }
> for(int i=0;i<5;i++){
> cout << static_cast(matrix[i]) << endl;
> }
> for(int i=0;i<100;i++){
> cout << &matrix[i] << endl;
> }
> for(int i=0;i<5;i++){
> cout << "STRING " << reinterpret_cast(&matrix2[i]) << endl;
> }
> track = *dmatrix;
> float * last = &dmatrix[3][6];
>
> for(int count = 0; track <= last; track++){
> cout << "Position ==>" << count++ << "\tMemory Location==>"<" << *track <> }
> return 0;
> }
>
>

I overlooked integrating the discussion about arrays and pointers so let
me tack this onto this section of the discussion:


The difficulty in this example code is that the symbol for a
multidimensional array is often thought to be equal to a pointer.
It isn't. Array names are implicitely converted to pointers
as needed by the compiler. But with a multi-dimensional array, the
symbol converts to a ***pointer to an array of some type***, which is
not specifically the same as a pointer to a pointer, or even a pointer
to the beginning address of the two dimensional array. So examining the
statement:

track = *dmatrix;

We are attempting to aquire the first address of the entire
multi-dimensional array. The safest and most obvious way of doing this
is to just index the first position and request the address. So a
functionally equivilent statement is as follows:

track = &dmatrix[0][0];

There is a difference, however, between the two statements. In the
first statement *dmatrix is processing this statement in the following
order:

1) First dmatrix is evaluated, which is an a two dimensional array.


2) The compiler implicitly converts the array symbol dmatrix to a
pointer to an array and returns the address of the first element of the array
and its type. This first element is a pointer to an array of floats, not a pointer
to a pointer of floats. Though similar, they are not the same. ,
The returned address is for the 1st element of the first
array, the column is an array pointer to the second array, the row.
So it returns a pointer to an array of floats.

3) Then this pointer to an array of floats address is derefenced because of the
(*) operator to the value of the first position of the first array in
the second dimension, the row array.

3) The compiler then again implicitedly converts that
array value to the pointer of the address of the first float element of the
second dimension.

a third way of gaining this function is as follows:

track = dmartix[0];

If your not convinced that the array symbol and the pointer symbol are
not the same, use the sizeof operator to return the size of each, and
you will see the compiler clearly knows when it is dealing with an array
pointer rather than a pointer to a data type.

#include
using namespace std;

int main(int argc, char * argv[]){
unsigned short int matrix[100] = {'1','2','3','4','5'};
char matrix2[1000] = "12345";
float dmatrix[4][7] = {
{ 2.11, 2.22, 2.33, 2.44, 2.55, 2.66, 2.77 },
{ 3.11, 3.33, 3.33, 3.44, 3.55, 3.66, 3.77 },
{ 4.11, 4.44, 4.33, 4.44, 4.55, 4.66, 4.77 },
{ 5.11, 5.55, 5.33, 5.44, 5.55, 5.66, 5.77 }
};
float * track;


cout << "First Martix "<< matrix << endl;
cout << "Second Matrix " << matrix2 << endl;
for(int i=0;i<5;i++){
cout << matrix[i] << endl;
}
for(int i=0;i<5;i++){
cout << static_cast(matrix[i]) << endl;
}
for(int i=0;i<100;i++){
cout << &matrix[i] << endl;
}
for(int i=0;i<5;i++){
cout << "STRING " << reinterpret_cast(&matrix2[i]) << endl;
}

track = *dmatrix;
float * last = &dmatrix[3][6];

for(int count = 0; track <= last; track++){
cout << "Position with track ==>" << count++ << "\tMemory Location==>"<" << *track < }

float * track2 = dmatrix[0];
float * last2 = &dmatrix[3][6];

for(int count = 0; track2 <= last2; track2++){
cout << "Position with track2 ==>" << count++ << "\tMemory Location==>"<" << *track2 < }

int size_dmatrix = sizeof(dmatrix);
int size_dmatrix_row = sizeof(dmatrix[0]);
int size_track = sizeof(track);
int size_track2 = sizeof(track2);
cout << endl << endl << "Size of Data Types:\ndmatrix ==>" << size_dmatrix << endl;
cout << "Size of Track ==>" << size_track << endl;
cout << "Size of Track2==>" << size_track2 << endl;
cout << "Size of dmatix[0] ==>" << size_dmatrix_row << endl;



return 0;
}





> -

  1. 2010-03-01 Paul Robert Marino <prmarino1-at-gmail.com> Re: [NYLXS - HANGOUT] this should not get through
  2. 2010-03-01 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Catching the streams from Flash Video
  3. 2010-03-02 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] [ruben-at-mrbrklyn.com: [jim-at-well.com: [conspire] open source
  4. 2010-03-02 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Phone Tech Wars
  5. 2010-03-02 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Workshop / Hacking Society (Smalltalk, C++, Python) Tuesday March 2 6:00PM-8:00PM
  6. 2010-03-02 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] this should not get through
  7. 2010-03-02 Paul Robert Marino <prmarino1-at-gmail.com> Re: [NYLXS - HANGOUT] this should not get through
  8. 2010-03-02 Paul Robert Marino <prmarino1-at-gmail.com> Re: [NYLXS - HANGOUT] this should not get through
  9. 2010-03-03 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics - agregate data types
  10. 2010-03-03 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics - agregate data
  11. 2010-03-03 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics - agregate data
  12. 2010-03-04 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics
  13. 2010-03-05 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics
  14. 2010-03-05 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] AlphaOne Labs invited you to the event "Ask-a-Sysadmin
  15. 2010-03-06 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Professors Open Source Summer Experience -at-RIT
  16. 2010-03-07 Kevin Mark <kevin.mark-at-verizon.net> Re: [NYLXS - HANGOUT] Professors Open Source Summer Experience -at-RIT
  17. 2010-03-09 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics Structs Unions and
  18. 2010-03-09 From: "Beau Gould" <bg-at-capitalmarketsp.com> Subject: [NYLXS - HANGOUT] [JOB] System Administrator, NYC to 90k
  19. 2010-03-09 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] [JOB] System Administrator, NYC to 90k
  20. 2010-03-10 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basics Structs Unions
  21. 2010-03-13 redpill <redpill-at-rcn.com> Subject: [NYLXS - HANGOUT] NYLXS Library?
  22. 2010-03-13 redpill <redpill-at-rcn.com> Subject: [NYLXS - HANGOUT] NYLXS Library?
  23. 2010-03-14 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  24. 2010-03-14 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  25. 2010-03-15 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  26. 2010-03-15 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  27. 2010-03-15 Contrarian <adrba-at-nyct.net> Re: [NYLXS - HANGOUT] NYLXS Library?
  28. 2010-03-15 Contrarian <adrba-at-nyct.net> Re: [NYLXS - HANGOUT] NYLXS Library?
  29. 2010-03-15 Contrarian <adrba-at-nyct.net> Re: [NYLXS - HANGOUT] NYLXS Library?
  30. 2010-03-15 Contrarian <adrba-at-nyct.net> Re: [NYLXS - HANGOUT] NYLXS Library?
  31. 2010-03-15 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  32. 2010-03-15 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  33. 2010-03-15 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  34. 2010-03-16 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop _ Syntax Basic: Flow Control Structures
  35. 2010-03-16 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Workshop / Hacking Society (Smalltalk, C++, Python) Tuesday March 16 6:00PM-8:00PM
  36. 2010-03-16 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  37. 2010-03-16 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  38. 2010-03-17 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop - Switches and Break
  39. 2010-03-17 einker <eminker-at-gmail.com> Subject: [NYLXS - HANGOUT] Revolution OS at Darress Theatre
  40. 2010-03-20 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] Free Software Round Table TONIGHT at 10PM (live streaming)
  41. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  42. 2010-03-21 Kevin Mark <kevin.mark-at-verizon.net> Re: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  43. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  44. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  45. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  46. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  47. 2010-03-21 Kevin Mark <kevin.mark-at-verizon.net> Re: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  48. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] C++ Workshop - Syntax Basics -- functions
  49. 2010-03-21 Ruben Safir <mrbrklyn-at-panix.com> Subject: [NYLXS - HANGOUT] Tina Gasperson commented on Darin Gasperson's status...
  50. 2010-03-21 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  51. 2010-03-22 From: "Beau Gould" <bg-at-capitalmarketsp.com> Subject: [NYLXS - HANGOUT] [JOB] Systems Engineer, NYC | 90-100k
  52. 2010-03-23 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  53. 2010-03-24 einker <eminker-at-gmail.com> Subject: [NYLXS - HANGOUT] Free Software Award Winners Announced
  54. 2010-03-24 einker <eminker-at-gmail.com> Subject: [NYLXS - HANGOUT] Free Software Award Winners Announced
  55. 2010-03-25 redpill <redpill-at-rcn.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  56. 2010-03-25 Ruben Safir <mrbrklyn-at-panix.com> Re: [NYLXS - HANGOUT] NYLXS Library?
  57. 2010-03-25 swd <sderrick-at-optonline.net> RE: [NYLXS - HANGOUT] NYLXS Library?
  58. 2010-03-30 Ron Guerin <ron-at-vnetworx.net> Subject: [NYLXS - HANGOUT] NYLUG Workshop / Hacking Society (Smalltalk, C++, Python) Tuesday March 30 6:00PM-8:00PM

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