static public function underscoredToCamelcased($str, $ucfirst = false) {
        if ($ucfirst) {
            $str = ucfirst($str);
        }
        $func = f\compose('strtoupper', f\prop(1));
        return preg_replace_callback('/_([a-z])/', $func, $str);
    }