[boost] Re: boost::pool feature requests

2002-11-23 Thread Alberto Barbati
Thanks Steve, for considering my issues.


4) what's the use of ordered_alloc/ordered_free? I made a few tests and 
they are indeed a bit slower than regular alloc/free, without any 
apparent advantage. Am I missing something?

Keeping the free list ordered allows algorithms that traverse the free list
along with the memory owned by pool to work correctly/more efficiently:
  1) array allocations will be more efficient (pool_allocator keeps its free
list ordered, whereas fast_pool_allocator does not)
  2) release_memory() will work correctly
  3) object_pool uses the ordered property to efficiently implement the
automatic destructor calls for allocated objects


Sorry to bother you, I have a few more questions on this topic:

1) from what I understand, the ordered property depends on the fact 
that allocation and deallocation calls are correctly paired, in the 
sense that if I always call free() in the opposite order of the 
respective malloc() calls the pool is still considered to be ordered. Is 
this right? In this special case, would I get a benefit by calling 
ordered_malloc()/ordered_free()?

2) can ordered_malloc() be called on a non-ordered pool? Does the call 
make the pool ordered? In this case, is the complexity still O(1)?

3) can ordered_free() be called on a non-ordered pool? Does the call 
make the pool ordered?

4) ordered_malloc() is described as merges the free list to preserve 
order, does this mean that unused, but potentially usable, chunks are 
removed from the free list?

I think the order property is very useful and powerful, but it's not 
terribly clear from the docs how it can be exploited to full potential. 
The descriptions of the methods are missing post-conditions that are, in 
my opinion, as important as pre-conditions. Change in the ordered 
state of the pool could be added more explicitly there. Moreover, if a 
function can be called on both ordered and un-ordered pools, it would be 
interesting to state explicitly if there's a difference in behaviour 
and/or complexity.

Thanks for your patience,

Alberto Barbati



___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


Re: [boost] regex linking error gcc 2.95 solaris 2.8, stlport

2002-11-23 Thread John Maddock
 I built the library individually with the following line :

 bjam -sTOOLS=gcc-stlport -sSTLPORT_ROOT=...

 everything seems to compile properly but when I use the following from a
.so
 :

 boost::regex exp(std);

 I get the following error from dlopen:

 ld.so.1: output/Text2RvMsg_tester: fatal: relocation error: file
 output/Text2RvMsg.so: symbol

__Q25boostt14reg_expression3ZcZQ25boostt12regex_traits1ZcZQ24_STLt9allocator
1ZcPCcUiRCQ24_STLt9allocator1Zc:
 referenced symbol not found

 does anyone know how to get around this?  There are similar symbols within
 the debug.so that I am trying to use however they are usually a
 regex_traits1ZcZt24 or something similar.

 I have tried to search for this but can't find a match for it, is it some
 gcc compilation error?

No idea we could use some input from a gcc expert to tell us what that
symbol means, just an idea here, but can you not link against the .a lib
file - apart from anything else your final code size will be much smaller
(including the size of the lib that is).

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] Possible boost addition: sub string and const string.

2002-11-23 Thread John Maddock
Alexei,

Looks like we're all thinking alike, a while ago I put together a sequence
based substring class that could act as a universal wrapper for any string
like object, along with a set of algorithms to act upon it: it's based
loosely on Darin Adler's original string algorithm code.

classes:

string_traits: this is the glue that allows the classes and algorithms to
act upon any string like object (std::string, char*, other string classes
etc)
basic_substring: an immutable view of any string like object (or iterator
sequence).

Algorithms returning a substring:

rtrim
ltrim
trim

Algorithms returning a new string:

make_upper
make_lower

Inplace transformations:

inplace_ltrim
inplace_rtrim
inplace_trim
inplace_make_upper
inplace_make_lower

And then I ran out of time... :-)

I've put what I have at
http://groups.yahoo.com/group/boost/files/string_algorithm/substring.zip,
it's actually pretty complete with full test cases etc, but I'm not sure
where this would fit in with the proposed new string lib, plus I'm pretty
short of time at present.  Still I'm hoping someone can make use of this and
maybe the new string lib can include a synthesis of all these ideas...

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm



___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Illegal Friend?

2002-11-23 Thread Eric Woodruff
According to g++ and comeau, the following is illegal: (The commented line
allows the code to compile.)

class A {
   public:
  A () {}
  ~A () {}

   private:
  class Nested;
   //friend class B;
};

class B {
   public:
  B () {}
  ~B () {}

   private:
  friend class A::Nested;
};

Here's why:
7 A name nominated by a friend declaration shall be accessible in the scope
of the class containing the friend declaration.

It is ridiculous that I can't give access to an inaccessible class. You have
to have access to be able to give it? What is the justification for this?




___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] Illegal Friend?

2002-11-23 Thread Mattias Flodin
On Sat, Nov 23, 2002 at 10:57:17AM -0500, Eric Woodruff wrote:
 It is ridiculous that I can't give access to an inaccessible class. You have
 to have access to be able to give it? What is the justification for this?

The reason for making things private is to say this is an
implementation detail and I don't want anyone else to depend on its
existence. If A were later to remove its internal class, compilation of
B would fail.

The correct way of doing this I suppose is to make both classes friends
of eachother. But best of all would be to not use friends at all.

-- 
Mattias Flodin [EMAIL PROTECTED]  -  http://www.cs.umu.se/~flodin/
Room NADV 102
Department of Computing Science
Umeå University
S-901 87 Umeå, Sweden
--
Too many errors on one line (make fewer)
  -- Error message from Apple's MPW C compiler
___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Re: Serialization Library Review

2002-11-23 Thread Fredrik Blomqvist
Hi,

I've been following the library and the discussion surrounding it since it
was first announced on the list.
I believe it is a very important and much needed component and I thank
Robert for bringing it forward to the boost community!
For the review I have gathered some issues I would like to bring to
attention. (presented in no particular order)

Features / Implementation:

* I haven't seen any reaction on the friend-declaration change needed in
shared_count.hpp to support serialization of shared_ptrs. Would this
coupling shared_ptr-serializer be ok for an official boost release?
Anyhow, I'd like to point out an alternative implementation approach to
handle non-intrusive smart-ptrs (like shared_ptr) in a non-intrusive way ;-)
(I've briefly mentioned this approach in private communication with Robert)
-
The method relies on a map of raw_ptr-shared_ptr that is maintained at
deserialization time.
 At load-time the initially empty map is populated with the shared_ptrs that
show up as destination
targets. The code first looks in the map to see if a previous shared_ptr
exists been handled, if so it is initialized by copying from the one in the
map. Only if it's the very first ptr to a new object or the first shared_ptr
a shared_ptr::reset(raw_ptr) is performed, followed by insertion in the map.
This will maintain correct ref-counts for smart-ptrs without knowledge of
internal functionality.
  Note that this approach _only_ saves the raw-ptr and nothing else relating
to the shared_ptr to the archive and that it even manages to implicitly
repair faulty shared_ptr links :) . Finally weak_ptrs are easily handled
using the same shared_ptr base.
  I have used this implementation in a modified CommonC++ serializer and I
believe it would work as a specialization for shared_ptrT in Roberts
serializer if needed. Altough I'm not 100% sure how much the lack of a
baseclass would complicated matters.
(hmm, hope the above makes alteast some sense.. ;)
-

* I'd like to see a boost::serializer handle all/most of the std/STL and
boost components out-of-the-box.
Even though the current implementation shows how to handle both auto_ptr and
shared_ptr in the examples they're IMO too important not to be included in
the official core-package. Both from a QoI point of view but also purely
convenience.
Structures that come to mind are:
   std::auto_ptr
   std::stack
   std::queue/priority_queue
   boost::scoped_ptr
   boost::shared/weak_ptr
   boost::tuple
   boost::array
   boost::multi_array
   etc ...

* The handling of the different (like the STL) components should be broken
into separate .hpp files.
(altough possibly retaining a convenience wrapper)

* Since the library already supports hash_map and slist etc I guess adding
support for the popular rope string-container would be a simple addition
also.

