I typically compile with Boost. That said, I do have a couple of (relatively minor) concerns.
Would requiring Boost complicate/prevent the compiling and use of Moses on smaller mobile platforms, such as iOS, Android, and OLPC? When I was working with Hieu on the iPhone port, I don't remember having to compile Boost. It probably is possible, but I don't know how it would affect compiling on iOS, if at all. Compiling against Boost can sometimes be a pain, specifically in the case where you're using an older Linux distro that doesn't ship with a modern enough version of Boost. Unfortunately a bunch of the machines in my lab are still running CentOS 5.x, which has an ancient version of Boost. I have a newer version of Boost compiled on the machines, but I've definitely had problems convincing autotools to find and use that version when there's also a version installed in /usr. So to avoid that pain, when I'm on a machine with an older Linux distro, I typically just compile with Boost turned off. So as much as I hate to be the kill-joy, if Boost is made mandatory, please require the oldest version that provides the needed functionality. Cheers, Lane On Thu, Sep 22, 2011 at 8:24 AM, Christian Hardmeier <[email protected]> wrote: > Hi, > > I very much agree with Barry when it comes to Boost. In my opinion it should > be required, but there should be some control over the packages used. While I > can't see a good reason not to use smart pointers, you probably don't want > people to start using lambda expressions all over the place, especially when > some of the developers aren't familiar with this kind of code. > > Cheers, > Christian > > On Sep 22, 2011, at 2:11 PM, Barry Haddow wrote: > >> Hi >> >> Here's my thoughts: >> >> - there should be single and multi-thread compile paths so single-thread >> users don't pay the lock penalty. Maybe a -threads 0 works, but then you >> have to check a config each time you want to lock >> - boost should be required, but care about which packages we use >> - cruise control will help catch these compile path errors, once it's up and >> running >> >> Cheers Barry >> >> Sent from my ZX81 >> >> ----- Reply message ----- >> From: "Miles Osborne" <[email protected]> >> Date: Thu, Sep 22, 2011 11:33 >> Subject: [Moses-support] Multi-threading / Boost lib / compile error for >> threaded Moses >> To: "Kenneth Heafield" <[email protected]> >> Cc: <[email protected]> >> >> >> this is the last thing i will post here on this subject: >> >> debugging with a single thread running invokes the threading code. >> ***if you suspect that this is somehow broken, then you need to debug >> without it***. it is that simple. >> >> running gdb in single thread mode still uses threading. >> >> Miles >> >> On 22 September 2011 11:28, Kenneth Heafield <[email protected]> wrote: >> > But I don't see a use case for it. I can run gdb just fine on a >> > multithreaded program that happens to be running one thread. And the >> > stderr output will be in order. >> > >> > On 09/22/11 11:21, Miles Osborne wrote: >> >> should someone want to debug with no threading, then there would need >> >> to be a mess of ifdefs removing all support for threading. i agree, >> >> this will be a pain to deal with, but this is what debugging with no >> >> threads means. >> > >> > >> >> >> >> -- >> The University of Edinburgh is a charitable body, registered in >> Scotland, with registration number SC005336. >> >> _______________________________________________ >> Moses-support mailing list >> [email protected] >> http://mailman.mit.edu/mailman/listinfo/moses-support >> >> >> >> _______________________________________________ >> Moses-support mailing list >> [email protected] >> http://mailman.mit.edu/mailman/listinfo/moses-support > > > _______________________________________________ > Moses-support mailing list > [email protected] > http://mailman.mit.edu/mailman/listinfo/moses-support > -- When a place gets crowded enough to require ID's, social collapse is not far away. It is time to go elsewhere. The best thing about space travel is that it made it possible to go elsewhere. -- R.A. Heinlein, "Time Enough For Love" _______________________________________________ Moses-support mailing list [email protected] http://mailman.mit.edu/mailman/listinfo/moses-support
