use strict; use warnings; use Path::Tiny; sub find_base { -f "$_[0]/.marker" ? $_[0] : find_base($_[0]->parent) } my $base = find_base( path(__FILE__)->realpath->parent ); unshift @INC, "$base/lib"; use Some::Class; ...