Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Can Perl do anything Java can do?

by sundialsvc4 (Abbot)
on Jul 19, 2017 at 15:00 UTC ( #1195482=note: print w/replies, xml ) Need Help??


in reply to Can Perl do anything Java can do?

The answer is irrelevant, IMHO, since the question is insufficient.   You should do a careful conceptual design of the entire project, then very formally evaluate the two languages with regards to it.   Both your team and your senior management need to be fully comfortable with this momentous decision.

The Java language is much heavier, but at the same time it has many features that Perl (5, at least) does not even consider:   strong typing, compile-time checking, a more robust class implementation, and so on and on and on.   Therefore, it could be said (in one meaning of the question) that all of these things are “things that Perl can’t do.”   But on the other, “there’s more than one way to do it.™”   So, if you please understand my meaning, “what really is your question?”   How many of these features might be important to your project?   What would simplify the external interfaces to other pieces of software within your enterprise ecosystem?

This decision should be soberly regarded as a point of no return.   The technical characteristics are only a drop in the bucket of relevant decision criteria.

Replies are listed 'Best First'.
Re^2: Can Perl do anything Java can do?
by shmem (Chancellor) on Jul 19, 2017 at 15:51 UTC
    The answer is irrelevant, IMHO, since the question is insufficient.

    There are 4 questions in the OP which are well phrased and can be answered having knowledge of Perl and Java, and they can be answered being totally agnostic of the OPs environment.

    Both your team and your senior management need to be fully comfortable with this momentous decision.

    What senior management? what team? is there? pray, how did you know about that?

    ...has many features that Perl (5, at least) does not even consider: strong typing, compile-time checking, a more robust class implementation, and so on and on and on.

    Even in perl, strong typing can be enforced. Perl certainly has a vast amount of compile-time checkings. It sports robust class implementations.

    What would simplify the external interfaces to other pieces of software within your enterprise ecosystem?

    Is there an enterprise ecosystem yet? Or is it going to be built? And so on and on and on.

    sundialsvc4, again - this is not a general consultancy site. We all know much more than what we write. But you always write about things you don't know.

    perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'
      What senior management? what team? is there? pray, how did you know about that?

      When the only tool you're familiar with is X, all problems look like Y. :-)

      this is not a general consultancy site

      I don't have a problem with people answering at different levels of abstraction.

      Date: 06 Sep 2000 07:59:58 -0700
      From: merlyn@stonehenge.com (Randal L. Schwartz)
      Subject: The XY problem (was Re: CGI.pm: controlling Back & Reload)
      Message-Id: <m18zt5muq9.fsf_-_@halfdome.holdit.com>

      It's important for me as a person who's been on the listening end of questions for many years, and who has to listen professionally (and most of the time answer professionally) to realize that all problems are pieces of solutions to larger problems. (Think about it a second, and you'll see that its necessarily so, all the way back to "why the heck did I get out of bed today?", if not higher.) So, to answer question Y, without understanding larger problem (the context) X, will most likely *not* help them entirely with X. I actually consider that a bit irresponsible.

      How it shows up in the chatrooms (or even live, but rarer) is that someone will say "how do I do Y?". I usually take a deep breath before answering, and try to understand who a person would have to be to *ask* about Y, and make sure that I know enough about all possible X's to verify that an answer is invariant (doesn't depend) on those. Often, my spider sense will tingle, and I start asking the context questions, but at the same time, I see a lot of other people answering the Y question literally. More often than not, they have presumed too much, and it sends the person off with premature answer that really doesn't help solve X or Y entirely.

      So, the key is to listen, and try to crawl inside the head of the requestor to see why they would even have that question. It helps to be appropriate. When I'm doing it live while teaching, it also keeps me on my toes, as I have to do this in a way that respects the questioner *and* still keeps the rest of the classroom interested. Fun, and challenging at the same time. It's one of the parts of teaching that I most enjoy.

      I reckon we are the only monastery ever to have a dungeon stuffed with 16,000 zombies.
        I don't have a problem with people answering at different levels of abstraction.

        Neither do I. But the path of abstraction should be visible, and understandable. The post from merlyn you cite is not so much about abstraction, but about how skilled guessing works: not presuming too much, and not sending off people with a premature answer that really doesn't help solve X or Y entirely.

        Throwing in consultancy jargon quotes from a random bullshit bingo chart which might, by several twists of the mind, yield some remote connection to the problem at hand is not that sort of abstraction, or skilled guessing. It is throwing shiny shingles on a fishing line into the river - it is trolling: trolling with baits, and more often than not, they are toxic.

        perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1195482]
help
Chatterbox?
and snow settles gently...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2017-12-18 21:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What programming language do you hate the most?




















    Results (498 votes). Check out past polls.

    Notices?