I’m sitting here at work reading a section of the “Programming Perl” book by O’Reilly, which is a really good Perl book, and going blind reading statements like
To dereference this scalar means to use the reference to get at the referent. Both referencing and dereferencing occur only when you invoke certain explicit mechanisms; implicit referencing or dereferencing never occurs in Perl. Well, almost never.
A reference can point to any data structure. Since references are scalars and you can store them in arrays and hashes, and thus build arrays of arrays, arrays of hashes, hashes of arrays, arrays of hashes and functions, and so on.
Now, if that makes perfect sense to you, well, GET A LIFE! Holy cow! (Sadly, it is starting to make sense to me.) One of the down sides to being self educated is I have to go over stuff like this again and again till it actually makes sense. Otherwise I end up with unknown holes in my knowledge that might burn me later down the line. Trying to figure out what is important and what isn’t can sometimes be difficult. Where having a professor just say, this might be good to know later, but ignore it for now, can save a lot of time.
Learning to program is really like learning a new written language, and then a bunch of different dialects of that language.
Perl, C, C++, etc all use very similar syntax. The underlying logic is very similar, a loop is a loop, a variable is mainly a variable. I suppose it’s like growing up speaking Spanish, then learning English, American English that is, then Scottish English, then maybe Welsh English, then maybe Indian English. They are all fairly close to each other in certain respects, but don’t mistake Pants in American English for Pants in Scottish English. Oh buddy will ya get a red face.
Languages I’m either currently learning or already know enough to hack in. Basic, Pascal, C, C++, Fortran, Perl, Korn, Bash, Expect, Ruby, Tcl, MPI.
And yet I can barely speak a lick of Spanish. Go figure. It’s time for a nap.


3 comments
Comments feed for this article
July 29, 2008 at 2:16 PM
John Leidel
You need to add UPC to that list
July 29, 2008 at 2:49 PM
Rich
I’m WORKING on it!!!
Hehe… Howdy John!
Which first? CUDA, UPC, Fortress, Chapel, or maybe Co-Array Fortran? Ah kill me now, this old wrench turners brain is turning to mush!
Hope you’re doing well bud.
Rich
August 3, 2008 at 2:29 AM
Anonymous
Hrm… tough decision mate. UPC is seriously cool, but so is CUDA. I’ve seen a few snippets of Fortress and Chapel. Not enough to make me want to run out and start coding in each. Your employer would probably appreciated you learning CAF