* Regarding support for serialization of the container adaptors like stack
and queue I propose a solution something like this to be able to take
advantage of possible optimized serialization of the basecontainer. This
example serializes a std::stack at the expense of an extra copying step
which I unfortunately see no conforming way to avoid (since the adaptor
templates are defined to hide the container). Is even this standard
conforming btw? can you assume that the inner-container is always named 'c'?

-
template typename T, class C
struct extract_container_t : std::stackT,C {
typedef std::stackT,C stack_type;
extract_container_t() {}
explicit extract_container_t(const stack_type s) : stack_type(s) {}
const stack_type::container_type get() const { return c; }
stack_type::container_type getref()   { return c; }
};

templateclass T, class C
inline void save_template(boost::basic_oarchive  ar, const std::stackT,C
t, long) {
ar  extract_container_tT,C(t).get();
}

templateclass T, class C
inline void load_template(boost::basic_iarchive  ar, std::stackT,C t,
boost::version_type file_version, long) {
extract_container_tT,C tmp;
ar  tmp.getref();
t = std::stackT,C(tmp.get());
}

-

* If possible, I'd like to be able to build a version of the library with
disabled exception-handling.
(as several other boost libs already provide)

* If it's possible to simplify the library and/or refactor it into separate
components I'd like to see that.

* nitpick: code cotains some superflous inlines in a couple of places.


Design:

*The core design is the best I've seen of a serializer. The key features:
Non-intrusive serialization (no baseclass!), versioning, standard RTTI and
good STL support. This coupled with being even easier to use in day-to-day
code than for example MFC makes it very attractive in my eyes!

* Q: Regarding serializable structures. How should other boost components
handle interaction with a serializer? Should 

Re: [boost] Illegal Friend?

2002-11-23 Thread David Abrahams
[EMAIL PROTECTED] (Mattias Flodin) writes:

 On Sat, Nov 23, 2002 at 10:57:17AM -0500, Eric Woodruff wrote:
 It is ridiculous that I can't give access to an inaccessible class. You have
 to have access to be able to give it? What is the justification for this?

 The reason for making things private is to say this is an
 implementation detail and I don't want anyone else to depend on its
 existence. If A were later to remove its internal class, compilation of
 B would fail.

 The correct way of doing this I suppose is to make both classes friends
 of eachother. But best of all would be to not use friends at all.

This is OFF TOPIC for Boost. Please take your discussion to an
appropriate forum such as comp.std.c++.

-- 
   David Abrahams
   [EMAIL PROTECTED] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



RE: [boost] Sockets

2002-11-23 Thread Jeff Garland

 
 Please feel free to edit the wiki pages with comments, etc.

Looks like a nice start.  I see you have already captured Beman and 
others prior work.  I have added a references page for pointers to 
other C++ socket libraries and other references as well as a few
other quick thoughts.  See

http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?RecentChanges

Jeff
___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Spurious g++ warnings with shared_ptr tests

2002-11-23 Thread Peter Dimov
Can we add -Wno-non-virtual-dtor to g++ tests? The ability of shared_ptr to
support nonvirtual destructors is an essential feature, and the tests do
exercize it.

--
Peter Dimov
http://www.pdimov.com

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Re: AW: Sockets

2002-11-23 Thread Hugo Duncan
On Sat, 23 Nov 2002 19:13:14 +0100, Boris Schäling [EMAIL PROTECTED] wrote:
 I read your library requirements.
Thanks.

 I don't agree that a socket library should  wrap rather than invent.

Agreed that the C++ library should leverage the power of C++,
but we could do this while remaining in some way familiar.  The
intent is to provide a clean C++ interface.

Certainly at a higher level some form of smart address resolution
should be provided, but I don't think that obviates the need for
seperate address classes for seperate protocols, for those people
who do not want to pay for functionality that they do not need.

eg. for address resolution - should it also resolve decnet addresses? osi addreses?


Hugo







___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] RE: Sockets

2002-11-23 Thread Hugo Duncan
On Sat, 23 Nov 2002 11:18:24 -0700, Jeff Garland [EMAIL PROTECTED] 
wrote:

 I see you have already captured Beman and 
 others prior work.  I have added a references page for pointers to 
 other C++ socket libraries and other references as well as a few
 other quick thoughts.  See
 
 http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?RecentChanges
 

