[ale] Language Jihad!

Denny Chambers dchambers at connex.com
Tue Jul 17 11:56:01 EDT 2001


Hey! I have a dead horse over at my house if anyone wants to come over
and beat the crap out of it. ;-)

New Topic Please!!!!!!!!!!!!!!!


Fletch wrote:
> 
> >>>>> "Pete" == Pete Hardie <pete.hardie at dvsg.sciatl.com> writes:
> 
>     Pete> Wandered Inn wrote:
>     >> That being said, I'd go with Java before I'd try C++ or Perl. I
>     >> personally found it easier to get going.
> 
>     Pete> Seconded.  C++ is a less-strict OO language, and you are
>     Pete> constantly tempted to 'cheat' and go procedural, while Java
>     Pete> has a tighter view of things.
> 
>         Swiped from an ircquainance's rant against Java, here's the
> canonical first program in both Java and perl:
> 
> Java:
> 
> class HelloWorldApp {
>   public static void main (String args[]) {
>     System.out.println( "hello, world" );
>   }
> }
> 
> Perl:
> 
> print "hello, world\n";
> 
>         Much easier to start with.  All hail Java!</sarcasm>  (Just
> make sure that you name your source `HelloWorldApp' before trying to
> do so . . . :)
> 
>         OOP is good.  OOP has its place.  I use OOP regularly (in
> perl, of course :), but OOP is not the be-all-end-all paradigm.  OOP
> is not the solution to every problem.
> 
>         There are some problems that a procedural approach is a better
> fit than an OOP one (and there's some where a functional approach is
> better than either).  It's not cheating to use a saw to cut wood
> rather than a hammer.  With Java, you only get a big mallet; with C++
> you at least get a claw hammer so you can pull the nails out of your
> foot.  :)  With perl, you get the Swiss Army chainsaw that includes
> both a mallet and claw hammer along with all the other gadgetry you
> might need.
> 
>         At any rate, don't limit yourself to one paradigm or one
> language.  Knowing several different flavours lets you choose the
> right tool for the job.  Why be a unilingual boor, when you can easily
> be a programmatical polyglot? (and with perl you can be so in several
> languages simultaneously from the same program :)
> 
> ---->8 Cut Here 8<----
> #!/usr/bin/perl
> ##
> ## Requires Inline::C, Inline::Python, and Inline::ASM; all are
> ## available from your friendly neighborhood CPAN mirror.
> ##
> ## http://www.cpan.org/
> ##
> 
> use Inline C => <<'EOT';
> #include <stdio.h>
> void c_hello( ) {
>   printf( "hello, world\n" );
> }
> EOT
> 
> ## *shudder* :)
> use Inline Python => <<'EOT';
> def py_hello():
>   print "hello, world"
> EOT
> 
> ## OK, I cheated and used gcc -S :)
> use Inline ASM => <<'EOT', PROTO => { asm_hello => 'void()' };
> .LC0:
>         .string "hello, world\n";
> .text
>         .align 4
> .globl asm_hello
>         .type   asm_hello, at function
> asm_hello:
>         pushl %ebp
>         movl    %esp, %ebp
>         subl    $8, %esp
>         subl    $12, %esp
>         pushl   $.LC0
>         call    printf
>         addl    $16, %esp
>         leave
>         ret
> EOT
> 
> sub perl_hello { print "hello, world\n" }
> 
> perl_hello();
> c_hello();
> py_hello();
> asm_hello();
> 
> exit 0;
> __END__
> ---->8 Cut Here 8<----
> 
> --
> Fletch                | "If you find my answers frightening,       __`'/|
> fletch at phydeaux.org   |  Vincent, you should cease askin'          \ o.O'
> 770 933-0600 x211(w)  |  scary questions." -- Jules                =(___)=
>                       |                                               U
> --
> To unsubscribe: mail majordomo at ale.org with "unsubscribe ale" in message body.
--
To unsubscribe: mail majordomo at ale.org with "unsubscribe ale" in message body.





More information about the Ale mailing list