>>23
定数値のかわりにわかりやすい変数名をつかいたいということであれば、
Symbolを使えばいい。
C言語でいう
typedef enum {
 TOKEN_IF,
 TOKEN_WHILE,
 TOKEN_FOR,
} Token;
は、Rubyでは
:TOKEN_IF
:TOKEN_WHILE
:TOKEN_FOR
でオK。

ただし、そのenumに順番な値を割り当てて使いたいというなら、Symbolでは無理。
module Token
 IF = 1
 WHILE = 2
 FOR = 3
end
としてToken.IFやToken.WHILEでアクセスする。