Jeff,

Thanks. As regards times, we should definitely be using the time_duration
from boost date_time!

Would you have any code references for the usage scenarios that you added ?

Hugo




___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] RE: Serialization Library Review

2002-11-23 Thread David Abrahams
Robert Ramey [EMAIL PROTECTED] writes:

 Thats all for now.  I will have much more to say on this topic in the coming days.

Please say it soon, if so. The review period ends on Monday and I'd
like to have your information for when I evaluate everything

Thanks,
Dave

-- 
   David Abrahams
   [EMAIL PROTECTED] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] Re: AW: Sockets

2002-11-23 Thread Beman Dawes
At 02:46 PM 11/23/2002, Hugo Duncan wrote:

On Sat, 23 Nov 2002 19:13:14 +0100, Boris Schäling [EMAIL PROTECTED]
wrote:
 I read your library requirements.
Thanks.

 I don't agree that a socket library should  wrap rather than invent.

Agreed that the C++ library should leverage the power of C++,
but we could do this while remaining in some way familiar.

Yes, that was the intent.

I was the author of the original wrap rather than invent wording:

Build on the widespread and mature network programming infrastructure 
which is already in place. Wrap rather than invent. The sockets interface 
is well known to many programmers, and numerous books, tutorials, and other 
materials are available. Build on this base, except in cases where it 
clearly runs counter to good C++ software engineering practice.

I'll change the offending sentence to Reuse successful sockets and C++ 
idioms, rather than inventing new ones.

--Beman


___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


RE: [boost] RE: Sockets

2002-11-23 Thread Jeff Garland
 Jeff,
 
 Thanks. As regards times, we should definitely be using the time_duration
 from boost date_time!

Yes, but we'll need to do something with the core.  If you just used
posix_time::time_duration out of the box it is a bit of a heavy 
dependency for the need.

 Would you have any code references for the usage scenarios that you added ?

No, just some scenarios I thought of -- we would have to write code.
Unfortunately, all the 'example' code I have ever written in this
area is buried in closed source applications...

The other thing is that I expect most of the server examples to 
be pretty simplistic b/c you usually don't write much in the 
way of a 'real' server until you have sophisticated dispatching 
of I/O across multiple sockets or multiple threads. All this
is way out of scope for the basic socket class.  Of course,
given Boost.Threads and Boost.Function you are a long way
there...

Jeff


___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



AW: [boost] Re: AW: Sockets

2002-11-23 Thread Boris Schling


 -Ursprüngliche Nachricht-
 Von: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]Im Auftrag von Hugo Duncan
 Gesendet: Samstag, 23. November 2002 20:47
 An: [EMAIL PROTECTED]
 Betreff: [boost] Re: AW: Sockets


 On Sat, 23 Nov 2002 19:13:14 +0100, Boris Schäling
 [EMAIL PROTECTED] wrote:
  I read your library requirements.
 Thanks.

  I don't agree that a socket library should  wrap rather than invent.

 Agreed that the C++ library should leverage the power of C++,
 but we could do this while remaining in some way familiar.  The
 intent is to provide a clean C++ interface.

 Certainly at a higher level some form of smart address resolution
 should be provided, but I don't think that obviates the need for
 seperate address classes for seperate protocols, for those people
 who do not want to pay for functionality that they do not need.

Okay, agreed.

As far as I remember former discussions in this list some people supported a
select()/poll()/somehow centralized interface others favoured independent
socket classes. What about two different socket libraries? One simple
select()/poll() based library comparable to ACE following the Reactor
pattern and one more complex library with independent classes? A C++-socket
library following the Reactor pattern would be much easier to use than
select() or poll() in C. Two socket libraries would be comparable to Java
where the java.net and java.nio packages provide different approaches to
connect to the network.

Boris

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] Sockets

2002-11-23 Thread Rob Tougher
I'm interested in participating in the design and implementation of a Sockets library. 
Your initial documents look like a good start.

