Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: [tlug] ruby and python in Japan
- Date: Tue, 27 Feb 2007 12:49:03 +0900
- From: "Stephen J. Turnbull" <stephen@??>
- Subject: Re: [tlug] ruby and python in Japan
- References: <EHEKIFPPAHHMCHHGJIJOGEDCEGAA.jason@example.com> <45E36A0C.8080302@example.com>
Darren Cook writes: > PHP, ruby, python, java, javascript et al are all similar enough Yikes! Men and women are "similar enough", too. :-) PHP: Never used it, no comment. Maybe, see "Perl"? Ruby, Python, Scheme: Efficient interpreted languages that support introspection, abstraction, and monkey-patching, and are thus both adaptable in the short run and maintainable in the long run. Ruby and Python both have extensive library bindings, but not as standardized as Java and friends, and not as extensive as Perl. Scheme suffers from being a Lisp. Perl: Similar to Ruby and Python, but older and beholden to a lot of legacy decisions. I'm not sure how Perl is for introspection and monkey-patching; I gave it up for Lent in 1997, and never missed it. Abstraction is more difficult because of many quirky conveniences in the language definition (aka DWIM). If it exists as a library or command-line tool, Perl probably has a binding. Java, C, C++: Low-level compiled languages with extensive, powerful libraries available. Introspection and abstraction cannot be grafted on to those libraries by the application, and monkey-patching is basically impossible. Java has the unique capability of being executable by many browsers, thus applications written in Java can be distributed between server and client. Other languages depend on Javascript (if you know you're targeting IE or Mac OS, then VB or AppleScript may be usable; Javascript is cross-platform). Java is also unique in that although (like Ruby, Python, Perl, and most Schemes) it compiles to target a virtual machine, unlike them it is normally precompiled in all environments. The interpreted languages are often obfuscated by being distributed as bytecode, but there is rarely an explicit compile step---rather, you run the code, it's compiled on the fly, and (if you obfuscate) you strip out the source from the distribution tarball. Haskell, ML, Erlang: Modern functional languages. Don't know ML and Erlang, but Haskell is compiled and very heavyweight. Great for abstraction, incredibly powerful, but mind-bending. (un) Common Lisp: Rest in peace. Javascript: A whole 'nuther smoke, this is (normally) a client-side interpreted language, heavily dependent on a standard DOM. Ie, can be combined effectively with any of the above, which are server-side.
- References:
- RE: [tlug] ruby and python in Japan
- From: Jason Hall
- Re: [tlug] ruby and python in Japan
- From: Darren Cook
Home | Main Index | Thread Index
- Prev by Date: Re: [tlug] ruby and python in Japan
- Next by Date: Re: [tlug] ruby and python in Japan
- Previous by thread: Re: [tlug] ruby and python in Japan
- Next by thread: Re: [tlug] ruby and python in Japan
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links