Print

Print


Concur. I think everyone should just switch to APL [0], then we'll all
suffer equally.

[0] http://en.wikipedia.org/wiki/APL_(programming_language)

On Thu, Feb 21, 2013 at 12:53 PM, Ian Walls <[log in to unmask]>wrote:

> Agreed.  Each language has its own strengths and weaknesses.  Pick the one
> that works best for your situation, factoring in not only what the
> application needs to do, but your and your team's level of experience, and
> the overall community context in which the project will live.  The
> peculiarities of a given languages truth tables, for example, can easily
> get washed out of the calculation when you consider what languages you know
> and what platforms your institution supports.
>
>
> -Ian
>
> -----Original Message-----
> From: Code for Libraries [mailto:[log in to unmask]] On Behalf Of
> Ethan Gruber
> Sent: Thursday, February 21, 2013 12:45 PM
> To: [log in to unmask]
> Subject: Re: [CODE4LIB] You are a *pedantic* coder. So what am I?
>
> Look, I'm sure we can list the many ways different languages fail to meet
> our expectations, but is this really a constructive line of conversation?
>
> -1
>
>
> On Thu, Feb 21, 2013 at 12:40 PM, Justin Coyne
> <[log in to unmask]>wrote:
>
> > I did misspeak a bit.  You can override static methods in Java.  My
> > major issue is that there is no "getClass()" within a static method,
> > so when the static method is being run in the context of the
> > inheriting class it is unaware of its own run context.
> >
> > For example: I want the output to be "Hi from bar", but it's "Hi from
> foo":
> >
> > class Foo {
> >   public static void sayHello() {
> >     hi();
> >   }
> >   public static void hi() {
> >     System.out.println("Hi from foo");
> >   }
> > }
> >
> > class Bar extends Foo {
> >
> >   public static void hi() {
> >     System.out.println("Hi from bar");
> >   }
> > }
> >
> > class Test {
> >   public static void main(String [ ] args) {
> >     Bar.sayHello();
> >   }
> > }
> >
> >
> > -Justin
> >
> >
> >
> > On Thu, Feb 21, 2013 at 11:18 AM, Eric Hellman <[log in to unmask]> wrote:
> >
> > > OK, pedant, tell us why you think methods that can be over-ridden
> > > are static.
> > > Also, tell us why you think classes in Java are not instances of
> > > java.lang.Class
> > >
> > >
> > > On Feb 18, 2013, at 1:39 PM, Justin Coyne
> > > <[log in to unmask]>
> > > wrote:
> > >
> > > > To be pedantic, Ruby and JavaScript are more Object Oriented than
> > > > Java because they don't have primitives and (in Ruby's case)
> > > > because classes
> > > are
> > > > themselves objects.   Unlike Java, both Python and Ruby can properly
> > > > override of static methods on sub-classes. The Java language made
> > > > many compromises as it was designed as a bridge to Object Oriented
> > programming
> > > > for programmers who were used to writing C and C++.
> > > >
> > > > -Justin
> > > >
> > >
> >
>