I have some comments, suggestions, and general ideas about a sockets library. Where 
should I post these? Should I add them to the Wiki page, or maybe post them to this 
list? I'm just curious because I haven't participated in Boost development before, and 
I don't want to choose the wrong forum for my input.

Thanks,
Rob
___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] Sockets

2002-11-23 Thread Thorsten Ottosen

- Original Message -
From: Hugo Duncan [EMAIL PROTECTED]

 discussions, I have tried to start describing a design at:
 http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostSocket

When I look at the examples I'm curious why I see this:

 socket_base::initialise();
...
socket.close();
socket_base::finalise();

Why doesn't this happen in the constructor/destructor of some object?

regards

Thorsten Ottosen, AAU


___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Re: Sockets

2002-11-23 Thread Hugo Duncan
On Sat, 23 Nov 2002 14:23:37 -0600, Rob Tougher [EMAIL PROTECTED] wrote:
Where should I post these?

Wherever you see fit :-)

I would suggest the mail list for discussion, and the wiki for
capturing points that you don't wan't to get lost.





___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



RE: [boost] How best to use Wiki (was Sockets)

2002-11-23 Thread Jeff Garland
 I'm interested in participating in the design and implementation of a 
 Sockets library. Your initial documents look like a good start.

Great! You will note that I posted references to your Linux Journal
articles :-)

http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostSocket/References

 
 I have some comments, suggestions, and general ideas about a sockets 
 library. Where should I post these? Should I add them to the Wiki page, 
 or maybe post them to this list? I'm just curious because I haven't
 participated in Boost  development before, and I don't want to choose 
 the wrong forum for my input.

Well, we are all still feeling our way a bit with the best division
of things, but I would recommend the following:

1) If you have some commentary, concepts, or other contributions to 
add to the current work then just add them to the Wiki and post at 
least a pointer to the mailing list.  Wiki can support ongoing 
discussions 'thread pages', but it seems to be much better at 
capturing ideas from a large group of people that have some
persistence.  Discussion threads are too difficult to manage
on 'page'.  Of course the Wiki can also have pointers into
the mailing list archive so that it is easier to find the
discussions.
2) If you have questions or need to start a discussion on a 
particular topic you should use the mailing list because it
more people monitor it than the Wiki.
3) The Wiki is ideally suited for organizing an ongoing 
work with many participants.  Boost.Documentation, for one,
has created a task list that scopes out major things and
people can sign-up as they can.  See 
http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?Boost_Documentation_Format/Tasks

We probably should have one of these for Boost.Socket as well --
presuming that this is going to take some time and will have
fairly high interest.

4) The MPL team used another Wiki to develop documentation.
Not sure how that worked.  Aleksey care to comment?

Also note that for large efforts I have either helped
refactor things so that there is a base page and 'subpages',
or we have started that way.  This is nice because when you
hit the Page List link on the Wiki all the pages related to
a particular topic are all together. 

http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?action=index


Jeff
___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Socket Implemnentation

2002-11-23 Thread Hugo Duncan
I have put together an initial implementation in the boost-sandbox.

The aim of this code is really just to have something concrete
to discuss and to have as a base to experiment on.

The implementation more or less reflects the design presented at
http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostSocket

The sandbox contains the simple client and server test shown on the Wiki.
At the moment the examples it compiles on:

gcc 3.2 cygwin
borland Bcc5.5.1
borland Bcc5.6.1
vc7
vc6 sp5

