変数は、スカラー、配列、ハッシュやリファレンスのようにいくつかの種類がある。プログラムを書くときに、これらの変数に値(データ)を一時的に保存することで、プログラムの中でデータを随時に取り出して処理できたりする。変数の名前は英数字およびアンダースコアを利用して命名することができる。文字目は英文字またはアンダースコアである必要がある。大文字と小文字は区別される。代入できる変数である。値の種類に関わらず、値が定義されていれば、真を返す。定義された値に対して、その値が真なのか偽なのかを判定することができる。場合の判定は偽であり、それ以外の場合は真である。以上)は空文字ではない。行で定義の判定と値の代入を行うことができる。atg値が偽ならば代入する場合は次のようにする。配列には複数の値を代入することができる。詳細な使い方は配列を参照。ペアとなって保存される。コドンをキーとしてアミノ酸を値としたりして作成することができる。詳細な使い方はハッシュを参照。Pリファレンスリファレンスは変数のメモリ上にアドレスを保存するための変数である。このリファレンス変数には、スカラーのアドレス、配列のアドレスやハッシュのアドレスなどを代入することができる。詳細な使い方はリファレンス変数を参照。