>> the critical thing Perl was lacking was PHP's wonderfully flexible "associative arrays"
I grabbed my copy of "Learning Perl" from 1997. Chapter 5's topic? Hashes.
>> the critical thing Perl was lacking was PHP's wonderfully flexible "associative arrays"
I grabbed my copy of "Learning Perl" from 1997. Chapter 5's topic? Hashes.
CS types might recoil at the mixture of behaviors that are baked into PHP's workhorse data structure, but most of them turn out to be quite useful. (And it makes it easier for the beginner programmer to decide what data structure to use: you have keyed data? a list of data? a set of values? doesn't matter, just use an array!)
Edit: For a beginner that wants a Visual Basic for web, sure. By now I have different needs, to enjoy using my tools. (And for the record, if I need to keep order of a hash/dict/etc in some language, I generally use a "traditional" array in addition. That is probably too complex for a beginner? :-) )
Edit 2: I'm not dumping on PHP, it is a useful tool for many people. I just wish the development of the language had been handled a bit more carefully.
This is the point at which serious students of language design point out that, if you look at it from a certain angle, PHP doesn't have arrays built into the language. As it turns out, treating two distinctly different data structures with different semantics and performance characteristics as the same thing multiplies edge cases and bugs.