Re: [boost] Compile problem with Spirit CodeWarrior

2003-09-01 Thread James W. Walker
On Sunday, August 31, 2003, at 11:29 AM, Hartmut Kaiser wrote: Use grammars ... The article describes Spirit V1.2 (it was written nearly two years ago). ... Thanks a lot, that's very helpful. -- http://www.jwwalker.com/ ___ Unsubscribe other changes:

Re: [boost] Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
David Abrahams [EMAIL PROTECTED] wrote: Joel de Guzman [EMAIL PROTECTED] writes: Now, unlike YACC, Spirit has iteration (kleene, plus, optional) Here's a more or less the complete suite of patterns and the corresponding semantic-action signatures: r ::= a b-F(tupleA, B)

Re: [boost] Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Brian McNamara [EMAIL PROTECTED] wrote: I should mention in passing that, while in general I think implicit conversions are bad news and should be avoided whenever reasonable, I do think the conversion to bool is an exceptional case, simply because it is already so deeply ingrained in C++

Re: [boost] Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Brian McNamara [EMAIL PROTECTED] wrote: On Sun, Aug 31, 2003 at 10:41:15AM -0700, Mat Marcus wrote: also interesting, although I think that readability suffers. I'd give up bool conversion and operator! to avoid the need for ~ if that would reasonably solve the muddling issues. But perhaps

Re: [boost] Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Brian McNamara
On Mon, Sep 01, 2003 at 09:03:17AM +0800, Joel de Guzman wrote: Do it the ref, tuple and variant way: get(). But get(), as an element-access interface, should return a reference, not a pointer, as it does currently. Clearly I had not been paying enough attention earlier in the thread; I was

[boost] [Boost-bugs] [ boost-Bugs-798357 ] rational operator canoverflow

2003-09-01 Thread SourceForge.net
Bugs item #798357, was opened at 2003-09-01 02:57 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=107586aid=798357group_id=7586 Category: None Group: None Status: Open Resolution: None

[boost] generic uses of optionalT

2003-09-01 Thread Dave Gomboc
Here's a (contrived) example of how the implicit conversion breaks generic code: [example snipped] The point is that optionalT is not a T, and most notably, a template function will never perform the coercion. Replace the lines like B b = get2(args); in your example with real calls

Re: [boost] generic uses of optionalT

2003-09-01 Thread Brian McNamara
On Sun, Aug 31, 2003 at 09:12:59PM -0600, Dave Gomboc wrote: The point is that optionalT is not a T, and most notably, a template function will never perform the coercion. Replace the lines like B b = get2(args); in your example with real calls to, e.g. do_something( get2(args) )

[boost] [BGL] Patch to add buffer parameter to dfs

2003-09-01 Thread Bruce Barr
Here's a patch to depth_first_search.hpp that allows a buffer parameter to be used with depth_first_search(). I'm also including a patch to depth_first_search.html to update the documentation. The patches apply to CVS revision 1.37 of depth_first_search.hpp, and 1.14 of depth_first_search.html.

Re: [boost] generic uses of optionalT

2003-09-01 Thread Joel de Guzman
Brian McNamara [EMAIL PROTECTED] wrote: On Sun, Aug 31, 2003 at 09:12:59PM -0600, Dave Gomboc wrote: The point is that optionalT is not a T, and most notably, a template function will never perform the coercion. Replace the lines like B b = get2(args); in your example with real calls to,

[boost] Re: [BGL] Missing open delimiter for HTML tag indijkstra_shortest_paths.html

2003-09-01 Thread Vladimir Prus
Janusz Piwowarski wrote: Hi, As in subject: first line, first character. Fixed, thanks! - Volodya ___ Unsubscribe other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

[boost] Re: generic uses of optionalT

2003-09-01 Thread Dave Gomboc
[Dave Abrahans] Optional is a container. I've never seen a container in C++ which didn't have both a value interface and an element-access interface. How do you propose to achieve that with optional? It darn well shouldn't be a container, it should be a concrete type! ;-) [Joel de Guzman]

[boost] Re: Re: [boost.variant] It is possible to make a variantLessThanComparable

2003-09-01 Thread Eric Friedman
Peter Dimov wrote: When there is one and only one strict weak ordering (equality) for a type, not using operator and operator== because some users might have different expectations is misguided. It is pretty clear what setvariant or find(first, last, v) is supposed to do; variant_less or

[boost] Re: generic uses of optionalT

2003-09-01 Thread Eric Friedman
Dave Gomboc wrote: [snip] I don't like get() because I cannot write x.get() when x is a POD. This would mean I have to support nilableT and T with different code, which is exactly what I'm trying to avoid. Why not overload boost::get again for optional? This would certainly improve

