3 ms·
Ok, more responses: > i can't say i love the language at all That is a sample of one. Try visiting a YAPC and you'll see a sample of 1000+ that is opposite to
by Mithaldu 15y ago
Ok, more responses:
> i can't say i love the language at all
That is a sample of one. Try visiting a YAPC and you'll see a sample of 1000+ that is opposite to your's.
>> often can find the core developers in charge of some code
> i browsed a lot through CPAN and a huge part of modules hasn't been touched for years
What you said has nothing to do with what you quoted. CPAN allows you to email those authors and the vast majority will reply happily. And even in cases where they don't, it's easy to go on irc.perl.org and ask around in #perl.
> the IRC channels i know are more idle then other languages
You're not in the right channels. Try irc.perl.org or #perl on freenode.
> it's really untrue to say "there is nothing like it"
It is perfectly true. See this post for elaboration: http://hackerne.ws/item?id=3238662 http://hackerne.ws/item?id=3238662
> often enough i think "mhh, should i even use this module? Nobody seems to care about this anymore"
Did you try asking around? Look for alternatives? Often that is because the remaining bugs are no dealbreakers (license nitpicks anyone?) or the modules have been determined to be crap (XML::Simple).
> But it tries to solve a problem that shouldn't be there in the first place.
I fully agree, but quite frankly, if you view this as a downside of Perl then you're just plain being short-sighted. The problem was created over a decade ago, at the conception of Perl 5; yet it is comfortably fixable without even changing core. And additionally, there is active work on fixing this issue in core:
https://github.com/stevan/p5-mop https://github.com/stevan/p5-mop
> Want to have exceptions in Perl? Turns out the language doesn't have them.
Valid complaint. Exception::Class is a good tool for this, but i'd also like to have them in core. So far there has been no concensus on how to do it properly though without breaking backwards compatibility.
> The number one google hit
Google's search results for Perl are terrible and do not reflect the state of the community. Try searching for exception on CPAN itself.
> Perl thinks it's ok when you read an uninitialized variable. Want the script to terminate when this happens?
`use warnings FATAL => 'all';`
> Want to know if an element is in an array?
`my @hits = grep { $_ eq 'dogfood' } @array;`
Alternatively:
`use List::Util 'first'; my $has_dogfood = first { $_ eq 'dogfood' } @array;`
And this is in core.
> Unicode Support is horrible
I'll have to post this twice because you're so wrong:
http://www.nntp.perl.org/group/perl.perl5.porters/2011/07/msg175113.html http://www.nntp.perl.org/group/perl.perl5.porters/2011/07/ms...
> My fun fact on Perl:
{{citation}}
> When your script/tool exceeds 100 lines of code, don't use Perl! Atleast not if there is the remote possibility of another human being having to understand or maintain it. Please!
Well how nice to show at the end at least that you're a troll.
- buster 15y ago> That is a sample of one. Try visiting a YAPC and you'll see a sample of 1000+ that is opposite to your's. Sure, i never said that no one likes Perl. I'm well aware that many people like Perl. This may sound harsh, but here is my impressions of the people i've personally talked to that use Perl (please don't take that personal, i'm well aware that there are A LOT of good programmers out there): - Typically too lazy to learn a new language or even new paradigms (often enough aren't interested in OO style programming or even basic best practices, code conventions, some of them i had a hard time to even convince using a VCS!) And you don't believe how many people like this are out there (not related to Perl, but in every area)! A basic problem: Perl allows them to hack away all day and write hideous code that ensures they will never get fired. Due to their laziness the script will be undocumented, lack basic error checking, will have myriads of bugs and often fail, but no one except them will be able to fix it in a reasonable time frame. This is where you will be upset and think i am really unjust and a troll: I'm stating that Perl supports this behavior like no other language. (except maybe brainfuck ;) ) My basic statement about Perl: It is possible to write readable, tested and maintainable code in Perl. BUT it is hard if not impossible with just the base language. It is by far easier to get it wrong then to get it right in Perl for the newcomer or average programmer. > What you said has nothing to do with what you quoted. CPAN allows you to email those authors and the vast majority will reply happily. And even in cases where they don't, it's easy to go on irc.perl.org and ask around in #perl. I must admit that i didn't write a mail to an author. I don't consider this a good way to discuss problems with modules anyway, since this results in closed discussion and won't help anyone with the same problem in the future. A forum, bugtracker or other means of collaboration software is far better suited for this, IMO. This may be a nice addition to CPAN, imo, having discussions on the modules.. probably linked on the module page.. Just dreaming here.. :) At the end (as i have said) CPAN is probably the biggest advantage of Perl. >> It is perfectly true. See this post for elaboration: http://hackerne.ws/item?id=3238662 http://hackerne.ws/item?id=3238662 "there is nothing like it" states that CPAN is unique in every way, and it is not! http://stackoverflow.com/questions/1693529/list-of-top-repositories-by-programming-language http://stackoverflow.com/questions/1693529/list-of-top-repos... > Did you try asking around? Look for alternatives? Often that is because the remaining bugs are no dealbreakers (license nitpicks anyone?) or the modules have been determined to be crap (XML::Simple). I don't want to ask around for two weeks, i want to work and get started. Time is money. Config::Simple (is it crap too? i don't know now anymore) contains quite some bugs that are marked as important for a few years now. So a module is stopped being developed and determined as being crap but how do i know that from the look at CPAN?! I'm not sure if i should go on here and just search CPAN for other modules for example. I can't really convince you here but the overall feeling of browsing CPAN for modules is that there is a lot of old and outdated stuff in there, no discussions, no way to tell what is best to use, what is maintained. If you don't see it like that, then ok, but that's not only my impression. I looked at the CPAN statistics page but unfortunately i can't find usable statistics for my cause. Is there a statistic that shows the average time since the last update for all modules over the years? May be not a good statistic.. mhh... Amount of new package versions uploaded overall? Amount of fixed/open bugs? A TOP100 of most active modules? > `use warnings FATAL => 'all';` Tried that, but somehow it didn't work for everything, i'm not sure if some module was misbehaving. > `my @hits = grep { $_ eq 'dogfood' } @array;` > Alternatively: > `use List::Util 'first'; my $has_dogfood = first { $_ eq 'dogfood' } @array;` > And this is in core. I think i was picking on the "search" too much, actually i meant the whole handling of arrays. Try to remove an item in the middle. Try to find which position element X has and delete or move this element. Stuff like that. It's really not as nice as in pretty much every other major language. The hint at List::Util is good but List::Util is really just a small list of functions. Example: Looking for an element and deleting it? (Taken from perlmonks.org) my @array = qw( your array here ); my $search_for = "here"; my( $index )= grep { $array[$_] eq $search_for } 0..$#array; splice @array, $index, 1 I'm sorry, but this is hideous, really. Just to show you an example of what "modern" languages can do: >>> array = ["a", "b", "c", "d"] >>> search = "b" >>> array.remove(search) >>> print array ['a', 'c', 'd'] > Fun fact Unforunately i have read this statement in a magazine about Perl 6 and some tutorials for it. I don't have this magazine anymore but it's a quite respected IT journal in germany (i'x from Heise). I am trying to find prove. > Well how nice to show at the end at least that you're a troll. Sorry to have wasted your time, then. No, honestly. I can see how Perl can be used as a very powerful replacement for bash scripts, but i can't see it as a serious choice for a large product programmed by dozens of people (surely you now head of to show me examples of Perl software. This doesn't change my mind, though. There probably even is a significantly large program written in brainfuck, this wouldn't convince me to use it, though.) Last Note: I may sound like harsh, bitter or trolling and i feel that HN is not the right place to have this discussion. I'm surprised that i haven't been downvoted to hell, but i think i am quite alone with my opinion here.. Rest assured that i had this discussion with other IT guys in the past and i'm not alone..