assignable | passable as parameter | passable as return value |
|
First-class | yes | yes | yes |
Second-class | yes | yes | no |
Third-class | yes | no | no |
In many programming languages, labels are third-class values while numerical values are first-class values. A few languages use this kind of exact distinction.