Re: [boost] Re: generic uses of optionalT

2003-09-01 Thread Brian McNamara
On Mon, Sep 01, 2003 at 12:13:11AM -0600, Dave Gomboc wrote: I've been trying to set things up so that code is written for T that can then also use nilableT seamlessly, but doing things the other way around might be an improvement. Agreed. [Brian McNamara] I was originally arguing with

[boost] Re: variant questions

2003-09-01 Thread Alexander Nasonov
Eric Friedman wrote: But suppose I have a variant v3, with content of a different type (call it T3). Then the assignment v1 = v3 is far more complicated (we can't use T1::operator=) and, without double storage, far more dangerous. The single storage implementation behaves as follows:

[boost] Re: Help requested for Metrowerks workaround

2003-09-01 Thread Eric Friedman
Howard, Howard Hinnant wrote: [snip] If you will mail me a complete condensed demo, I'll take a look. I downloaded boost 1.30.2 but was unable to find boost/variant. -Howard Thanks for offering your assistance. Variant will make its debut in 1.31. Thus, you'll need to work from Boost CVS

[boost] Re: variant questions

2003-09-01 Thread Eric Friedman
Alexander Nasonov Eric Friedman wrote: But suppose I have a variant v3, with content of a different type (call it T3). Then the assignment v1 = v3 is far more complicated (we can't use T1::operator=) and, without double storage, far more dangerous. The single storage implementation

[boost] Re: variant questions

2003-09-01 Thread Alexander Nasonov
Eric Friedman wrote: If I understand you correctly, earlier versions of variant did precisely what you describe. Unfortunately, the assumption you make is false in general. See http://aspn.activestate.com/ASPN/Mail/Message/boost/1311813. Eric Well, is_polymorphicT based on compiler

Re: [boost] Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Mat Marcus
--On Sunday, August 31, 2003 9:56 PM -0400 Brian McNamara [EMAIL PROTECTED] wrote: As for the use-case with the function returning a pair of iterators that we'd like to assign to optionals via a tie(), I think there should also be a different method in the interface which returns the hole in

Re: [boost] Re: generic uses of optionalT

2003-09-01 Thread Joel de Guzman
Eric! You DA Man! -- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net Eric Friedman [EMAIL PROTECTED] wrote: Dave Gomboc wrote: [snip] I don't like get() because I cannot write x.get() when x is a POD. This would mean I have to support nilableT and T with different

[boost] [for Win] [was: Re: 1.30.0-1.30.2: no more thread supportfor Linux?]

2003-09-01 Thread vc
Hi, I haven't followed this thread completely, but I have a question. I'm working on Win 2k, and I'm using VC++ 7.1. Building boost with this toolset, do I need to specify something to make it thread-safe? TIA, Viv - Original Message - From: John Maddock [EMAIL PROTECTED] To: Boost

Re: [boost] Re: Re: [boost.variant] It is possible to make avariantLessThanComparable

2003-09-01 Thread Peter Dimov
Eric Friedman wrote: Peter Dimov wrote: When there is one and only one strict weak ordering (equality) for a type, not using operator and operator== because some users might have different expectations is misguided. It is pretty clear what setvariant or find(first, last, v) is supposed to do;

Re: [boost] [for Win] [was: Re: 1.30.0-1.30.2: no more threadsupportfor Linux?]

2003-09-01 Thread John Maddock
I haven't followed this thread completely, but I have a question. I'm working on Win 2k, and I'm using VC++ 7.1. Building boost with this toolset, do I need to specify something to make it thread-safe? Actually you need to do more than that - you need to compile Boost against the same runtime

Re: [boost] Any interest in a string literal selector helper library?

2003-09-01 Thread John Torjo
Subject: [boost] Any interest in a string literal selector helper library? Hi all, I have written a relatively small library which I've found pretty useful in my own projects. I have to deal with std::basic_string objects a lot in my applications, and I almost always write template code

[boost] Re: [boost.variant] It is possible to make a variant LessThanComparable

2003-09-01 Thread Alexander Nasonov
David Abrahams wrote: Dirk Schreib [EMAIL PROTECTED] writes: I would like a variant to be LessThanComparable if all BoundedTypes are LessThanComparable. In this example typedef boost::variantT1, T2, ..., TN V; V v1 = T1( x ); V v2 = T2( y ); V v3 = T1( z ); v1 v2 should

[boost] adaptable_any vs any_with

2003-09-01 Thread Alexander Nasonov
I'm asking for voting for the new name of dynamic_any. Please, give you preference. Here is my discussion about the name with Kevlin Henney ( and empty prefix - Kevlin, - me) --- cut --- Have you had any more thoughts on an alternative name? Something like adaptable_any or extensible_any? I

Re: [boost] [for Win] [was: Re: 1.30.0-1.30.2: no morethreadsupportfor Linux?]

2003-09-01 Thread vc
Thanks for your reply. I've created my own vcproj (VC++ 7.1 project) for building the libs that I need, and I've used the /MD flag which is the multithread- and DLL-specific versions flag (used also for my application), which means that everything is fine, right? Thanks a lot, Viv - Original

[boost] Re: [boost.variant] It is possible to make avariantLessThanComparable

2003-09-01 Thread Anthony Williams
Peter Dimov [EMAIL PROTECTED] writes: Eric Friedman wrote: Peter Dimov wrote: When there is one and only one strict weak ordering (equality) for a type, not using operator and operator== because some users might have different expectations is misguided. It is pretty clear what setvariant or

[boost] SourceForge CVS performance upgrade

2003-09-01 Thread Beman Dawes
This hasn't happened yet. Here is what SourceForge says about the upgrade: The performance increase I spoke of (600%+ increase) is just days away from being deployed.The new systems are now in place, additional electrical power has been added to our colocation cage, and the Linux boxes are in

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Fernando Cacciola [EMAIL PROTECTED] wrote: Hi Mat, Thanks for the input. optional is now out on the field and it is the only utility of its kind I've ever seen in C++, at least in real use. This has the drawback

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Brian McNamara [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] On Sun, Aug 31, 2003 at 09:58:45AM +0800, Joel de Guzman wrote: Fernando Cacciola [EMAIL PROTECTED] wrote: Hi Mat, Thanks for the input. optional is now out on the field and it is the only utility of its

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Brian McNamara [EMAIL PROTECTED] wrote: Offhand, the pointer interface for reading the value of an optional seems good to me. Being able to say optionalint x; ... if( x ) foo( *x ); seems like a

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Fernando Cacciola [EMAIL PROTECTED] wrote: First of all, let's not confuse syntax with semantics. optional HAS strict value semantics. No it does not. The accessors have pointer behavior! -- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Daniel Frey [EMAIL PROTECTED] wrote: Joel de Guzman wrote: Although I don't see this as problematic: optionalint x; if (x) foo(x); Or perhaps: optionalint x; if (!!x)

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Fernando Cacciola [EMAIL PROTECTED] wrote: vector::begin returns an object with operators * and -, yet these objects are not pointers, and once that is learned, people do not think they are pointers. Huh? pointer semantics (behavior) does not mean that they have to be pointers. -- Joel de

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Brian McNamara [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] On Mon, Sep 01, 2003 at 09:03:17AM +0800, Joel de Guzman wrote: Do it the ref, tuple and variant way: get(). But get(), as an element-access interface, should return a reference, not a pointer, as it does currently.

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Fernando Cacciola [EMAIL PROTECTED] wrote: Joel de Guzman [EMAIL PROTECTED] wrote in message There's a lot of experience with it in other languages. Why not leverage that? Haskell::Maybe for instance. Do you know of anything else besides Haskell? No. I don't, and I took the time to

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Fernando Cacciola [EMAIL PROTECTED] wrote: Joel de Guzman [EMAIL PROTECTED] wrote in message Direct initialization: opt = 1 seems right since this operation is never undefined. This would mirror variant's interface. Ok. Direct value accesing via implicit conversion: int i = opt seems

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Mat Marcus [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] In this post I will put forward a use-case or two to help see whether something a little different then the current version of optional might be useful. I also begin making a case that a Concept like

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Brian McNamara [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] On Sun, Aug 31, 2003 at 12:34:39AM -0700, Mat Marcus wrote: [snipped] So, here's an idea for something completely new which maybe helps fit your requirements. I start with the motivating example: PossUninitVarIter

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Brian McNamara [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] So I completely disagree that optionals should mix the interfaces of optional and the wrapped object into one. I think there should be an explicit unwrapping operation. But this is just my opinion, based on no practical

[boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Brian McNamara [EMAIL PROTECTED] wrote: So I completely disagree that optionals should mix the interfaces of optional and the wrapped object into one. I think there should be an explicit unwrapping operation. But

[boost] Re: generic uses of optionalT

2003-09-01 Thread Fernando Cacciola
Eric Friedman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Dave Gomboc wrote: [snip] I don't like get() because I cannot write x.get() when x is a POD. This would mean I have to support nilableT and T with different code, which is exactly what I'm trying to avoid. Why not

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Mat Marcus
--On Monday, September 01, 2003 2:57 PM -0300 Fernando Cacciola [EMAIL PROTECTED] wrote: Mat Marcus [EMAIL PROTECTED] wrote in message [snip] After reading the documentation more carefully I learned that optional models pointer behavior. I spelled out how the code might look:

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Gregory Colvin
On Monday, Sep 1, 2003, at 11:31 America/Denver, Joel de Guzman wrote: Fernando Cacciola [EMAIL PROTECTED] wrote: vector::begin returns an object with operators * and -, yet these objects are not pointers, and once that is learned, people do not think they are pointers. Huh? pointer semantics

[boost] Reducing template compile-times

2003-09-01 Thread Brian McNamara
Template libraries, especially those employing expression templates, take a long time to compile. As an example, one of the example files for FC++ (parser.cpp) takes about 10 minutes to compile on a blazingly fast machine with tons of RAM. I would like to reduce the compile-time. I solicit any

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Fernando Cacciola [EMAIL PROTECTED] wrote: Even if I agree with you that an optionalT should not be a T, an optionalT is definitely not a pointer to T. Definitely! If HTML had blinking banners I think I'd use one to state this :-) Nor should it model a pointer. That was my point and the

Re: [boost] Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Joel de Guzman
Gregory Colvin [EMAIL PROTECTED] wrote: On Monday, Sep 1, 2003, at 11:31 America/Denver, Joel de Guzman wrote: Fernando Cacciola [EMAIL PROTECTED] wrote: vector::begin returns an object with operators * and -, yet these objects are not pointers, and once that is learned, people do not

[boost] Re: Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Fernando Cacciola [EMAIL PROTECTED] wrote: Joel de Guzman [EMAIL PROTECTED] wrote in message Direct value accesing via implicit conversion: int i = opt seems wrong because this is the operation that can lead to

[boost] Re: Boost memory management guidelines

2003-09-01 Thread David Abrahams
Gregory Colvin [EMAIL PROTECTED] writes: Conforming containers had better use them. I'm sorry, but I think that's flat wrong. What do you suppose that entry in column 2 of the allocator requirements table (20.1.5) means, after all? It means any value returned by construct, destroy, or

[boost] Re: xml library

2003-09-01 Thread Nicholas Mongeau
I've just uploaded the preliminary version of my XML library to Yahoo files section as xml_library.zip. Comments are welcome. I think it's very nice, and I can already think of some code that could be made much clearer using this... ___

[boost] Re: Reducing template compile-times

2003-09-01 Thread David Abrahams
Brian McNamara [EMAIL PROTECTED] writes: Template libraries, especially those employing expression templates, take a long time to compile. As an example, one of the example files for FC++ (parser.cpp) takes about 10 minutes to compile on a blazingly fast machine with tons of RAM. Which

[boost] Re: Re: Deprecation/removal of libraries

2003-09-01 Thread Daniel Frey
On Thu, 28 Aug 2003 16:19:24 +0200, Douglas Gregor wrote: On Thursday 28 August 2003 08:20 am, Daniel Frey wrote: utility/tie was moved to tuple, so should we remove the obsolete docs/references in utility now? Please do. Done. I also updated the Revisited ..., but there is some checksum

[boost] Re: variant questions

2003-09-01 Thread Eric Friedman
Alexander Nasonov wrote: Eric Friedman wrote: If I understand you correctly, earlier versions of variant did precisely what you describe. Unfortunately, the assumption you make is false in general. See http://aspn.activestate.com/ASPN/Mail/Message/boost/1311813. Eric Well,

[boost] Re: generic uses of optionalT

2003-09-01 Thread Dave Gomboc
[Eric Friedman] Why not overload boost::get again for optional? It might be a good idea for other reasons, but it doesn't solve the problem I'm trying to solve. [Brian McNamara] do_something( adapt( 3 ) ); do_something( adapt( nilableint(3) ) ); do_something( adapt(

[boost] Re: optional, tie, and iterator_adaptor

2003-09-01 Thread Dave Gomboc
[Fernando Cacciola] The most fundamental point is that being Haskell a pure functional language there is no possibly undefined behaviour to worry about, so Maybe doesn't need to address this issue as optional does. ... and later ... I account the possibly undefined behavior of accesing an

[boost] Re: Re: Re: Optional, tie, and iterator_adaptor

2003-09-01 Thread Fernando Cacciola
Joel de Guzman [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] Fernando Cacciola [EMAIL PROTECTED] wrote: Even if I agree with you that an optionalT should not be a T, an optionalT is definitely not a pointer to T. Definitely! If HTML had blinking banners I think I'd use one