use constant { FOO => 0, BAR => 1 }; #### sub Point3D::new( CLASS, X, Y, Z ) { return bless [ @_[ X, Y, Z ] ], $_[ CLASS ]; }