in reply to print curly brackets
One subtlety of Perl is the difference between single and double quotes.
The statement, print '$foo\n'; would print the string: $foo\n. That is to say, six literal characters exactly as shown.
The statement, print "$foo\n"; would print whatever is the value of the variable $foo, followed by a newline.
What’s the difference ... the only difference? The quote-marks. Perl calls this process, interpolation.
If you say, print '\{';, notice the single quotes, then the two characters will be output literally: a backslash followed by a curly-brace. Whereas, in double quotes, the two-character sequence would be interpreted as a character-escape meaning, “one left curly-brace.”
Postscript: So, how do you produce a backslash in a double-quoted string? By using two backslashes. “\\” is a character-escape corresponding to “a literal backslash.”
Fun with Perl: What about ten literal backslashes in a row? Here’s one way: print '\' x 10; The “x” operator is a handy thing indeed, sometimes.