Research Scientist, self-proclaimed Geek, Code Writer
Feb 20 2009

Replanning/Perception demo

During my Willow Garage internship, Ioan and I worked on a few things with the PR2 mobile robot. Here’s one of them. :) You can also try here if the above link doesn’t take you directly there.

WG Demo #1


Feb 20 2009

Laser disassemblies

If you were ever wondering how a spinning 2D laser sensor unit looks like from the inside, Travis Deyle has a few of them linked on his Hizook portal web site.


Feb 20 2009

How To Write Unmaintainable Code

A very good friend recommended me this today: http://freeworld.thc.org/root/phun/unmaintain.html =) Hilarious!


Feb 18 2009

Modern Boost warnings

From the book of life, the universe and pretty much everything else, here’s what Boost warnings look like these days…


/usr/include/boost/spirit/home/classic/core/non_terminal/subrule.hpp:262: instantiated from âtypename boost::spirit::parser_result, ScannerT>::type boost::spirit::subrule::parse_main(const ScannerT&) const [with ScannerT = boost::spirit::subrules_scanner, std::allocator > >, boost::spirit::nil_t>, boost::spirit::scanner_policies >, boost::spirit::subrule_list<0, boost::spirit::sequence, boost::spirit::eol_parser> > >, boost::spirit::functor_parser >, boost::spirit::action, phoenix::actor
>, phoenix::actor
>, phoenix::nil_t, phoenix::nil_t> > > >, boost::spirit::alternative, boost::spirit::kleene_star >, boost::spirit::functor_parser >, boost::spirit::optional<4, boost::spirit::parser_context >, cpp::SetSpecialToken>, phoenix::actor
>, phoenix::actor
>, phoenix::nil_t, phoenix::nil_t> > > > >, boost::spirit::action<2, boost::spirit::parser_context >, cpp::SetSpecialToken> >, boost::spirit::action<3, boost::spirit::parser_context >, cpp::SetSpecialToken> >, boost::spirit::action >, boost::spirit::action >, boost::spirit::action >, boost::spirit::action >, boost::spirit::action >, boost::spirit::action >, cpp::SetOperatorToken> > >, boost::spirit::action
<0, phoenix::closure > >,phoenix::actor
>, phoenix::nil_t, phoenix::nil_t> > > >, boost::spirit::parser_context >, boost::spirit::subrule_list<4, boost::spirit::sequence, boost::spirit::subrule<1, boost::spirit::parser_context > >, boost::spirit::parser_context >, boost::spirit::subrule_list<3, boost::spirit::sequence, boost::spirit::kleene_star > > >, boost::spirit::strlit >, boost::spirit::parser_context >, boost::spirit::subrule_list<2, boost::spirit::sequence, boost::spirit::subrule<1, boost::spirit::parser_context > >, boost::spirit::parser_context >, boost::spirit::subrule_list<1, boost::spirit::kleene_star, boost::spirit::eol_parser>, boost::spirit::difference > >, boost::spirit::parser_context >, boost::spirit::nil_t> > > > > >, boost::spirit::subrule_list<0, boost::spirit::action<1, boost::spirit::parser_context >, boost::spirit::subrule<2, boost::spirit::parser_context > >, boost::spirit::subrule<3, boost::spirit::parser_context > >,boost::spirit::subrule<4, boost::spirit::parser_context > >, phoenix::actor
<0, phoenix::closure, std::allocator >, phoenix::nil_t, phoenix::nil_t> > >, phoenix::actor
, std::allocator > >, phoenix::actor
<0> >, phoenix::actor
<1> >, phoenix::nil_t, phoenix::nil_t> >, phoenix::nil_t, phoenix::nil_t> > >, boost::spirit::parser_context >, boost::spirit::subrule_list<5, boost::spirit::optional, boost::spirit::chlit > > >, boost::spirit::parser_context >, boost::spirit::subrule_list<4, cpp::private_stuff::CHARACTER_LITERAL, boost::spirit::parser_context >, boost::spirit::subrule_list<3, boost::spirit::contiguous, boost::spirit::subrule<5, boost::spirit::parser_context > > >, boost::spirit::parser_context >, boost::spirit::subrule_list<2, boost::spirit::contiguous, boost::spirit::positive > >, boost::spirit::subrule<5, boost::spirit::parser_context > > >, boost::spirit::parser_context >, boost::spirit::subrule_list<1, boost::spirit::contiguous, boost::spirit::inhibit_case > >, boost::spirit::positive >, boost::spirit::subrule<5, boost::spirit::parser_context > > >, boost::spirit::parser_context >, boost::spirit::nil_t> > > > > > >, int ID = 0, ContextT = boost::spirit::parser_context]â