Hi C. E., > for a high-level language, [Perl's] syntax is unnecessarily difficult > and obscure.
Perl's syntax is heavy on notation, but then notation is powerful compared to the long-hand alternatives, and that's why it's fine in maths, chemistry, and Perl. For the occasional visitor, Python's that way → Perl uses sigils, a symbol attached to a variable name, but then so does sh(1) that influenced it. Many languages do, Ruby, PHP, ..., though not all the time, e.g. Python has `@foo' to mean it's a decorator function. Perl also sigils to indicate the type of an identifier, so `$foo' is a simple scalar variable whereas `@bar' is a indexable list. Similar syntax differences allow literals to be given: `[42, 314, "xyzzy"]' is a list whereas '{May => 10, Hammond => 11}' is a `hash', AKA associative array or dictionary. Perl is no harder to learn than C or Ruby. They both like notation too, e.g. the «int foo(int, int (*)(void *, char *), void *);» I wrote recently. Perl's easier than PHP because that has far too much duplication, bad design, and corner cases to memorise. C++ is also something to avoid; too large a language and each coder uses a distinct subset. Assembly languages are easy, once you understand a CPU's workings, but RISC ones like ARM are nice to learn compared to the twisty passages of x86. > The whole point of high-level languages, the reason they were > invented, was make to programming more human-readable and therefore > more understandable, but Perl bucks that trend. I think it was to give more expressive power than assembly language by introduction abstraction, and notation, at the cost of efficiency. Plenty of Unix programmers with a sh, sed, awk, background found Perl straightforward to pick up because it distilled their features into a single language. It was Perl 4 when I learnt it, and a single well-written man page described the language and that's all the documentation there was. -- Cheers, Ralph. https://plus.google.com/+RalphCorderoy _______________________________________________ get_iplayer mailing list get_iplayer@lists.infradead.org http://lists.infradead.org/mailman/listinfo/get_iplayer