Can I do [task] in Perl?

Almost certainly, but you should consider whether Perl is for you the right tool for the task. For many people, Perl serves as a great replacement for shell scripting. For others, it serves as a convenient, high-level replacement for most of what they'd program in low-level languages like C or C++. In fact, the ability to create extensions and modules let you do almost anything with Perl, nowadays. The tasks which you'll use perl to accomplish may be simple prototypes, or complex systems. It's all up to you (and possibly your management...) which tasks you'll use Perl for and which you won't.

The typical Perl extension may be written in C or C++ and dynamically linked into your main perl script, so there's not much you can't do. If you have a library which provides an API, you can make any component of it available as just another Perl function or variable. You can also go the other direction, and write your main program in C or C++, and then link in some Perl code on the fly, to create a very powerful application, indeed.

That said, there will always be small, focused, special-purpose languages dedicated to a specific problem domain that are simply more convenient for certain kinds of problems. Perl tries to be all things to all people, but nothing special to anyone. Examples that come to mind of specialized languages include prolog and matlab.