Tag Info

Hot answers tagged

45

First of all, stop thinking that your job is not bringing your further towards your dream job! Every job does! Everything is only up to you! This is your first job after your graduation and everyone can understand that you didn't have a good choice or might have considered some other factors, like moving to the place where you'd like to stay. This is a ...


27

The only universal definition I know of for "regular language" is one that can be parsed with a deterministic finite automaton, or expressed as a true regular expression (not the extended REs in many current implementations). A regular expression can be written in a series of characters, with potentially infinite repetitions and alternate selections. Since ...


23

Perl is a high-level, general-purpose, multi-paradigm, interpreted, dynamic programming language. Java is a high-level, general-purpose, mostly single-paradigm, statically typed programming language. So, both are high-level: A high-level programming language is a programming language with strong abstraction from the details of the computer. and ...


22

Aside from the inherent virtues of Perl, part of this is simply history. There was a major expansion of bioinformatics at the turn of the century because of the Human Genome Project. At the time Perl was by far the most popular scripting language in general use. Ruby and Python were certainly around, but didn't have nearly the support/mind share they do ...


20

Looking at most (if not all) dynamic languages [i.e Python, PHP, Perl and Ruby], they are all interpreted. Not true. You can compile Python source. That's one existential proof. There are interpreters for statically-typed languages, and compilers for dynamically-typed languages. The two concepts are orthogonal. Side note: In general, a language is ...


19

Ten years down the lane there will be a similar question 'Is there any good reason for someone who knows language X to learn Python' or 'What is Python 'better' at than language X'? In other words inside the hype cycle it looks like a particular technology may stay around for a long time. I will stop at that. Since you've specifically asked whats Perl ...


19

If you design your application properly, with adequate separation of presentation and content, you can bring in your web designer, who can provide you with the needed CSS and graphics, and it shouldn't matter what language you develop the backend in.


19

Some points: As a Perl developer, pretty much any company will expect you to know MORE than Perl. Even in pure Perl shop, you need to know (ideally) JavaScript/overall web development; and SQL for back-end work. And most companies have a mix of languages, so you should be prepared to be Perl/C++ or Perl/Java or whatever else is needed. Much as the fact ...


18

Perl 5 and Perl 6 are different languages, not two versions of the same. Perl 6 is heavily inspired by Perl 5, but not exclusively. I would suggest focusing on Perl 5 for now. If you watch the community (I'd suggest the Planet Perl Iron Man aggregator, you'll also see posts and content from the Perl 6 community and can keep an eye on it. Also, many features ...


15

"It's opensource, everyone gives in" pretty much is the state of the funding for these languages. (Aside from Google, of course.) Your question seems to be based on the unspoken assumption that in order to develop the language, it has to be funded by someone with deep pockets, and this simply isn't true. Development (of anything) doesn't require money, it ...


13

The Perl community is old (as in "has existed for a long time", not "is a bunch of gray-bearded guys"), and thus very diverse. We have RFC-fetishists, UI-enthusiasts, old-timey administrators, new-age administrators, strict traditional developers, agile developers, hobby developers, scientific users, people who mostly work on back-ends, people who work ...


13

Common Lisp is dynamically (and strongly) typed and usually compiled. Since this dynamic-ness is achieved at runtime, there are some directives you can use in source code to assure the compiler that a symbol will hold only a certain kind of value, so that the compiler can optimize the generated code and boost performance.


13

What makes Perl so useful for bioinformatics is that 1) its a relatively easy language to learn, 2) there are lots of pre-existing scripts to use, including bioPerl and 3)chances are the lab you work in has hundreds of scripts and modules, already written in Perl. The level of the programmer less to do with the choice of language, then the tasks being asked ...


13

It is a tongue-in-cheek mockery of an earlier meme about "real programmers" which is a variation of the "no true Scotsman" fallacy and "real men don't eat quiche" which was a very popular book. http://c2.com/cgi/wiki?RealProgrammer Original thread where Wall stated this. Monty Python version, The Four Yorkshiremen is a mockery of this whole thing. ...


12

