Linked by David Adams on Tue 14th Jul 2015 23:21 UTC
Original OSNews Interviews From Linux Voice: "Perl 6 has been 15 years in the making, and is now due to be released at the end of this year. We speak to its creator to find out what’s going on."
Thread beginning with comment 614140
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[3]: Why perl?
by Wondercool on Wed 15th Jul 2015 22:00 UTC in reply to "RE[2]: Why perl?"
Wondercool
Member since:
2005-07-08

It's been a long time since most of those features were considered to be anything more than *absolute minimum* functionality for any popular scripting language.


You would think so, I tried to learn Ruby lately but it isn't easy. I couldn't understand why it wouldn't accept constructs like my_array[][] and it turns out that you have to create your own overloading to do auto-vivification. I just couldn't believe it.

Reply Parent Score: 2

RE[4]: Why perl?
by Delgarde on Thu 16th Jul 2015 01:55 in reply to "RE[3]: Why perl?"
Delgarde Member since:
2008-08-19

You would think so, I tried to learn Ruby lately but it isn't easy. I couldn't understand why it wouldn't accept constructs like my_array[][] and it turns out that you have to create your own overloading to do auto-vivification. I just couldn't believe it.


"Most" of those features, I said. Auto-vivification isn't supported by many other languages, but you're also citing such basic things as arrays, maps, and file handling. These aren't exactly unusual features in a scripting language...

As to auto-vivification, it *is* a nice feature, particularly for nested map structures, but not so nice as to outweigh all the other issues with the language...

Reply Parent Score: 3

RE[4]: Why perl?
by cfgr on Thu 16th Jul 2015 08:13 in reply to "RE[3]: Why perl?"
cfgr Member since:
2009-07-18

Autovivication causes headache and bugs. I'd rather initialise an object explicitly. It's just too error prone and it takes too long to figure out what's going on: "are we accessing something that is already initialised or did the author intend to initialise it here? Or did the author make a mistake by accessing something that he forgot to initialise somewhere?"

There is also no coherence, some functions do it, others do not. It consumes more brainpower than necessary, energy that could be used for more important things.

Edited 2015-07-16 08:14 UTC

Reply Parent Score: 3