 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
arindam.mukerjee@gmail.co Guest
|
Posted: Fri Mar 25, 2005 12:02 pm Post subject: Learning the new C++ |
|
|
Some time back I read a posting on this group "Is Effective C++ still
useful". Scott Meyers' in reply to one of the postings actually
revealed a tentative TOC of the 3rd edition of EC++ (which is due for
release some time soon??). I have been working with C++ on Win32
systems and admittedly I have not kept myself updated on the evolution
of C++ as a standard or technology (recently I tried some old style K&R
C). And I want to start on the road to making amends for these foibles
by trying to learn a few things.
I have been intrigued by Boost and TRL/TRI (???) finding mention in
that TOC. I mean intrigued by the fact that they are important enough
and I almost never and absolutely never heard of Boost and TRI (TRL??)
respectively. I remember reading an article from C++ Report by Herb
Sutter in More C++ Gems, where he said "Familiarize yourself with the
BOOSE Programming Environment". Is BOOST a descendant of BOOSE with a
larger brain size and an opposable thumb? The name sounds promising.
And yes, what is TRI (TRL??) ??
Sorry for asking so many seriously silly questions. But my Alzheimer's
is back for a few minutes and I am supposed to be asking a few more of
them. My newsagent told me that C++ Report has ceased publication. Is
that true? I have no knowledge about these publications (cuj, cppreport
et al.) and planned to subscribe to them. So I am a little nonplussed.
Cheers,
Arindam
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
David Abrahams Guest
|
Posted: Sat Mar 26, 2005 4:50 am Post subject: Re: Learning the new C++ |
|
|
[email]arindam.mukerjee (AT) gmail (DOT) com[/email] writes:
| Quote: | I have been intrigued by Boost and TRL/TRI (???) finding mention in
that TOC. I mean intrigued by the fact that they are important enough
and I almost never and absolutely never heard of Boost and TRI (TRL??)
respectively. I remember reading an article from C++ Report by Herb
Sutter in More C++ Gems, where he said "Familiarize yourself with the
BOOSE Programming Environment". Is BOOST a descendant of BOOSE with a
larger brain size and an opposable thumb? The name sounds promising.
And yes, what is TRI (TRL??) ??
|
TR1 == the C++ Standard Committee's
_1_st _T_echnical _R_eport.
(http://www.open-std.org/jtc1/sc22/wg21/)
Boost == http://www.boost.org
I don't know what BOOSE might be, but I can tell you where the name
"Boost" came from. It originally came out of a hallway joke when Java
was at the height of its hype. When considering how to generate that
hype for C++, someone thought that beverages might be the key.
"Booze," of course, is better than "java." "Booze" later morphed into
"Boost." At least, that's how I heard it.
it's-still-not-april-yet-ly y'rs,
dave
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Pete Becker Guest
|
|
| Back to top |
|
 |
John Ratcliffe Guest
|
Posted: Sat Mar 26, 2005 9:51 am Post subject: Re: Learning the new C++ |
|
|
| Quote: | Some time back I read a posting on this group "Is Effective C++ still
useful". Scott Meyers' in reply to one of the postings actually
revealed a tentative TOC of the 3rd edition of EC++ (which is due for
release some time soon??). I have been working with C++ on Win32
systems and admittedly I have not kept myself updated on the evolution
of C++ as a standard or technology (recently I tried some old style K&R
C). And I want to start on the road to making amends for these foibles
by trying to learn a few things.
|
I guess you have spent a lot of using Microsoft libraries like ATL and MFC.
These are not "C++ the language" but you can't completely ignore them if you
have
had to develop with VC++. The venerable VC++ 6.0 lagged behind C++
standards.
If my guesses are true then you will probably need to start by getting a
more standards
compliant version of C++ and become familiar with the use of libraries and
features that were
not particularly well supported under VC++ 6.0, like the STL and templates.
You can download the MS C++ for Visual Studio 2005 for free. I assume that
this is at least as standards compliant
as VC++ 7.1. Be aware that this compiler supports a lot of non-Standard C++
features included for .NET and you will need
to run it under the .NET Framework.
If you want to start by focussing more on using Standard C++ better, then
get hold of the free Gnu C++ compiler
that comes in various disguises...MinGW, cygwin or with just about any
professional linux distribution.
| Quote: | I have been intrigued by Boost and TRL/TRI (???) finding mention in
that TOC. I mean intrigued by the fact that they are important enough
and I almost never and absolutely never heard of Boost and TRI (TRL??)
respectively. I remember reading an article from C++ Report by Herb
Sutter in More C++ Gems, where he said "Familiarize yourself with the
BOOSE Programming Environment". Is BOOST a descendant of BOOSE with a
larger brain size and an opposable thumb? The name sounds promising.
And yes, what is TRI (TRL??) ??
|
I recall the BOOSE article and I am sure I still have it somewhere but it
had
nothing to with BOOST. BOOSE == "Bjarne's Object-Oriented Software
Environment"(?) IIRC and I
think it was (or is?) a (C++)++. BOOST is a library of C++ utilities and
tools that are written by
many folk who are closely involved with the C++ standards. Content from the
library is
being put forward for inclusion in the next round of C++ Standards.
BOOST is worth getting to know. It contains useful stuff you might want to
make part of your
toolkit.
TR1 I think refers to the Technical Report that is the proposal for the
latest Standards, including
the BOOST contributions.
| Quote: | Sorry for asking so many seriously silly questions. But my Alzheimer's
is back for a few minutes and I am supposed to be asking a few more of
them. My newsagent told me that C++ Report has ceased publication. Is
that true? I have no knowledge about these publications (cuj, cppreport
et al.) and planned to subscribe to them. So I am a little nonplussed.
|
C++ Report has been defunct for some time. The C/C++ Users Journal is a
decent alternative. If you
wish to keep up with current use of "Standard" C++ then this is a good
publication to read.
If you are focussed on the Microsoft world then there are articles about
using Microsoft's C++ and .NET
in the MSDN journal. Note that this magazine is not dedicated solely to C++
so expect only 1 or 2 articles
per issue, max.
To bring yourselve up to date you might wish to invest in the latest
versions of the C++ Standard manual and
various publications around it from Bjarne Stoustrup. Not always light
reading though.
If you wish to learn more about using C++ then books by Scott Meyers, Herb
Sutter and
Alexender Alexandrescu are worth checking out. These are written in nice
idea size chunks that you can dip into
during your Alzheimer's-free moments. They contain a lot of good ideas,
discussion and examples on using
C++ better. Get the most recent editions, but read them critically. Even
gurus are not omnipotent! :-)
John
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Carl Barron Guest
|
Posted: Sat Mar 26, 2005 5:28 pm Post subject: Re: Learning the new C++ |
|
|
In article <1111750243.687053.319160 (AT) l41g2000cwc (DOT) googlegroups.com>,
<arindam.mukerjee (AT) gmail (DOT) com> wrote:
| Quote: | have been intrigued by Boost and TRL/TRI (???) finding mention in
that TOC. I mean intrigued by the fact that they are important enough
and I almost never and absolutely never heard of Boost and TRI (TRL??)
respectively. I remember reading an article from C++ Report by Herb
Sutter in More C++ Gems, where he said "Familiarize yourself with the
BOOSE Programming Environment". Is BOOST a descendant of BOOSE with a
larger brain size and an opposable thumb? The name sounds promising.
And yes, what is TRI (TRL??) ??
Boost is a publicly available library of libraries [www.boost.org] |
that enhance the standard C++ library and add many useful features and
some better mousetraps than some standard library items. I don't think
boost has anything to do do with boose,but I have not heard of bosse
before.
TR1 is technical report #1 on the C++ library. It contains some fixes
to the standard, addittions of some items like unsorted [hashed]
containers, generalized functors,more smart pointers, etc.
Yes C++Report is history. You might want to visit CUJ's experts forum
on cuj.com. It has some interesting articles by some former
contributers to C++report...
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Alf P. Steinbach Guest
|
Posted: Sat Mar 26, 2005 5:42 pm Post subject: Re: Learning the new C++ |
|
|
* Pete Becker:
| Quote: | arindam.mukerjee (AT) gmail (DOT) com wrote:
TRL/TRI (???)
It's TR1: that's a digit one at the end. Officially it's the "Technical
Report on C++ Library Extensions". Since there could be another one
later, it's referred to informally as TR1. The latest revision is
available here: www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1745.pdf
|
Thanks for that reference.
I note that there's a kind of typelist, Very Good, although it seems rather
strange to have a standard library class that _requires_ special core language
support, instead of defining such core language support ('tuple_size' and
'tuple_element' would more naturally, IMHO, be language features with names
decoupled from "tuple", and free template type arg list denoted by ellipsis).
On the other hand, still lacking pi and e constants, UnGood.
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Pete Becker Guest
|
Posted: Sun Mar 27, 2005 2:21 am Post subject: Re: Learning the new C++ |
|
|
Carl Barron wrote:
| Quote: | TR1 is technical report #1 on the C++ library. It contains some fixes
to the standard
|
I hope not. <g> Technical Reports do not affect the standard. TR1 is an
indication of the direction we're thinking of going. There's a good
chance that something along the lines of what's in TR1 will be added to
the standard in a future revision.
--
Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Pete Becker Guest
|
Posted: Sun Mar 27, 2005 2:22 am Post subject: Re: Learning the new C++ |
|
|
Alf P. Steinbach wrote:
| Quote: | I note that there's a kind of typelist, Very Good, although it seems rather
strange to have a standard library class that _requires_ special core language
support, instead of defining such core language support
|
I'm not sure what you're saying. tuple can be implemented in
standard-conforming C++. No language support required.
('tuple_size' and
| Quote: | 'tuple_element' would more naturally, IMHO, be language features with names
decoupled from "tuple", and free template type arg list denoted by ellipsis).
|
Another perspective is that if you can do it in the library you don't
need to change the language.
| Quote: | On the other hand, still lacking pi and e constants, UnGood.
|
Nobody proposed 'em.
--
Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
arindam.mukerjee@gmail.co Guest
|
Posted: Sun Mar 27, 2005 2:24 am Post subject: Re: Learning the new C++ |
|
|
Thanks indeed John, and everyone else. I have been trying out the gnu
C++ compiler on my Linux box. It's a lot different from MS VC++ 6.0 but
it's good fun. I still feel the VC++ 6.0 IDE is one of the best I have
worked with. The .NET IDE is too heavy and not nearly as minimal and
nifty. I have been through Scott Meyers' EC++ and MEC++. I am onto his
Effective STL. I have also gone through Herb Sutters' articles, all of
them that came in More C++ Gems. Would look up Alexandrescu - Modern
C++ Design or something like that is it?
Thanks indeed.
Cheers,
Arindam
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
christopher diggins Guest
|
Posted: Sun Mar 27, 2005 10:28 am Post subject: Re: Learning the new C++ |
|
|
| Quote: | I have been intrigued by Boost and TRL/TRI (???) finding mention in
that TOC. I mean intrigued by the fact that they are important enough
and I almost never and absolutely never heard of Boost and TRI (TRL??)
respectively. I remember reading an article from C++ Report by Herb
Sutter in More C++ Gems, where he said "Familiarize yourself with the
BOOSE Programming Environment". Is BOOST a descendant of BOOSE with a
larger brain size and an opposable thumb? The name sounds promising.
And yes, what is TRI (TRL??) ??
|
Boose was an april fool's joke from 1998:
Check out: http://www.gotw.ca/publications/mill03.htm .
Some good quotes:
"Improving Teamwork. BOOSE is inherently team-oriented. It encourages
greater-than-usual camaraderie on software development projects, although
excessive fraternization is sometimes a problem."
" Polymorphism. BOOSE has unparalleled support for polymorphism. No matter
how well you know a developer, chances are that BOOSE will reveal another
side to his or her personality."
"Different developers have been found to respond to BOOSE in different ways,
and it's true that some developers have less-than-positive reactions: some
can become angry and irritable; others have been observed to engage in
unusual and risky programming behaviour; a few become downright
unpredictable."
I admit though, Herb even had me fooled for a second there.
Christopher Diggins
http://www.ootl.org
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Alf P. Steinbach Guest
|
Posted: Sun Mar 27, 2005 10:28 am Post subject: Re: Learning the new C++ |
|
|
* Pete Becker:
| Quote: | Alf P. Steinbach wrote:
I note that there's a kind of typelist, Very Good, although it seems rather
strange to have a standard library class that _requires_ special core language
support, instead of defining such core language support
I'm not sure what you're saying. tuple can be implemented in
standard-conforming C++. No language support required.
|
Please explain. I don't understand this. Or, I'm misunderstanding
something.
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Pete Becker Guest
|
Posted: Mon Mar 28, 2005 1:43 am Post subject: Re: Learning the new C++ |
|
|
Alf P. Steinbach wrote:
| Quote: | * Pete Becker:
Alf P. Steinbach wrote:
I note that there's a kind of typelist, Very Good, although it seems rather
strange to have a standard library class that _requires_ special core language
support, instead of defining such core language support
I'm not sure what you're saying. tuple can be implemented in
standard-conforming C++. No language support required.
Please explain. I don't understand this. Or, I'm misunderstanding
something.
|
I'm not sure how to say it any differently: tuple is a template
specified in TR1. The code to implement it can be written without
relying on any "special" language features, just plain old C++. Why do
you say that it "_requires_ special core language support"?
--
Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
David Abrahams Guest
|
Posted: Mon Mar 28, 2005 11:58 am Post subject: Re: Learning the new C++ |
|
|
Pete Becker <petebecker (AT) acm (DOT) org> writes:
| Quote: | Alf P. Steinbach wrote:
* Pete Becker:
Alf P. Steinbach wrote:
I note that there's a kind of typelist, Very Good, although it seems rather
strange to have a standard library class that _requires_ special core language
support, instead of defining such core language support
I'm not sure what you're saying. tuple can be implemented in
standard-conforming C++. No language support required.
Please explain. I don't understand this. Or, I'm misunderstanding
something.
I'm not sure how to say it any differently: tuple is a template
specified in TR1. The code to implement it can be written without
relying on any "special" language features, just plain old C++. Why do
you say that it "_requires_ special core language support"?
|
The design is based on some "plain old" C++ code we've had working in
the Boost libraries for years now, FWIW. If you need proof, just go
look there.
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Pete Becker Guest
|
Posted: Mon Mar 28, 2005 5:31 pm Post subject: Re: Learning the new C++ |
|
|
David Abrahams wrote:
| Quote: |
The design is based on some "plain old" C++ code we've had working in
the Boost libraries for years now, FWIW. If you need proof, just go
look there.
|
I don't need proof: I've implemented it.
--
Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
Craig Nunemaker Guest
|
Posted: Mon Mar 28, 2005 11:44 pm Post subject: Re: Learning the new C++ |
|
|
I have switched from Microsoft VC++ 6.0 to Dev-C++ produced by Bloodshed
software and licenced open source. It uses the mingw gnu compiler 3.4.2
and has a very advanced IDE that makes it well worth a look. The only
problem I have had is that it's Class Browser is not as advanced as
MSDEV (for instance every now and then it will list a class function
twice-once for its declaration and once for definition). I also missed
the globals folder on MSDEV where all the functions that didn't have a
class were put in a special folder like under the class browser. On the
plus it can fully import your ms projects.
http://www.bloodshed.net
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|