It is better to use $filehandler because your filehandles will be lexically scoped. It means you won't accidentally sabotage or clash with another filehandle. You'll get a warning if you try to declare another variable with the same name. This format was introduced in Perl 5.6 so it is a newer format. Bareword filehandles are global names. You could ...


10

Stick to the Python. It has all the values, it just works and you already know it. If you're having doubts read this: http://www.scientificcomputing.com/High-Performance-Development-with-Python.aspx - very good article covering prototyping in python.


10

Your opinion might change as you get more experience with other languages. I have found the Java APIs to be rather poor: Date and Calendar and related classes are a mess. The collection classes are unwieldy, and don't play well with arrays. This is a problem because some methods return collections while other methods demand arrays. Very common ...


10

That's an easy one: Cal's personal site, under talks. There's a pdf, a powerpoint and a slideshare version, the s-shaped script is on page 49.


10

Let me admit frankly, building parser is a tedious job and comes close to compiler technology but building one would turn out to be a good adventure. And a parser comes with interpreter. So you got to build both. A quick introduction to parser and interpreters This is not too technical. So experts don't fret at me. When you feed some input into a ...


10

Perl's philosophy tends to be that of "do what is practical now." If you need to use OOP, its there. It isn't necessary in all solutions and forcing a person to write OOP code when it is a simple "do this then this then this" type problem is often counter productive. The multi-paradigm nature of perl can be seen in things such as the Schwartzian ...


9

Yes to Perl 5 Sure, go learn Ruby and even Python, but Perl is different. And intelligent beyond reason. Perl is one of those languages that you can learn things you never wanted and be glad you did and yet will have to re-read the Camel book every couple of years just so you don't fully mentally purge your perlisms. Perl is of alien syntax, even to ...


8

As something of a Perl fan, learn it if you have an actual need to do something in Perl (your job is working with Perl or you have to work on a system with Perl and you can't install Python for some reason). Other than that, yes, learn Haskell, Scala, Forth, or something else. There isn't enough new in Perl to make it worth learning.


8

I am going to add an answer here as I think a lot of them have missed a key point... Perl is popular in bio-informatics because it is originally a text-processing language. Text is King Perl makes it easy to: implement NLP and bio-informatics algorithms, extract textual data, generate textual data. The Language Isn't (Half) Bad It also has the ...


8

Generally, the "big arrow" (=>) in Perl is basically a comma, with one difference: everything on its left is treated as if it is quoted. So this: Foo => Bar Is the same as: 'Foo', Bar For more info, see perlop.


7

It sounds like you already know how to program and the canonical source for starting with perl for people who know a bit about programming is "Learning Perl". I think it's a pretty good introduction but it can be a little slow at times for an experienced programmer so you could also look into Apress books on perl, they are my second favorite publisher for ...


7

It's a snarky/funny suggestion that many programmers end up writing generic, plodding, one-step-after-the-other code, even when the language provides sophisticated constructs that would allow for clever and efficient solutions if only the programmers would take the trouble to learn what the language has to offer. It's a follow-on to the ancient quip that ...


7

Because Perl has a much more powerful feature set than PHP. Perl is a more general programming language, and has much more text operations capabilities than PHP, and probably than any other language out there, and better OS interaction. Perl has a powerful Regex native support, which means string manipulations at its best. Also, Perl has been around for ...


7

People often confuse the issues that arise with the smartmatch operator with those that arise with the given/when construct, such as the problem of lexical $_. I’ve come to the opinion that if you use the smartmatch operator only on literals, that you will not go insane. I can make no promises about any other situation. Trying to figure out what $a ~~ $b ...


7

There are a few possibilities (last one would be the easiest and most sensical, in my opinion, except if that's meant to be a long-term and reusable piece of code): Use a web-testing framework They are meant to do this sort of stuff, so obviousy they do it well. But I think they're a bit heavyweight for what you want to do. For instance, Adel recommended ...


7

You don't link to any of the 'weird information' you found, but there is no language construct in Perl called 'templates'. Generally, I expect the subject of any article on Perl and templating to be about text output; a template to generate HTML, or an email, for example. The Text::Template and HTML::Template modules being canonical examples.



Only top voted, non community-wiki answers of a minimum length are eligible