Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

$0 (along with $1 etc.) is used in shells, at least bash [and original sh?]. I think Perl just borrowed those, like $ prefixes to variables or not offering explicit subroutine arguments, from the traditional unix shell(s).


And $$, and $?. Even Perl's $#x syntax to get the max index of @x seems to come from shell's $#.

Also interesting, Ruby copied most of Perl's crazy variables [1].

[1] http://www.rubyist.net/~slagell/ruby/globalvars.html


Ruby's goal was to be Perl, but better.


Then they probably shouldn't have copied the crazy obscure variable stuff ;-)

(I say that as a Perl and Ruby fan)


Matz admits that he might have stolen too much from Perl and got some "whale guts" over his shoes - but only a little.

From the obligatory Yegge rant: https://sites.google.com/site/steveyegge2/tour-de-babel


Linking yegge is quite pointless, since even in that little screed he demonstrates amply how he doesn't even know the basics of Perl and in fact knows so little that his judgement isn't worth the bytes that store it.


From traditional UNIX shells, by way of awk. perl was originally written as a fancier version of awk (to the point that, until recently, it came with a utility "a2p" that translated awk source code to perl), so that's where it got the variables.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: