language-and platform-independent tools used for building and distributing ROS-based software; ROS client library implementations such as roscpp,[5] rospy,[6] and roslisp;[7] packages containing application-related code which uses one or more ROS client libraries.[8]