Perl Mail Checker

So I got sick of Outlook eating all my RAM. I have it open all the time during the day, so that I can see when I have new email. However, it also ate are about 140mb of my ram to do this simple task.

I wanted a light replacement. I tried some programs on the net but they used a fair bit of RAM. So decided I would write my own simple client in .NET that did exactly what I wanted.
While I was looking for .NET libraries to access my IMAP mail server, I found 
It looked pretty useful, and I realised perl would be a lot easier.. But I wanted a system tray icon when I had new mail.. Some more googling found me..

So I decided to play with it. And by the end of it, I got myself a nice simple imap mail checker using perl.
The way it works is not like most mail checkers. It does not run all the time. It only runs, checks if there is new mail, and if not, closes. So the way I use it:
  • Task Scheduler starts my script every 3 minutes
  • Script runs, and if there is no mail, closes. If there is mail, show a notify icon (for 2 minutes)
  • I click the notify icon to open Outlook.
The advantage – when there is no new mail, a new process is started every 3 minutes, and it ends straight away. When there is new mail, perl continues running, which takes up barely any ram. (13 mb last time I checked). I click the icon and Outlook starts up, allowing me to read the mail in my usual client.
So, RAM usage has been minimized, yet I am not missing any features. Files for this can be found here.