in reply to Meanigs of Expressions

Please put code or c-tags ( <c> and </c> ) around your code

The first line gets the name with which the script was started and throws away everything up to the last '/', i.e. any path components. s is a normal substitution regex, just with the delimiter '@' instead of '/'

The second line has a syntax error (was it .../^chipcore/;' ? Maybe a result of you not using code tags). If the string $_ starts with the word chipcore, $arg is set to 1 and the first value of @ARGV (or in a subroutine @_) is shifted off and put into $chipcore

Third and fifth line: Did you read the documentation of (probably) XML::utils ? If not, do it

The fourth line interpolates some values into a string that probably continues after that, because there is no ending delimiter