You are confused in quoting the shell. When entering:
ack "\\\$\\\$\("
the shell interpolates the double-quoted string, so it \\translates to \, \$translates to, $and \(translates to \(, and ack receives the string \$\$\(as its argument. It is much easier to avoid shell interpolation with single quotes and call:
ack '\$\$\('
Replace ackwith echoto find out how the shell expands strings. note that
ack "\\$\\$\("
, . \ () \, $ $, , . \( \( (, ( , , . , \( (.
!