Encontrando o tipo de dados de uma variável escalar no Perl

Tenho uma função que aceita uma entrada do usuário. A entrada talvez seja um número inteiro, um float ou uma string. Eu tenho três funções sobrecarregadas que devem ser chamadas com base no tipo de dados dos dados inseridos. Por exemplo, se o usuário digitar um número inteiro (por exemplo, 100), a função que possui o parâmetro inteiro deve ser chamada. Se o usuário digitar uma string (digamos "100"), a função que possui o parâmetro string deve ser chamada.

Então, preciso descobrir o tipo de dado inserido. Com expressões regulares, sou capaz de distinguir entre um número inteiro e um número flutuante (já que só preciso descobrir o tipo, não vou preferir usar a biblioteca fornecida em cpan.org), mas não consigo descobrir como diferenciar um número inteiro. inteiro de uma sequência. Perl trata "100" e 100 como o mesmo? Existe alguma maneira de solucionar esse problema?

questionAnswers(4)

yourAnswerToTheQuestion