Il Perl è un linguaggio nato per la gestione semplificata dei file e del testo, ed ha avuto fortuna come linguaggio per CGI, per gli script della shell e per diversi altri compiti.
Il Ruby è simile al Python, è un linguaggio di livello per uso generale con il quale puoi farci un po' di tutto, dalla gestione dell'I/O fino alla gestione delle interfacce grafiche. Ha trovato popolarità grazie all'uso come linguaggio base di Rails, il framework per lo sviluppo di applicativi web. Ecco perché spesso si pensa che Ruby sia solo web-oriented. Io ho iniziato un po' a studiarlo e devo dire che rispetto al Python è più orientato agli oggetti e meno filosofico (a me non piace quella specie di Zen che i Pythonisti convinti seguono quando scrivono codice "pythonico").
Insomma, non sono linguaggi orientati solo al web, anche se si può dire che dal web hanno tratto benefici entrambi.
Il Perl permette di scrivere codice talmente sintetico che alle volte questa sinteticità rasenta l'illeggibilità.
Entrambi sono linguaggi di script di alto livello, vale a dire che hanno bisogno di un interprete installato sul sistema dove dovranno girare i programmi.
Se vuoi imparare qualcosa di alternativo a Gambas, tra i 2 menzionati ti consiglio senz'altro Ruby.