Yes you can, however I would not allow Virtual Machine.
Good news
Where is this supported in the books? (so I can point others, including possibly a GM, towards it)
Except as I said, it's legit.
The Program Carrier is a module which is designed to run a single program. You decide what that program is when you buy it, and it cannot be changed.
Virtual Machine is a program, which creates 2x virtual program slots for you to run whatever programs you wish. However, since you're running those programs virtually instead of with actual hardware program slots, it makes the whole device unstable and more prone to taking Matrix damage if you suffer any.
So you get the Program Carrier hardware module, and you make it run Virtual Memory. It's running a single program, by design. But the program gives you 2 slots which you can change out at will, assuming you're willing to risk the extra Matrix damage for the privilege.
It's 100% within the rules. Given that we're talking about hotwiring a Commlink to be a cheap Cyberdeck, you have to realize that you're already doing things differently. But if you deny your players being able to run Virtual Machine on the Program Carrier, you may as well deny true Deckers from using Virtual Machine on their Cyberdecks as well.