Note the lack of unix :-(, though given the cygwin implementation, it
should not be too difficult to get working.

Hugo






___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Re: Serialization Library Review

2002-11-23 Thread Dirk Gerrits
Thomas Matelich wrote:


Dirk Gerrits  wrote in message
ar37hg$6hm$[EMAIL PROTECTED]">news:ar37hg$6hm$[EMAIL PROTECTED]...

Thomas Matelich wrote:


Anyway, seemed like a nice package for general use.  My company is
currently in love with XML, so I probably wouldn't be using it for our
commercial products.

Maybe you missed it due to only skimming the documentation, but it is
possible to write your own archive types for use with the library. An
XML output archive should be pretty easy, and I imagine that given an
XML parser, an input archive should also be quite feasable.



I didn't miss it and considered it, but XML usually names its elements.
That meta-data is an important part of validation and the free-form 
lovefest
that makes XML popular.  There is no way that I saw, given the abstract
interface of the archives, to name the string that I put into the archive.
Perhaps that could be an extension.


Yes, other threads made me realize this. I withdraw my statements.



___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



[boost] Re: AW: Re: AW: Sockets

2002-11-23 Thread Hugo Duncan
Boris,

On Sat, 23 Nov 2002 21:35:58 +0100, Boris Schäling [EMAIL PROTECTED] wrote:
 favoured independent socket classes.
Not sure what you mean by independent classes?

 java.net and java.nio packages provide different approaches to
Had a quick look at these. Isn't java.nio just a layer on top of jav.net ?
Which library corresponds to which usage ?

Hugo




___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



RE: [boost] Re: AW: Re: AW: Sockets

2002-11-23 Thread Boris Schling


 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]On Behalf Of Hugo Duncan
 Sent: Sunday, November 24, 2002 12:11 AM
 To: [EMAIL PROTECTED]
 Subject: [boost] Re: AW: Re: AW: Sockets

 Boris,

 On Sat, 23 Nov 2002 21:35:58 +0100, Boris Schäling
 [EMAIL PROTECTED] wrote:
  favoured independent socket classes.
 Not sure what you mean by independent classes?

Sorry if I wasn't clear. There are several I/O models:
1) blocking
2) multiplexing
3) signal-driven
4) asynchronous

In former discussions some people wanted to see a library for 1), others
wanted to see a library for 2). The library you propose fits to 1) as far as
I can tell. The reason why I proposed two different socket libraries in
another mail some hours ago is because of the different models that are
possible. As blocking and multiplexing are possibly the most used models
Boost should support both.

In a multiplexing model the classes need to form a team - someone has to
multiplex everything. In a blocking model classes are not dependent on each
other: You can use eg. a socket class and don't have to tell another class
that it should poll over the socket descriptor.

I will try to set up another page at Boost Wiki to explain in detail what I
mean by multiplexing library.

  java.net and java.nio packages provide different approaches to
 Had a quick look at these. Isn't java.nio just a layer on top of jav.net ?
 Which library corresponds to which usage ?

Oops, I meant java.nio.channels. Classes in java.nio.channels enable
application developers to use multiplexing while classes in java.net support
blocking model.

Boris

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



Re: [boost] How best to use Wiki (was Sockets)

2002-11-23 Thread David Abrahams
Jeff Garland [EMAIL PROTECTED] writes:

 4) The MPL team used another Wiki to develop documentation.
 Not sure how that worked.  Aleksey care to comment?

I can tell you that it ended up being pretty one-sided. It was great
for Aleksey - he had the whole Wiki on his local machine and could
edit pages in his favorite editor and write new scripts when he wanted
to. It was awful for me, to the point where I just never wrote
anything in that medium. I have a strong preference for CVS for
working on collaborative documentation.


-- 
   David Abrahams
   [EMAIL PROTECTED] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost



RE: [boost] How best to use Wiki (was Sockets)

2002-11-23 Thread Aleksey Gurtovoy
David Abrahams wrote:
 Jeff Garland [EMAIL PROTECTED] writes:
 
  4) The MPL team used another Wiki to develop documentation.
  Not sure how that worked.  Aleksey care to comment?
 
 I can tell you that it ended up being pretty one-sided. It was great
 for Aleksey - he had the whole Wiki on his local machine 

To clarify - at one point of time; when things were moved to
www.mywikinet.com, I lost my privileges :). 

I'll let Emily speak for herself, but IMO the collaboration part of doing
the docs in Wiki works pretty good. The main reason I switched to DocBook
later was the lack of the semantic/structural markup and all the nice
benefits it brings along (different output formats, automatic TOC
generation, better cross-reference capabilities, et al.).

 and could edit pages in his favorite editor 

Actually I _always_ edit them in the edit box in browser; it doesn't bother
me much.

Aleksey
___
Unsubscribe  other changes: http://lists.boost.org/mailman/listinfo.cgi/boost