Concept : Educational OO Polymorphism practice with Japh
#!/usr/bin/perl
package J ;sub new{$__=shift and(%__)=@_ and bless{1,
$__{1}, },$__} package main; #Polymorphism J A P H
package A ;sub new{$__=shift and (%__)= @_ and($___)=
J->new( @_)and$___->{2}=$__{2}and bless($___,$__);}
package P ;sub new{$__=shift and (%__)= @_ and($___)=
A->new( @_)and$___->{3}=$__{3}and bless($___,$__);}
package H ;sub new{$__=shift and (%__)= @_ and($___)=
P->new( @_)and$___->{4}=$__{4}and bless($___,$__);}
$o=H->new (1,Just,2,Another,3,Perl,4,Hacker); print "$o->{
$_} " foreach sort keys %{ $o } ;# Educational Concept