markpasc (markpasc) wrote,

Computer languages

I mentioned in my blog before (I think) my metaphor for Perl, Java, and C++: C++ is steel, good for structures on which you can build things, and system tools that have engineering-sounding things like tolerances; Java is glass, a fragile material for making clean, pretty systems that tend to be mere trinkets; Perl is duct tape, a relatively ugly thing for gluing things together quickly and simply.

Here's my recently adapted version, focusing more on the idea of how one programs in those languages, and including Python:

  • C++ is metalworking, with structures and things built of metal. Still connoted with engineering. Easy to sever one's limbs or smaller bits on rough edges. C++ advocates are construction workers with actual tasks to perform.
  • Java is glassworking. It's slow and difficult, and it's easy to burn yourself, but if you do it right, you get lovely results. Java advocates don't fit the analogy, since J Random Javaprog'r is somebody who read Enterprise JavaBeans in 21 Dummies because it looks good on a resume; they would otherwise use Visual Basic.
  • Perl is woodworking. Produces small one-shot throwaways (ie, whittling), or sturdy utilitarian items (shelves, cabinets, and tables). Perl advocates are craftspeople, with lots of tools and experience at their disposal.
  • Python is clay sculpture. It has simple, flexible physics. Advocates are typically artists, producing lovely code that others can admire.
  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 1 comment